外部Debianサーバーを入手しました。問題は、ポートがTCPポート22、80、443、またはUDPポート123)と異なる場合、私の大学のキャンパスが外部への接続を許可しないことです。手動でテストしました。 DebianサーバーすべてのUDPとTCP=ポートをリッスンしたいので、大学がファイアウォールを通過したTCPとUDPポートを明確に把握できます。 Nmapそれをテストするクライアント側では素晴らしいですが、サーバー側では何をすべきですか?
サーバーでスニファを実行して、特定のIPまたはネットワークからのトラフィックのみをリッスンするようにしてみませんか?次に、ftesterなどのツールを実行すると、許可されているポートを確認できるはずです。
シンプルでパッシブなソリューションは、すべての着信接続試行をsyslogに記録し、スキャンを実行して、家に帰ったときにログを確認することです。 iptablesを使用すると、次のように接続をログに記録できます。
iptables -A INPUT -p tcp -m state --state new -j LOG --log-prefix "New connection: "
これにより、すべての接続試行に応答するサービスを実行する必要がなくなります。
単純な方法:
通常のアプリケーションを使用して、1つのポートにリストします。 iptables
を使用して、dnatモジュールによってすべてのポートを開いているポートに転送します。
iptables -A PREROUTING -i interface -p tcp -j DNAT --to-destination your.ip:port
iptables -A PREROUTING -i interface -p tcp -j DNAT --to-destination your.ip:port
誰かがあなたのためにサーバー側をすでに実行しました PortQuiz.net 。
その後、Webブラウザーで手動でこれを行うか、NMAPを使用するか、Pythonなどのスクリプトを自動化することができます。