多くのブログで、Linuxで多くのネットワークセキュリティ/スニッフィングツールを使用しながら、このコマンドを使用してIP転送を有効にしていることを確認しました。
echo 1 > /proc/sys/net/ipv4/ip_forward
誰もが素人の言葉で私を説明できますか、このコマンドは本質的に何をしますか?システムをルーターに変えますか?
多くのブログで、Linuxで多くのネットワークセキュリティ/スニッフィングツールを使用しながら、このコマンドを使用してIP転送を有効にしていることを確認しました。
echo 1 > /proc/sys/net/ipv4/ip_forward
誰もが素人の言葉で私を説明できますか、このコマンドは本質的に何をしますか?システムをルーターに変えますか?
回答:
「IP転送」は「ルーティング」の同義語です。Linuxカーネルの機能であるため、「カーネルIP転送」と呼ばれます。
ルーターには複数のネットワークインターフェイスがあります。別のネットワークインターフェースのサブネットと一致する1つのインターフェースにトラフィックが着信すると、ルーターはそのトラフィックを他のネットワークインターフェースに転送します。
したがって、2つのNICがあり、一方(NIC 1)がアドレス192.168.2.1/24にあり、もう一方(NIC 2)が192.168.3.1/24であるとします。転送が有効になっていて、「宛先アドレス」が192.168.3.8のNIC 1にパケットが到着すると、ルーターはそのパケットをNIC 2から再送信します。
インターネットへのゲートウェイとして機能しているルーターがデフォルトルートを持っていることはよくあります。これにより、どのNICとも一致しないトラフィックはデフォルトルートのNICを通過します。したがって、上記の例では、NIC 2にインターネット接続がある場合、NIC 2をデフォルトルートとして設定し、NIC 1から入ってくるトラフィックが192.168.2.0/24に向けられていない場合、 NIC 2を介してさらにルーティングできる他のルーターがあることを願っています(インターネットの場合、次のホップはISPのルーターで、プロバイダーのアップストリームルーターなどです)。
有効にするip_forward
と、Linuxシステムにこれを行うように指示します。意味を持たせるには、2つのネットワークインターフェイス(2つ以上の有線NICカード、Wifiカードまたはチップセット、56kモデムまたはシリアル経由のPPPリンクなど)が必要です。
ルーティングを行う場合、セキュリティが重要であり、そこでLinuxのパケットフィルターiptables
が関与します。そのため、iptables
ニーズに合った構成が必要になります。
iptables
NICの1つがインターネットまたは制御できないサブネットに面している場合、ファイアウォールやセキュリティを考慮せずに、またはファイアウォールを無効にして転送を有効にすると、脆弱性が生じる可能性があります。
iptables
、それを設定する方法です。
MASQUERADE
でルールiptables
s「をPOSTROUTING
それを行うにはチェーンに。revsys.com/writings/quicktips/nat.htmlおよびi.stack.imgur.com/rzz83.pngを参照してください。
「IP転送」を有効にすると、Linuxマシンが着信パケットを受信して転送できるようになります。通常のホストとして動作するLinuxマシンは、IP転送を有効にする必要はありません。それは、独自の目的(つまり、ユーザーの目的)のためにIPトラフィックを生成および受信するだけだからです。
ただし、IP転送が便利な場合があります。1.マシンをルーターとして機能させ、他のホストからパケットを受信し、それらを宛先にルーティングします。2.私たちは悪者であり、いわゆる「中間者攻撃」で別のマシンになりすまします。この場合、被害者に向けられたすべてのトラフィックを傍受して見たいだけでなく、このトラフィックを被害者に転送して、被害者が自分の存在を「感知」しないようにします。