免責事項: この記事には、サードパーティ製品に関する情報が含まれている場合があります。 そのような情報は参照だけのためです。 Alibaba Cloudは、明示または黙示を問わず、サードパーティ製品のパフォーマンスと信頼性、および製品に対する操作の潜在的な影響に関して、いかなる保証も行いません。
問題の説明
この記事では、SSHサービスがウイルスによって異常に実行された場合の「fatal: mm_request_send: write: Broken pipe」エラーの処理方法について説明します。
考えられる原因
この問題は、SSHサービスの通常の動作に影響を与えるudev-fallなどのウイルスによって引き起こされる可能性があります。
解決策
以下の点にご注意ください。
インスタンス設定やデータの変更など、リスクを引き起こす可能性のある操作を実行する前に、データのセキュリティを確保するために、インスタンスのディザスタリカバリ機能とフォールトトレランス機能を確認することを推奨します。
ECSおよびRDSインスタンスを含むがこれらに限定されないインスタンスの構成およびデータを変更する場合、スナップショットを作成するか、RDSログバックアップを有効にすることを推奨します。
Alibaba Cloud管理コンソールでログオンアカウントやパスワードなどのセキュリティ情報を承認または送信した場合は、そのような情報をタイムリーに変更することを推奨します。
オンサイト環境に基づいて適切なソリューションを選択します。 このドキュメントには、CentOS 7.6 64ビットオペレーティングシステムテストのシステム構成とその説明が含まれています。 他のタイプおよびバージョンのオペレーティングシステム構成は異なっていてもよい。 詳細については、オペレーティングシステムの公式ドキュメントを参照してください。
方法1: 一時的な解決策
udev-fallウイルスを例にとると、次の方法を使用してSSHサービスの通常の動作を一時的に復元できます。
管理端末にログインし、次のコマンドを実行してudev-fallウイルスに感染したプロセスを表示し、プロセスIDを記録します。
ps aux | grep udev-fall
次のコマンドを実行して、前の手順で取得したudev-fallウイルスプロセスIDに基づいてudev-fallウイルスプロセスを終了します。
kill -9 [$PID]
説明注:[$PID] は、前の手順で取得したudev-fallウイルスプロセスIDを示します。
次のコマンドを実行して、udev-fallウイルス除去プログラムの自動実行設定を取得します。
chkconfig udev-fall off
次のコマンドを実行して、すべてのコマンドと起動設定を削除します。udev-fall the virus program:
for i in ` find / -name "udev-fall"`; do echo '' > $i && rm -rf $i; done
次のコマンドを実行して、SSHサービスを再起動します。
説明注: を実行できます。
service sshd restart
コマンドを使用して、CentOS 7より前にSSHサービスを再起動します。systemctl restart sshd.service
方法2: 信頼できるトラブルシューティング
ウイルスや悪意のある侵入者がシステムを改ざんしたのか、他のウイルスファイルを隠したのかは明らかではありません。 サーバーが長期間安定して実行されるようにするには、システムディスクの履歴スナップショットを正常にロールバックすることをお勧めします。 ディスクをロールバックする方法の詳細については、次のドキュメントを参照してください。
注:
ロールバックスナップショットは、ロールバックポイントの後にデータ損失を引き起こします。 先に進む前に、現在の環境のデータにリスクがないことを確認してください。
ロールバック後にSSHサービスの実行に失敗した場合、指定された時点でシステムに例外が発生します。 SSHサービスが正常に実行されるまで、スナップショットを1つずつロールバックすることをお勧めします。
SSHサービス接続の詳細については、以下のドキュメントをご参照ください。
適用範囲
ECS