私のネットブックは非常に遅いので、Firefoxやネットブックをブロックしている他のものをシャットダウンできるかどうかを確認するために仮想端末に移動しました。 tty2にアクセスしてログインプロンプトに「root」と入力しましたが、Enterキーを押すとパスワードプロンプトは表示されません。永遠にそこに座ってこう言います。
Login timed out after 60 seconds.
このパスワードプロンプトが糖蜜のように遅い理由はありますか?失われたプロセスをクリーンアップする必要があるときにttyセッションを常に使用できるようにするにはどうすればよいですか?
答え1
この動作には2つの基本的な理由があります。
- 処理:1行のテキストプロンプトを出力することと、安全なパスワードを入力して処理を開始すること
login
には、大きな計算上の違いがあります。 - 安全:これもセキュリティの問題です。
- 攻撃者が確認にかかる時間(完了に要する時間)に基づいてパスワードの長さを巧妙に決定するのを防ぐための一般的な方法は、タスクにランダムな遅延を追加することです。
- パスワードの確認を制限すると、特定の期間内にシステムが実行できる試行回数を減らすという利点もあります。たとえば、パスワードの確認に5倍の時間がかかる場合できる攻撃者がこれをクラックするのに5倍の時間がかかります。
問題は、システムに過負荷がかかり、必要なリソースのバランスを適切に調整できないため、基本操作がタイムアウトするために発生します。
問題のあるプログラムを見つけたら、メモリ使用量、処理の優先順位などを制限して、この種の停止を防ぐ方法を見つける必要があります。