IPtableルールシーケンスの例

IPtableルールシーケンスの例

IPtablesについて質問があります。

私の本の次の例から始めましょう。

EMSTP(ポート465)とIMAP(ポート993)接続(1つのネットワークインターフェイスeth1はインターネットに公開され、他のネットワークインターフェイスeth2は企業ネットワークに公開されています)を許可するメールサーバーに対してどのルールを設定しますか?

私は次のように答えようとしました。

Iptable -A FORWARD  -p  EMSTP, IMAP -s all -i eth1 -m multiport 465,993  state –state  NEW, ESTABILISHED  -j ACCEPT
Iptable -A FORWARD  -p  EMSTP, IMAP -s all -i eth2 -m multiport 465,993  state –state  NEW, ESTABILISHED  -j ACCEPT
  • トラフィックがINPUTかOUTPUTか指定がないので、FORWARDを考えました。そのため、通常の入力/出力を使用しました(このモードで可能な場合はFORWARD)。
  • プロトコルが指定されているので問題ないようです。
  • 私は異なるインターフェイスを使用しているので、2つのルールを使用していますが、同じルールですべてのことを行うことが可能だと思います。同じルールに別の-iを追加するだけです。
  • ネットワークの場合、1つは(インターネット)で、もう1つはローカルネットワークだと思います(「会社」が何を意味するのかわかりません)

私の質問は、私の答えが良いかどうか、そしてこのタイプの形式を適用するかどうかです。

ルールを変更する順序はどうなりますか?

この場合、広告の例は次のとおりです。

 Iptable -A FORWARD -j ACCEPT   -i eth1 -p EMSTP, IMAP -s all  -m multiport 465,993  state –state  NEW, ESTABILISHED  

ジャンプとインターフェイスを変更します(-jと-i)。

誰でも理解するのに役立ちますか?

答え1

まず、いくつかの通知は次のとおりです。

  • -pパラメータは、IMAPなどの上位プロトコルではなく、TCP、UDP、ICMPなどの特定のプロトコル用です。

  • OUTPUT および INPUT チェーンは、マシンに入って来るパケットに使用されます。転送されたパケットをフィルタリングするには(コンピュータがゲートウェイとして機能するとき)〜しなければならないFORWARDチェーンを使用してください。 IN と OUT を区別するには、入力または出力インターフェイスとソースおよび宛先 IP を使用します。

  • ESTABILISHED-->タイプミス! ! ! :)

それでは問題を見てみましょう。

EMSTP(ポート465)とIMAP(ポート993)接続(1つのネットワークインターフェイスeth1はインターネットに公開され、他のネットワークインターフェイスeth2は企業ネットワークに公開されています)を許可するメールサーバーに対してどのルールを設定しますか?

この質問は次のように広すぎます。

  • このマシンはメールサーバーです。
  • 2つのインターフェースがあります。
  • メール関連プロトコルへの接続を許可する必要があります。

ただし、これは両方のネットワーク(インターネット/企業)が接続を受け入れる必要があるという意味ではありません。それにもかかわらず、我々はこれが真であると仮定します。

iptables判別式と一緒に使用:-iこのインターフェイスに着信パケットを一致させるために使用されます。すべてのインターフェイスでトラフィックを許可するには、-i前述のようにトランス-pポートプロトコルを指定します。メールはTCPを介して機能するため、̀-p tcp`を使用してください。

したがって、最初の応答は機能します(タイプミスといくつかの文法エラーを除いて、アイデアは問題ありません)。最後のトピックでは、インターネット(eth1)のパケットがサーバーを通過して会社のネットワークに転送されることを許可しません。

関連情報