meideru blog

meideruが書いているブログです。主に電子工作・プログラミング・ガジェット類などを中心に記事を書いています。

【CentOS 7】ファイアウォール(Firewall)について説明します!

      2016/08/03

今日は、CentOS 7 のファイアウォール(Firewall)について説明します。

特定のアプリケーションのパケットを通過させる設定まで説明します(^o^)

ファイアウォールとは

ファイアウォールとは、サーバへのパケットの通過を制限させるためのものです。

全てのパケットをサーバへ通過させることはセキュリティ上、とてもとても危険なことです。なので、これを用いて悪意のあるパケットを通さないようにします。

因みにファイアウォールとは、英語で「防火壁」の意味です。

ファイアウォールを確認してみよう

早速、自分のサーバ(CentOS 7)のファイアウォールがどうなっているのかを確認してみましょう。

現在のファイアウォールの状態を確認するには、firewallcmd listall を使用します。

重要なのは、2行目と5行目です。

2行目を見ると、現在のゾーンはpublicになっていることがわかります。ゾーンとは、セキュリティのレベルと思ってください。publicの他にもhomeなどがあります。これは、後で確認してみましょう。

5行目のservicesは、パケットの通過を許可するアプリケーションを意味します。つまり、上の状態だとdhcpv6-client、ftp、http、samba、sshのパケットは通過させる設定になっています。

重要なのは以上の2つです。

 

次に、他のゾーンも確認してみましょう。

全てのゾーンのファイアウォールを確認するには、firewall-cmd –list-all-zones を使用します。

色々なゾーンがありますね・・・。

これらのゾーンは切り替えることができます。

ファイアウォールの設定を反映させる方法

まず初めにファイアウォールの設定を反映させる方法を書いておきます。

ファイアウォールを設定した後は、ファイアウォールを再読み込みするか、サーバを再起動しなければいけません。サーバは年中無休で動き続けなければならないケースが多いので、ここでは前者の再読み込みをします。

ファイアウォールを再読込するには、firewall-cmd –reload を使用します。

特定のアプリケーションのパケットを通過させる方法

特定のアプリケーションのパケットを通過させるには、firewall-cmd –permanent –add-service=(アプリケーション名) –zone=(ゾーン名) を使用します。

–permanent を付けることによって、サーバ再起動後も継続してパケットを通過させる設定にすることができます。

 

試しに、Apacheのパケットを通過させる設定を行ってみましょう。Apacheはhttpというアプリケーション名なので、そちらを設定します。

publicゾーンにファイアウォールを設定しています。

特定のアプリケーションのパケットの通過を解除する方法

今度は、上の逆です。上では特定のアプリケーションのパケットの通過を許可する設定をしましたが、今度は逆に解除したいと思います。

例えば、現在のファイアウォールは以下のように設定されていたとします。

sambaのパケットは通過できるように設定されていますが、これを外したいと思います。

 

外すには、firewall-cmd –permanent –remove-service=(サービス名)  –zone=(ゾーン名)を使用します。

これで解除されました。ファイアウォールを再読み込み(firewall-cmd –reload)して確認してみましょう!

OK!!

特定のポートを開放する方法

特定のポートを開くには、firewall-cmd –permanent –add-port=(ポート番号) –zone=(ゾーン名) を使用します。

とりあえず、25565というポートを開放してみました。これは成功です。

因みに、25565はマインクラフトのサーバで使用されるポートです。

特定のポートを閉じる方法

上の逆です。

特定のポートを閉じるには、firewall-cmd –permanent –remove-port=(ポート番号) –zone=(ゾーン名) を使用します。

上で設定した25565ポートを閉じてみましょう。

開放されているポートの確認方法

ファイアウォールの話からは少しズレますが・・・。一応、開放されているポートの確認方法も書いておきます。

開放されているポートを確認するにはssコマンドを使用します。

-l というオプションを付けることで、開いているポートを確認することができます。

長いので結果は省略します。

 

こんなところです!

ノシ

 - Linux