web-dev-qa-db-ja.com

Ubuntu:UFWが作成できないiptablesルールを追加する方法

UFWは、うまくいかない場合を除いて、私にとって非常にうまく機能しています...

起動時に適用される別のルールを手動で追加できるようにしたいですか?

  • このルールはどこに置くべきですか?
  • 起動時にどうすればよいですか?
  • uFWでうまく再生させるにはどうすればよいですか?
15
Arthur Ulfeldt

このUbuntu wikiページ (「高度な機能」までスクロールダウン)によると、次のファイルに独自のiptablesルールを挿入することで、目的を達成できます。

  • /etc/ufw/before.rules
  • /etc/ufw/after.rules

beforeファイルは、ufwルールが適用される前に評価されます。 afterファイルは後で評価されます。 (before6ルールに対応するafter6およびip6tablesルールファイルもあります。)

これらのルールファイルは、おそらくufwが単にiptables-restoreを使用してロードするため、iptables-restore互換の構文であることが期待されています。最後に、ルールファイルに変更を加えた後は、ufwを停止して再起動する必要があることに注意してください。

15
Steven Monday

UFWは[〜#〜] manually [〜#〜]/etc/ufw/user.rulesに追加されたルールをパージします[〜#〜] not [〜#〜]コメントで始まる:

### Tuple ### allow tcp 80 0.0.0.0/0 any 0.0.0.0/0 out
-A ufw-user-output -p tcp --dport 80 -j ACCEPT

UFWの健全性が起動時のルールをチェックするとき、付随するコメントが必要です。 [〜#〜] not [〜#〜]が存在する場合、ルールの構文が正しい場合でも、UFWはそれをパージします。

そして、任意のコメントを使用しないでください。それは、CLIを介してユーザールールを作成するときにUFWが挿入するコメントです[〜#〜] must [〜#〜]

Sudo ufw allow http/tcp

したがって、単純なファイルのルールセットに一連のルールをプレシードする場合でも、UFWのCLIインターフェイスを介してルールを作成し、ルールが検証を通過して永続化することを期待するコメントの構文を学習する必要があります。 。

コメントを付けて、付けずに上記を試して、上記のHTTPルールの例をリロードしてください。手動で追加されたルールは、UFWの再起動(ufw enable)後も有効です。

これは実際には直感に反する動作であり、まったく文書化されていません。

1
F1Linux