ファイアウォールの設定

サーバー情報

【さくらのVPS】
メモリ:8GB
ストレージ:SSD 400GB
CPU:6コア

OS

CentOS7 x86_64

インストール

- Nothing -

1.ファイアウォール設定

ファイアウォールの設定については、さくらインターネットが公開している情報が分かりやすいので参考にしてみて下さい。

 

ネコでもわかる!さくらのVPS講座 ~第七回「ファイアウォール”firewalld”について理解しよう」:https://knowledge.sakura.ad.jp/10583/

起動コマンド

systemctl start firewalld.service

停止コマンド

systemctl stop firewalld.service

再起動コマンド

systemctl restart firewalld.service

自動起動設定コマンド

systemctl enable firewalld.service

本番起動設定コマンド

firewall-cmd –state

「running」:起動中

「not running」:停止中

Webアプリケーションの開発においてはTCP通信を用いるため、デフォルトでポート番号が決まってしまいます。

セキュリティ対策として考えた場合に、全世界で共通の指定ポートを使用し続けるのもリスクがあるため、Webアプリケーションで使用するポート番号を変更した方が良いでしょう。

※ポートにはそれぞれの意味合いが決まっているものがあるので、事前に調査したうえでポート番号を設定して下さい。

一般的には次のような設定となっています。

Web

80(http),443(https)

FTP

20,21

SSH

22

ファイアウォールにおいて、指定ポートを開放することが出来るので紹介します。

手順1.

下記コマンドを実施し、ファイアウォールを起動させる。

起動コマンド

systemctl start firewalld.service

手順2.

下記コマンドを実施し、自動起動設定を行う。

自動起動設定コマンド

systemctl enable firewalld.service

手順3.

下記コマンドを実施し、本番起動させる。

実行後に「running」と表示されれば成功です。

本番起動設定コマンド

firewall-cmd –state

手順4.

既に解放されているポート番号を確認する。

本番起動設定コマンド

firewall-cmd –list-all

手順5.

新たに解放したいポート番号を指定し、ポートの開放を行う。

実行後に「success」と表示されれば成功です。

※【PORT】:解放したいポート番号

※「–permanent」:サーバ再起動後の有効にする

firewall-cmd –add-port=【ポート番号】/tcp –zone=public –permanent

手順6.

設定したポートの開放を反映する。

再設定コマンド

firewall-cmd –reload

手順7.

設定した解放ポートを確認する。

本番起動設定コマンド

firewall-cmd –list-all

サーバー初期設定において少し触れましたが、「パケットフィルタ」の設定では、指定されたポート番号(TCPであれば【20】または【21】と記載されているため、上記のように使用するポート番号を指定して開放するにはファイアウォールの設定を行わないといけません。

その際には「パケットフィルタ」を無効化しておくことを忘れずに。