LoginSignup
66
32

More than 5 years have passed since last update.

ssh_exchange_identificationと言われてknown_hosts消したりhosts.allowいじっても直らない時に確認してほしいこと

Posted at

タイトルの通りなのですが、SSHを使用してどこかへ接続しようとした時にssh_exchange_identification: Connection closed by remote hostと言われて接続できないことがあります。

ググると

  • known_hostsを消す
  • /etc/hosts.allowを書き換える

といった対処法がヒットするかと思いますが、それを試しても直らない時に確認してほしいことです。

(この記事は~/.ssh/configを使っていて、かつProxyCommandで多段SSHしている人しか役に立たないと思われます。当てはまらなかったら残念ながら多分別の原因です…)

結論

先に結論を述べると、接続先マシンのIPアドレス本当にあってる?というのを確認しましょう。

接続先のマシンのIPが何らかの原因で変わってしまっているパターンもあると思うので確認しましょう。(私はこれでした)

どういうことか

普通にSSHを使用していて、sshdの上がっていないマシンに接続しようとすると

ssh: connect to host 192.168.1.10 port 22: No route to host

のようなメッセージが表示されます。

しかし、多段SSHをしていてかつ踏み台のサーバーへはSSH可能な場合には、

ssh_exchange_identification: Connection closed by remote host

が表示されてしまいます。

ここで接続先のマシンのIPがおかしいのでは?と気がつけばすぐ解決するような内容なのですが、軽く躓いたので同じ目に遭った人が解決してくれるといいなぁということで書いてみました。誰かのお役に立てたら幸いです。

66
32
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
66
32