SSHでホスト鍵が変わっていても無視する方法

StrictHostKeyChecking noを指定すると、新しいホストに初めてつないだとき、known_hostsに自動登録されるようになる。(デフォルト値はask)

これだけだと、known_hostsにすでに登録されているホストの鍵が変わったとき(OSが再インストールされたとか)、再接続するためにknown_hostsからそのホストのエントリを消さないといけないので面倒。(特に、大量のホストを扱っていて頻繁に再インストールされる環境では)

そこで、UserKnownHostsFileを/dev/nullと指定すれば、ホスト情報がknown_hostsに残らなくなるので、ホスト鍵が変わってもわざわざ手動でエントリを消す必要が無くなる。

ただし、ホスト鍵が変わったことを検出できなくなるので、ホストを偽装される可能性がある環境で指定すると危険。

Host x0??
  StrictHostKeyChecking no
  UserKnownHostsFile /dev/null


参考: http://www.unixuser.org/~euske/doc/openssh/jman/ssh_config.html