昨日、ホームサーバーとしてHP Proliant Microserverという新しいコンピューターを購入しました。カーネルバージョン3.2.12のArch Linuxをインストールしました。
Iptables(1.4.12.2-現在のバージョンAFAIK)をインストールし、net.ipv4.ip_forward
キーを1に変更して、iptables構成ファイルで転送を有効にすると(および再起動)、システムはネットワークインターフェイスを使用できなくなります。 pingが失敗する
Ping: sendmsg: operation not permitted
Iptablesを完全に削除すると、ネットワーキングは問題ありませんが、ローカルネットワークへのインターネット接続を共有する必要があります。
eth0-wan NICマザーボードに統合されています(Broadcom NetXtreme BCM5723))。
eth1-lan NIC(Intel 82574Lギガビットネットワーク)
Iptablesなしで動作するので(サーバーはインターネットにアクセスでき、内部ネットワークからsshでログインできます)、iptablesと関係があると思います。私はiptablesの経験があまりないので、これらをリファレンスとして使用しました(もちろん、互いに分離しています...):
wiki.archlinux.org/index.php/Simple_stateful_firewall#Setting_up_a_NAT_gateway
revsys.com/writings/quicktips/nat.html
以前のサーバーでは、revsysガイドを使用してnatをセットアップしました。
誰かが以前にこのようなことを経験しましたか?何が悪いのですか?
エラーメッセージ:
Ping: sendmsg: operation not permitted
サーバーがICMPパケットを送信できないことを意味します。サーバーが、構成された1つ以上のインターフェースを介してトラフィックを送信できるようにする必要があります。これは次の方法で実行できます。
ボックスからのすべての発信トラフィックを許可するには、OUTPUT
チェーンポリシーをACCEPT
に設定します。
Sudo iptables -P OUTPUT ACCEPT
OUTPUT
チェーンポリシーをDROP
に設定し、必要なタイプのトラフィックを選択的に許可します。これは、OUTPUT
チェーンだけでなく、すべてのチェーンに適用されます。 INPUT
チェーンは、ボックスが受信するトラフィックを制御します。 FORWARD
チェーンは、ボックスを介して転送されるトラフィックを処理します。
私にとって、Debian 9では、ping
を再インストールするだけで役に立ちました。
apt-get install --reinstall iputils-ping