apache のインストールとファイヤーウォールの設定
公開日:2019-06-03
更新日:2020-07-21
更新日:2020-07-21
1. 概要
Webサイトを公開するためのミドルウェアである apache をインストールします。
また、ファイヤーウォールの設定を行い、Webサイトを公開できるようにします。
また、ファイヤーウォールの設定を行い、Webサイトを公開できるようにします。
2. apache のインストール
yum install httpd
3. apache の起動・停止
systemctl start httpd 起動
systemctl stop httpd 停止
systemctl restart httpd 再起動
systemctl status httpd ステータス確認
起動してステータスを確認すると、緑色で active と表示されます。
また、VM 起動時に、毎回 httpd を起動する必要があるため、
systemctl enable で自動起動するようにします。
systemctl enable httpd 自動的に起動する
systemctl disable httpd 自動的に起動しない
systemctl list-unit-files 一覧表示
以下を実行すると、HTMLが表示されます。
curl http://localhost/
但し、Windows側(VMのホスト側)でブラウザを起動して、
ブラウザで http://192.168.233.100/ にアクセスすると、エラーになります。
これは、CentOS のファイヤーウォールによってはじかれているためです。
3. ファイヤーウォールの設定
ファイヤーウォールの起動・停止は、httpd と同様に、以下のようにして行えます。
デフォルトでは最初から起動しています。
Webサーバーで必要な80番ポート(HTTP)と443番ポート(HTTPS)を開けます。
ポートを指定して開けることもできます。
--permanent を付けると、設定ファイルに書き込まれて、次回 OS 起動時から有効になります。
即座に反映するには、--reload でリロードしてください。
--permanent をはずすと、現在起動中のファイヤーウォールに即座に反映されます。
一時的に変更したい時に使用します。次回 OS 起動時、またはリロードでリセットされます。
--zone=public は設定の種類(ゾーン)の指定です。
デフォルトのゾーンに設定する場合は省略可。
ファイヤーウォールはゾーン毎に異なる設定が行え、
ゾーンを変更することで、全ての設定を変更することができます。
例えば、一時的にネットワークを遮断する時は、ゾーンの変更だけで行えます。
初期状態では、 block、dmz、drop、external、home、internal、public、trusted、work のゾーンがあります。
デフォルトゾーンの表示と設定
アクティブゾーンの表示と設定
全ゾーンの設定の表示
ポートを閉じる
ポートを開けてブラウザで http://192.168.233.100/ にアクセスすると、正常にページが表示されます。
試しにファイルを作成してブラウザでアクセスしてみます。
デフォルトでは、/var/www/html/ 配下にあるファイルがブラウザでアクセスできます。
ファイル作成
http://192.168.233.100/test.html にアクセスすると、「Hello」と表示されます。
デフォルトでは最初から起動しています。
systemctl start firewalld 起動
systemctl stop firewalld 停止
systemctl restart firewalld 再起動
systemctl status firewalld ステータス確認
Webサーバーで必要な80番ポート(HTTP)と443番ポート(HTTPS)を開けます。
firewall-cmd --permanent --zone=public --add-service=http
firewall-cmd --permanent --zone=public --add-service=https
firewall-cmd --reload
firewall-cmd --list-all --zone=public
ポートを指定して開けることもできます。
firewall-cmd --permanent --zone=public --add-port=80/tcp
firewall-cmd --permanent --zone=public --add-port=443/tcp
--permanent を付けると、設定ファイルに書き込まれて、次回 OS 起動時から有効になります。
即座に反映するには、--reload でリロードしてください。
--permanent をはずすと、現在起動中のファイヤーウォールに即座に反映されます。
一時的に変更したい時に使用します。次回 OS 起動時、またはリロードでリセットされます。
--zone=public は設定の種類(ゾーン)の指定です。
デフォルトのゾーンに設定する場合は省略可。
ファイヤーウォールはゾーン毎に異なる設定が行え、
ゾーンを変更することで、全ての設定を変更することができます。
例えば、一時的にネットワークを遮断する時は、ゾーンの変更だけで行えます。
初期状態では、 block、dmz、drop、external、home、internal、public、trusted、work のゾーンがあります。
デフォルトゾーンの表示と設定
firewall-cmd --get-default-zone
firewall-cmd --set-default-zone=public
アクティブゾーンの表示と設定
firewall-cmd --get-active-zone
firewall-cmd --get-active-zones
firewall-cmd --zone=home --change-interface=ens33 ※ens33 はNIC
全ゾーンの設定の表示
firewall-cmd --list-all-zones
ポートを閉じる
firewall-cmd --permanent --zone=public --remove-service=http
firewall-cmd --permanent --zone=public --remove-service=https
firewall-cmd --reload
firewall-cmd --list-all --zone=public
ポート指定で追加した場合
firewall-cmd --permanent --zone=public --remove-port=80/tcp
firewall-cmd --permanent --zone=public --remove-port=443/tcp
ポートを開けてブラウザで http://192.168.233.100/ にアクセスすると、正常にページが表示されます。
試しにファイルを作成してブラウザでアクセスしてみます。
デフォルトでは、/var/www/html/ 配下にあるファイルがブラウザでアクセスできます。
ファイル作成
echo '<html><body>Hello</body></html>' > /var/www/html/test.html
http://192.168.233.100/test.html にアクセスすると、「Hello」と表示されます。

