TCP設定ステータスソケットをクリーンアップする方法は?

TCP設定ステータスソケットをクリーンアップする方法は?

Ubuntu 22.04を実行しているリースVDSサーバーに問題があります。私のサーバーを保護するためにufw(シンプルファイアウォール)を有効にし、2222SSHサーバーと8080プロキシサーバーという2つのTCPポートへのアクセスのみを許可しました。

tcptrack着信接続を監視する一環として、このアプリケーションをインストールしました。最初はすべてがうまくいくように見えました。しかし、私は私に未知のIPアドレスから始まる無関係なTCP接続要求がたくさんあることを発見しました。ほとんどの要求は適切な時間内に正しく拒否され、終了しますが、一部の接続は無期限にESTABLISHED状態に保たれます。残念ながら、この永続接続のリストは、サーバーを再起動しない限り増え続けます。

調査のためにSSHサーバーのログを確認しましたが、/var/log/auth.log私のログ(認証のみをサポート)以外は成功した認証インスタンスを見つけることができませんでした。publickey

まだそのESTABLISHED状態にあり、リストに表示され続けるtcptrack接続が心配です。一定期間活動がない場合、これらの接続は終了することが予想されます。なぜこの状態は無限に保たれ、増えるリストが私のサーバー機能にどのような影響を与えますか?最後に、アクティビティがないときに確立された接続を自動的に終了するようにLinuxまたはsshdを設定する方法はありますか?

tcptrack 出力

答え1

私は持っていますtcptrack ソースコードのナビゲーション、tcptrackが自己接続状態追跡を実行すると結論付けた。表示されるステータスは、LinuxカーネルのTCPステータスマシン1のステータスとは異なります。

つまり、このディスプレイが実際に何十億もの接続デバイスに電力を供給するLinuxカーネル内のバグであるのか、単にtcptrackパケットを誤って解釈して接続が慢性的に不健康な状態にあると結論付けるのかはわかりません。 -ESTABLISHED 状態が確立されました。

tcptrack実際のカーネルネットワークスタックをプロファイリングするときに、接続追跡によってコンピューティングサイクルが失われていることを知らない限り、これは間違っていると思います。テストしてみてください。停止しtcptrackて再起動してください。それでも同じ数のESTABLISHEDがありますが、何時間アイドル接続がありますか?


¹そのように呼びたいなら - それはまさにそれです。複雑

関連情報