Linux

【Linux】ufwでiptablesを簡単に設定する方法

firewall
     
       

DockerのUbuntuを使ってwebサービスを公開する機会があったので必要最低限の セキュリティとして備忘録がてら執筆します。

CentOSに関してはfirewall-cmdがufwと同じようなことができるようなのでDebian系のディストリビューションOSを利用する方の参考になれば幸いです。

注意点としてはGCPだったり一部の多機能クラウドだとGUI(管理画面)等でTCP/IPの設定ができたりするため、ufwを設定しまうとSSHログインができなくなるなどコンフリクトを起こす可能性がありますので、注意して設定をおこなってください。

 

ufwのインストール方法について

Ubuntuに関してはデフォルトでインストールされてますが、下記コマンドでインストールされているかの確認できます。

 

存在していれば下記ログが吐き出されます。

 

not foundのようなログが表示されていた場合は、下記でインストールを行います。

 

ufw設定方法

ufwの有効・無効設定

下記にコマンドを記載します。

 

有効化・無効化コマンド実行後のステータス確認方法は下記になります。 

 

ファイアウォールの詳細設定

ufwでPortの許可方法などについて説明する前にdeny/allowについて触れます。

コマンド方式内容
allowブラックリスト方式基本的に全ての通信を許可して、
特定の通信のみ遮断する方法
 
denyホワイトリスト方式基本的に全ての通信を遮断して、
特定の通信のみ許可する方法
 

ufwはデフォルト設定でホワイトリスト方式になっており、全ての通信を遮断する設定になっております。ブラックリスト方式にデフォルトを変更するには下記コマンドで変更できます。

 

デフォルト設定を把握した上で特定のPortやコマンドの許可を行う場合について下記にサンプルを記載します。

 

deny/allowで登録した内容を確認するには下記のコマンドで確認ができます。

 

注意いただきたい点がルールは上から登録された順に適応されるため、削除やルールの挿入を行う場合は下記のコマンドを使います。

 

ルールの登録が完了し、反映するには一度リロードをする必要があります。またルールの登録を大幅に間違えたなどあれば初期化するコマンドも用意されているため、紹介します。

 

 

ufwのlog出力有効化・無効化・ログレベルの設定

下記にログレベル別のコマンドを記載いたします。

 

ログはデフォルト設定だと/var/log/ufw.logに出力されます。有効化時のログレベルごとの違いについて説明してきます。

  • off     完全に無効
  • low     設定したルール以外でブロックした接続を出力
  • medium 不正な接続、allow / denyに設定した接続、新たな接続を出力
  • high   medium+詳細な情報を出力
  • full   すべての接続を出力

 

 

参照元

ufw コマンド 覚書

ufwの基本操作

ufwコマンドの使い方

 

 

 

スポンサードリンク