LAN外のWebサーバー経由でWebサイトにアクセスする

LAN外のWebサーバー経由でWebサイトにアクセスする

/var/www/htmlMySQL と PHP を備えた Apache Web サーバーをインストールしましたが、パブリック IP アドレスを使用して外部からWeb サイトにアクセスできません。

ウェブサイトをホストしているデバイスに対してルーターでポート転送を実行しましたが、URL を入力するとhttp://<public IP address>:8080ページが見つからないというメッセージが表示されます。

ただし、「localhost」という URL を使用すると、Web サイトを表示できます。セットアップで何かが省略されていることは明らかなので、他に確認する必要があることは何ですか。

答え1

Uncomplicated Firewallツールを使用することをお勧めします。ufw、この状態では、フロントエンドの使用は簡単ですiptablesGUI版はgufw

1.アプリをインストールします:

sudo apt install ufw

2.すべての受信トラフィックを拒否し、すべての送信トラフィックを許可するデフォルト ポリシーを設定します。

sudo ufw default deny incoming
sudo ufw default allow outgoing

3.特定のポートで着信トラフィックを許可します。たとえば、Apache サーバーがポートをリッスンする場合は、80次のルールを使用します。

sudo ufw 80/tcp を許可する

または、Apache のアプリケーション プロファイルを使用することもできます。

sudo ufw allow Apache

SSHポートへのアクセスも許可したい場合もあるでしょう。この場合制限より良いルールは次のとおりです:

sudo ufw allow 22

またはデフォルトを使用するアプリケーションプロファイルSSHの場合:

sudo ufw allow ssh

4.ファイアウォールを有効にします。

sudo ufw enable

参考文献:

答え2

sudo ufw status verboseファイアウォールがアクティブ/有効になっているかどうか、およびポートが許可/ブロックされているかどうかが表示されます。

ルーターでポート 8080 を転送した場合は、ファイアウォールを通過できることを確認するとともに、Apache がポート でリッスンしていることも確認してください。および.conf ファイル8080のデフォルトはポート です。/etc/apache2/ports.confsites-available80

関連情報