iptablesの設定が難しい

iptablesの設定が難しい

私は*nixオペレーティングシステムに初めて触れ、いくつかの問題に取り組んでいました。これは、iptablesファイアウォールの構成が誤っているためと考えられます。

私のサーバーはポート22でSSHを実行し、TCPポート25565でサーバーソフトウェアを実行します。 SSHとサーバーソフトウェアは、ネットワーク内で行われた接続(つまり、サーバーのローカルアドレス10.0.0.xxを使用して行われた接続)に適切に応答します。ただし、ネットワークの外部から接続したり、ルーターの外部IPアドレスを使用して接続しようとすると応答しません。

ルータはこれらのポートをサーバに転送するように設定されており、そこにバグがあるかどうか疑われます。

iptablesを調べた後、いくつかのガイドを試しましたが、結果は表示されませんでした。

iptables -L の出力は次のようになります。

Chain INPUT (policy DROP)
target     prot opt source               destination
ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:ssh
ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:25565
ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:http
ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:27015
ACCEPT     all  --  anywhere             anywhere             state RELATED,ESTABLISHED

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination

ネットワーク内のnmapスキャンでは、ポート22と25565が開いており、ポート80と2705(現在実行されていない別のサーバーソフトウェア)が閉じていることを報告します。ルータの外部IPを使用してnmapを実行すると、有用な結果は返されません。ルータが検索の試みを検出し、応答を拒否するようです。

サーバーはプレーンテキストモードでDebianを実行しています。

問題が何であるかを知っている人、またはトラブルシューティング手順を提案した人はいますか?

コメントへの回答:

netstat -tpln は次の内容を提供します。 tcpとtcp6の違いはわかりませんが、これは大丈夫だと思います。

tcp6       0      0 :::25565                :::*                    LISTEN      3092/java

Hosts.denyにはエントリがありません。

しかし、/var/auth.logにはいくつかの内容があります...興味深いコンテンツ。 SSHが公開された瞬間、人々が私のルートパスワードを無差別に攻撃し始めるのは普通ですか?

しかし、そうです。ログを詳しく見ると、私のサーバーにSSHを接続できない唯一の人のようです。

答え1

iptablesは、「ネイティブカーネルテーブルをエクスポートし、管理者がこれを理解できるようにしよう」という設計の最悪(最高?)の例の1つです。

シンプルファイアウォールあなたが説明する一般的な状況を処理し、あなたを正気に保ちます。これはiptablesを取り囲むラッパーに過ぎませんが、カーネル構造ではなく作業構造の面で表現されます。

答え2

しかし、そうです。ログを詳しく見ると、私のサーバーにSSHを接続できない唯一の人のようです。

モーニングコールです...これから始めますか?内部ネットワーク?これはうまくいきません。 VPSや3G携帯電話など、ルーターのインターネット側でアクセスをテストする必要があります。ただ考える...

答え3

iptablesを消去してデフォルトポリシーをに設定してみてくださいACCEPT。接続できる場合、問題はiptablesルールで、そうでなければルーターに問題があることです。

auth.logファイルのエントリに関連して設定を破損したい(または単にテスト用の)可能性が最も高い既知の複数のボットネットのブロックリストがあり、追加の保護のためにインストールされています(openssh-blacklist-extrasshdと連携する必要がありますが、クイックスキャンは役立ちます) 。また、fail2ban良い考えでなければなりません。

答え4

手動で構成することもできますが、ツールiptablesを使用して要件に合わせてファイアウォールを構築する方がはるかに安定しています。私が見つけた桟橋の壁よく文書化され、使いやすいツールになります。パッケージの形で提供されます。 IPv6が必要な場合は、Shorewal6パッケージもあります。良い開始点になる可能性があるさまざまな構成のサンプル構成があります。

このucfパッケージは、ルールセットの作成にも使用できます。

両方とも、独自のファイアウォールを展開するときに見逃す可能性があるいくつかの標準ルールを設定します。

関連情報