Ubuntu 22.04を実行しているリースVDSサーバーに問題があります。私のサーバーを保護するためにufw(シンプルファイアウォール)を有効にし、2222
SSHサーバーと8080
プロキシサーバーという2つのTCPポートへのアクセスのみを許可しました。
tcptrack
着信接続を監視する一環として、このアプリケーションをインストールしました。最初はすべてがうまくいくように見えました。しかし、私は私に未知のIPアドレスから始まる無関係なTCP接続要求がたくさんあることを発見しました。ほとんどの要求は適切な時間内に正しく拒否され、終了しますが、一部の接続は無期限にESTABLISHED状態に保たれます。残念ながら、この永続接続のリストは、サーバーを再起動しない限り増え続けます。
調査のためにSSHサーバーのログを確認しましたが、/var/log/auth.log
私のログ(認証のみをサポート)以外は成功した認証インスタンスを見つけることができませんでした。publickey
まだそのESTABLISHED
状態にあり、リストに表示され続けるtcptrack
接続が心配です。一定期間活動がない場合、これらの接続は終了することが予想されます。なぜこの状態は無限に保たれ、増えるリストが私のサーバー機能にどのような影響を与えますか?最後に、アクティビティがないときに確立された接続を自動的に終了するようにLinuxまたはsshdを設定する方法はありますか?
答え1
私は持っていますtcptrack ソースコードのナビゲーション、tcptrackが自己接続状態追跡を実行すると結論付けた。表示されるステータスは、LinuxカーネルのTCPステータスマシン1のステータスとは異なります。
つまり、このディスプレイが実際に何十億もの接続デバイスに電力を供給するLinuxカーネル内のバグであるのか、単にtcptrack
パケットを誤って解釈して接続が慢性的に不健康な状態にあると結論付けるのかはわかりません。 -ESTABLISHED 状態が確立されました。
tcptrack
実際のカーネルネットワークスタックをプロファイリングするときに、接続追跡によってコンピューティングサイクルが失われていることを知らない限り、これは間違っていると思います。テストしてみてください。停止しtcptrack
て再起動してください。それでも同じ数のESTABLISHEDがありますが、何時間アイドル接続がありますか?
¹そのように呼びたいなら - それはまさにそれです。複雑。