概要
よく忘れるのでメモメモ。。。
sshで接続する先のサーバにインストールされている ssh のバージョンとかプロトコルを調べたいときに使えます。
telnet で確認
telnet で 接続してみるとバージョンとプロトコルが表示されます。
$ telnet xxx.xxx.xxx.xxx 22 Trying xxx.xxx.xxx.xxx... Connected to xxx.xxx.xxx.xxx. Escape character is '^]'. SSH-2.0-OpenSSH_8.0
ssh -v で確認
ssh に -v
オプションを付けて実行するとデバッグ出力が有効になります。
大量に出力されるのですが、その中にリモート側のプロトコルとバージョンがあります。
ちなみに、自分(ローカル)の ssh のバージョンを表示する場合に使うのは -V
です。こっちは大文字。
$ ssh -v xxxxx@xxx.xxx.xxx.xxx
たくさん出力されている中に以下のような出力があります。
debug1: Remote protocol version 2.0, remote software version OpenSSH_8.0
grep とかしたい場合は、標準エラー出力をリダイレクトさせてから行うと可能ですが
そのままログインできちゃうとプロンプトが返ってこなくなるので、ログインに失敗するようにして実行するほうがよいですね。
$ ssh -v xxxxx@xxx.xxx.xxx.xxx 2>&1 | grep "Remote protocol"
参考情報
過去の記事については、以下のページからご参照下さい。
- いろいろ備忘録日記まとめ
サンプルコードは、以下の場所で公開しています。
- いろいろ備忘録日記サンプルソース置き場