「ssh_exchange_identification:read:接続がピアによってリセットされました」エラーを修正する方法


21

コンピューターを使用してssh経由でサーバーに接続することはできませんが、termiusアプリを使用して携帯電話経由でこのサーバーに接続できます。私はiptables /etc/hosts.allow/etc/hosts.denyをチェックし、またGoogleで検索しましたが、この問題に当てはまる答えはないようです。私はそれを解決する方法がわかりません、ここにssh -v 183.17.228.80出力されます

debug1: Connecting to 183.17.228.80 [183.17.228.80] port 22.
debug1: Connection established.=======================   
debug1: permanently_set_uid: 0/0   
debug1: SELinux support disabled  
debug1: key_load_public: No such file or directory    
debug1: identity file /root/.ssh/id_rsa type -1    
debug1: key_load_public: No such file or directory   
debug1: identity file /root/.ssh/id_rsa-cert type -1      
debug1: key_load_public: No such file or directory   
debug1: identity file /root/.ssh/id_dsa type -1   
debug1: key_load_public: No such file or directory   
debug1: identity file /root/.ssh/id_dsa-cert type -1   
debug1: key_load_public: No such file or directory   
debug1: identity file /root/.ssh/id_ecdsa type -1  
debug1: key_load_public: No such file or directory   
debug1: identity file /root/.ssh/id_ecdsa-cert type -1   
debug1: key_load_public: No such file or directory  
debug1: identity file /root/.ssh/id_ed25519 type -1   
debug1: key_load_public: No such file or directory  
debug1: identity file /root/.ssh/id_ed25519-cert type -1  
debug1: Enabling compatibility mode for protocol 2.0  
debug1: Local version string SSH-2.0-OpenSSH_7.2p2 Ubuntu-4ubuntu2.2   
ssh_exchange_identification: read: Connection reset by peer

このサーバーにpingを実行できます。ここにtelnetがあります

telnet 183.17.228.29 22  
Trying 183.17.228.29...  
Connected to 183.17.228.29.  
Escape character is '^]'.                                                                 
Connection closed by foreign host.

DenyHostsがインストールされているかどうかを確認したい場合があります。DenyHostsには独自の許可および拒否ホストファイルがあります。
Robby1212

PCで実行しているソフトウェアは、すべてのSSH暗号化モードと互換性がありますか?
タラカデビンダ17年

前述したように、DenyHostsではなくhostsファイルを確認しました
-user3054879

私は多分encrytionアルゴリズムが異なっていた、わからないんだけど、私のクライアントは、パテでした....が、私はIOSに末端で同じサーバーへのsshすることができます
user3054879

キーファイルのパスから、として接続していると思いますroot。通常、これは有効になっていません。sshd構成を見てください。ssh -vvvより多くの情報を提供するかもしれません。
にぎやかな

回答:


12

ただ、サーバー再起動し、あなたがsshをしたいです。以前は同じ問題に直面していました。


1
根本的な原因を見つけることができませんでしたが、再起動はうまくいきました。
ラガベンドラN

2
AWSで無料のサーバーにsshしたときに同じ問題に遭遇しました。サーバーがメモリを使い果たしたことが原因です。リブートが機能します。
レオン

@thistleknot、再起動は私にとっては有効であり、簡単な簡単な修正です。それについて恐ろしいことは何もありません。実際、何が問題を引き起こしたのかはわかりませんが、再起動すると何かが修正されました。
いとこコカイン

再起動が機能した場合、おそらく構成の問題ではなく、リソースの問題です。おそらくsshの優先度を上げるとうまくいくかもしれません。
ジョンロス

1
再起動サーバーは非常に非常に悪い提案です。
ホセインヴァタニ

7

実際には、IPはサーバーによってブラックリストに登録されています。IPアドレスをホワイトリストに登録して、ログインできるようにしてください。/ etc / hostsリストを見て、サーバーのIPアドレスが変更されたかどうかを確認できます。


7
それは必ずしもそうではありません。
-sempaiscuba

2
これは私にとって本当のように思えた。CloudwaysサーバーがホームIPをブラックリストに登録しているため、手動でホワイトリストに登録する必要があることがわかりました。
ライアン

問題は数時間後に消えました。なぜかはわかりませんが、再起動する必要はありませんでした。
セーラムF

「Cloudwaysサーバーが私のホームIPをブラックリストに登録しました」というコメントに感謝します。
ジュールマシューズ

1

上記のエラーは、サーバーへの認証に失敗したという制限があり、クライアントにsshキーが多すぎる(MaxAuthTriesの値を超える)場合に発生します

試すことができるのは、MaxAuthTriesの値を増やし、sshdデーモンを再起動することです。または、~/.sshディレクトリ内のキーの数を制限し、サブディレクトリと~/.ssh/configファイルを使用して、ホスト/ホストのグループごとにキーを定義できます


私はこれを試してみましたが、失敗しました。実際、インターネットで見つけられるすべての方法をほとんど試してみました。キーは暗号化ネゴシエーションアルゴリズムでしたと思いますが、修正方法はありません
-user3054879

2
何をしようとしましたか?質問を更新してください
ロミオニノフ

1

問題を解決する方法は、ホストマシンに移動していくつかのコマンドを実行したことです。

sudo mkdir /var/run/sshd
sudo chmod 755 -R /var/run/sshd
sudo service ssh restart

その後、マシンに接続しました。


1

これと同じことが起こり、ssh -v 'ip addr'が必要になり、証明書を受け入れる必要があることがわかりました。また、パテをブロックするACLまたはルートルールの場合もあります。例-

Puttyクライアントには、エンタープライズネットワークがDMZホストと通信するのをブロックするファイアウォール付きの10.xxxアドレスがありますが、58.xxxの携帯電話は、パブリックIPアドレスがdmzホストと通信しようとしても通信できます。

ssh -v情報をもう一度接続しようとすると、情報を収集できるかどうかを確認し、ファイアウォールまたはルーターレベルでサーバーにアクセスできないようにするルールがあるかどうかを確認します。サーバー自体のdenyhostsファイル。


0

携帯電話のホットスポットを使用してWebに接続していますが、コンソールをフリーズしているときに接続できませんでした ssh_exchange_identification: read: Connection reset by peer

SRVをリセットしようとしましたが、解決しませんでした

ネットワーク接続を(別の携帯電話のホットスポットに)変更した場合にのみ、再度接続できました。

注:古い接続を使用して、別のAWS上のSRVに接続することはできますが、奇妙です...


0

この問題を解決するには、次の手順に従います。

  1. サーバーのオンライン端末からサーバーを再起動します。

これが機能しない場合、

  1. ファイルを編集する $HOME/.ssh/known_hosts
  2. このファイル内のコンテンツを削除します。sshがサーバーに再接続する場合は、接続を再承認する必要があります。

1
-1の完全な削除の場合known_hosts。問題のこの特定のホストを編集することをお勧めします(ただし、ここでは役立つとは思いませんが)。
デビッドフォースター


0

多くの理由があるかもしれませんが、最も可能性のある理由の1つは(私の場合はそうでした)ssh /ポート22がファイアウォールで許可されていないことです。

ユーザーインターフェイスによるssh接続を許可することができます(一部のプロバイダーはそれを許可します)またはログインする別の方法がある場合(例:digitaloceanはコンソールボタンを提供します)、以下のコマンドを実行できます

sudo ufw allow ssh
sudo ufw allow 22

0

サーバー上のsshデーモンがハングしているようです。実行中ですか?sshにtelnetで接続する場合、署名を確認する必要があります。何かのようなもの:

telnet unixhow.com 22
Trying 35.228.26.20...
Connected to unixhow.com.
Escape character is '^]'.
SSH-2.0-OpenSSH_7.6p1 Ubuntu-4ubuntu0.1

出力からわかるのは、サーバー側で応答していないsshデーモンです。IP-KVM(または他の方法)を介してリモートマシンに接続し、sshdを再起動することをお勧めします。


0

これは、ubuntuでopensshサーバーが実行されていないことが原因である可能性があります。以下のコマンドを実行して、opensshサーバーのステータスを確認できます。

ubuntu@ubuntu:~$ sudo systemctl status ssh
● ssh.service - OpenBSD Secure Shell server
   Loaded: loaded (/lib/systemd/system/ssh.service; enabled; vendor preset: enabled)
   Active: active (running) since Wed 2019-03-20 11:52:16 GMT; 5min ago
  Process: 1034 ExecStartPre=/usr/sbin/sshd -t (code=exited, status=0/SUCCESS)
 Main PID: 1058 (sshd)
    Tasks: 1
   Memory: 5.1M
      CPU: 122ms
   CGroup: /system.slice/ssh.service
           └─1058 /usr/sbin/sshd -D

Mar 20 11:52:15 ubuntu systemd[1]: Starting OpenBSD Secure Shell server...
Mar 20 11:52:16 ubuntu sshd[1058]: Server listening on 0.0.0.0 port 22.
Mar 20 11:52:16 ubuntu sshd[1058]: Server listening on :: port 22.
Mar 20 11:52:16 ubuntu systemd[1]: Started OpenBSD Secure Shell server.
Mar 20 11:52:24 ubuntu sshd[1131]: Connection closed by 10.0.2.2 port 60566 [preauth]
Mar 20 11:53:59 ubuntu sshd[1135]: Accepted password for ubuntu from 10.0.2.2 port 60654 ssh2
Mar 20 11:53:59 ubuntu sshd[1135]: pam_unix(sshd:session): session opened for user ubuntu by (uid=0)
Mar 20 11:57:48 ubuntu sshd[1238]: Accepted password for ubuntu from 10.0.2.2 port 61124 ssh2
Mar 20 11:57:48 ubuntu sshd[1238]: pam_unix(sshd:session): session opened for user ubuntu by (uid=0)

ステータスがでない場合、active (running)openssh-serverをインストールおよび/または起動することをお勧めします。これは、以下に示すコマンドを使用して実行できます。

sudo apt update
sudo apt install openssh-server

0

同じ問題がありましたが、sshdデーモンを再起動した後、ホストに接続できました。

sudo systemctl restart sshd && systemctl status sshd

これは、MaxAuthTriesパラメーターを増やすまでの一時的な回避策です。


-2
  1. sshdがサーバーにインストールされ、実行されていることを確認してください。
  2. デーモンがインストールされ起動されていることを確認してください。「man sshd」ができる必要があります。含まれているパッケージはopen-sslであり、デーモンを起動する必要があると思います(必要ない場合は停止します)。

もちろん、sshdをインストールしました。前述のとおり、iphoneの終端で同じサーバーにsshできます...しかし、パテは失敗しました
-user3054879
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.