私は要塞のsshサーバーを作っています。 ipテーブルで次のルールを使用すると、サーバーに問題なく接続できます。
インバウンドルール
アウトバウンドルール
私の理解では、有効なクライアントが呼び出すと、サーバーはランダムに送信ポートを選択してSSH接続を完了します。
あなたの理解は間違っています:-)。クライアントは「tcp-highポート」を選択して、サーバーのターゲットポート22へのトラフィックを開始します。サーバーは、クライアントが開始したソースポートに応答します。
たとえば、クライアントは、サーバーの宛先ポート22に接続するための送信元ポートとしてポート12345を選択します。サーバーは、ポート22からクライアントにポート12345でトラフィックを送信しようとします。
Tcp-highポートの範囲は、> 1024〜65535です。
したがって、クライアントへのRELATEDおよびESTABLISHEDトラフィックを許可する必要があります。例えば:
IPTABLES -A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
上記のルールが「残りをすべてブロックする」ルールの前にあることを確認してください。