今日、サーバーにログインしましたが、SSHにアクセスすると、エラーが発生します"SSH Connection Refused" UbuntuHardyを実行しています。サーバーはまだ機能していて、アクセスできないWebページを提供しています。前回サーバーにアクセスしたときは、iptablesを変更しませんでした。この問題をトラブルシューティングする方法はありますか?更新:サーバーへのブラウザーベースのコンソールにアクセスできます。痛々しいほど遅いですが、さらに調査することができます。
更新:lsofを使用すると、ポートでsshが実行されていないようです。 Sudo /etc/init.d/ssh restartを実行しましたが、何も起こりませんが、sshポートで何も実行されていません。 /var/log/auth.logを確認すると、次のようになります。
Sudo: pam_unix(Sudo:session): session opened for xxxx root by yyyy(uid=0)
Sudo: pam_unix(Sudo:session): session closed for user xxxx by yyyy(uid=0)
開いているように見え、すぐにセッションを閉じます。
すでに存在する回答に加えて、以下を提案します。ルールセットを注意深くチェックした後、ファイアウォールを復元する方法があることを確認してください。
免責事項:このデバイスがインターネットに接続されたマシンである場合、これによりすべてのインターフェイスからすべてのファイアウォール保護が削除され、ボックスが所有される可能性があります。
# iptables --flush
# iptables -P INPUT ACCEPT
# iptables -P FORWARD ACCEPT
# iptables -P OUTPUT ACCEPT
# /etc/init.d/openssh-server restart
次に、ssh経由で接続を再試行します。失敗した場合は、/ var/log /auth.logを確認してください。
使用することもできます
# lsof -i TCP:22
sshポートが開いているかどうか、およびそれがリッスンしているIPアドレスを確認します。
編集:re:更新、sshに関連していないようです(Sudo特権の昇格に関連しているようです。
ssh経由で接続しようとしているときに、tail -f/var/log/auth.logを試してください。
接続が拒否されたということは、ファイアウォールまたはそれ自体のデーモンによって接続が明示的に拒否されたことを意味します。
通常の接続は次のようになります。
Mar 23 13:32:32 <hostname> sshd[20100]: Accepted password for <user> from xxx.xxx.xxx.xxx port xxxxx ssh2
Mar 23 13:32:32 <hostname> sshd[20102]: (pam_unix) session opened for user <user> by (uid=0)
認証の失敗は次のようになりますが、次のようになります。
Mar 23 13:35:54 <hostname> sshd[20177]: Failed password for <user> from xxx.xxx.xxx.xxx port xxxxx ssh2
何らかの理由でsshdによってブロックされた場合、それは認証ログで回避されます。ファイアウォールによってブロックされた場合(ファイアウォールがホスト、クライアント、またはその間のどこかにある可能性があることに注意してください)、何も表示されません。
その場合は、クライアント、サーバー、および任意の中間ルーターにtcpダンプが送信されます。
なんらかの理由でsshサーバーがダウンしている可能性があります-それをチェックする1つの方法はnetcatを使用することです-netcatはある種の応答を生成するはずです。安全のために、別のIPアドレスからのショットも提供します。
/ var/log/syslogファイルをチェックすると、sshデーモンが起動できない理由に関する詳細情報が含まれているはずです。マシンでゾンビsshデーモンが実行されていないことを確認するだけで、問題が発生する可能性があります。 (ps -ef | grep ssh
の出力を確認してください)?
あなたのhosts.denyファイルを見てください!多分どういうわけかあなたのIPはそこに入った。