VineLinuxパフォーマンスアッププロジェクト:0035
■ssh1とssh2の使い分け■
VineLinux収録のOpenSSHでは、ssh1とssh2両バージョン対応可能となっています。Windowsでも最近ではssh2対応のターミナルが出てきましたが、やはりssh1のほうが主流のようです。そこで今回はssh1とssh2の使い分けについて考えてみましょう。
筑波大学 コンピュータネットワーク研究室のWebサイトにて紹介されている「SSHってかんたんなのね」では、ssh1とssh2について以下のように紹介しています。
SSH1とSSH2は同じ目的で利用されますが、プロトコルとしては別物ですので相互接続性はありません。SSH1には以前、不正なデータを挿入する攻撃 (insertion attack)が可能になってしまうという問題がありましたが、現在では対策が講じられた結果、この攻撃の実現は非常に難しくなっています(「OpenSSH プロジェクトの目標」参考)。したがって、一概にSSH1を使い続けることが危険で、何がなんでもSSH2を使わなければならない、ということはありません。しかし、現在の開発の本流はSSH2にありますので、特別な理由がない限りはSSH1からSSH2に乗り換えたほうが良いでしょう。また、SSH1、SSH2ともに各実装の過去のバージョンにおいてさまざまな脆弱性が発見されているため、常に最新版を利用するように心がけ、今後も新たなSSHの脆弱性に関する情報があった場合には速やかに対応しましょう。
つまり、「両バージョンとも脆弱性は見つかるがSSH1よりはSSH2のほうが安全である」ということのようです。
VineLinuxでssh2を使うには、sshサーバの設定ファイル"sshd_config"の記述をちょっと変更するだけです。
Protocol 2,1
このようにすれば接続時にデフォルトでssh2モードが優先されます。逆に、"Protocol 1,2"とすれば接続時にデフォルトでssh1モードが優先されるというわけです。
また、ホスト秘密鍵を格納するファイルを指定するには以下のようにします。
HostKey /etc/ssh/ssh_host_rsa_key
HostKey /etc/ssh/ssh_host_dsa_key
その後上書き保存をし、再度sshdをスタートさせればssh2モードが優先されて動きます。もし強制的にssh1モードでログインしたい場合は鍵を作成した後、sshコマンドの後に"-1"オプションをつけてログインします。
ssh -1 XXXXX.net
RSA認証にしてある場合は「パスフレーズを入力せよ」と言われるのでそのまま入力すればOKです。