ssh1 を有効にできません

ssh1 を有効にできません

まず、SSH1 が SSH2 より完全に劣っていることは承知しています。さて、そうは言っても...

SSH1 を有効にしようとしていますが、できません。/etc/ssh/sshd_config次の行があります:

Protocol 2

これを次のように変更します。

Protocol 2,1

次に、 を実行してsudo service ssh restartから を実行するtelnet 127.0.0.1 22と、 が返されますSSH-2.0-OpenSSH_6.7p1 Ubuntu-5ubuntu1。SSH1 が有効になっている場合は、 で始まるものが返されるはずですSSH-1.99が、そうではありません。

ここで、この行を次のように変更するとしますProtocol

Protocol 1

次に実行するsudo service ssh restartと、次のようになりますtelnet 127.0.0.1 22

Trying 127.0.0.1...
telnet: Unable to connect to remote host: Connection refused

おそらく、OpenSSH の新しいバージョンでは SSH1 サポートが完全に無効になっているのでしょうか? 私が試したバージョンは 14.04 でした。試した他のバージョンは次のとおりです。

  • Ubuntu 12.04 / OpenSSH-2.0-OpenSSH_5.9p1 Debian-5ubuntu1
  • Ubuntu 10.04 / OpenSSH-2.0-OpenSSH-5.3p1 Debian-3ubuntu7.1

これらはそれぞれ同じように動作しました。

答え1

rsa1SSH1 でサーバーを実行する場合は、ホスト キーを生成する必要があります。

ssh-keygen -t rsa1 -f /etc/ssh/ssh_host_key

でキーを指定しますsshd_config:

HostKey /etc/ssh/ssh_host_key

後で、この古いプロトコルでサポートされている認証方法を指定する必要があります。そうしないと、次のようになります。

$ ssh -1 localhost
Permission denied.

しかし、残念ながら、Ubuntu (15.10 でテスト済み) では、まだ何とか動作します。

しかし、プロトコルが古くて壊れているため、これはお勧めできません。本番環境では使用しないでください。

関連情報