OPNsense : ssh接続しようとして、no hostkey alg

新しくセットアップした OPNsense ルーターアプライアンス ホストに MacOS から SSHログインしようとしたところ、今まで見たことが無いメッセージが発生。

%ssh user@gateway
no hostkey alg

古いバージョンのSSHコマンドしか使えない古めのOSから、新しくインストールしたUnix系ホストにログインしようとすると、暗号化バージョンの不一致でログインできないことが起きるのですが、”no hostkey alg” は初めて。

最近のOSで動いているホストは、デフォルトでは telnet が使えないように設定してあるので、ssh でリモート接続することになりますが、我が家のように古いOSも動いている環境では、古いバージョンのsshを使うことがあります。

「ssh_exchange_identification: Connection closed by remote host」で接続できないことは体験済みですが、「no hostkey alg」は何?
検索してみると、alg はアルゴリズムの略みたい。

最近のSSHd は古いホストキーアルゴリズム ssh-rsa が、デフォルトでは削除されているようです。

sshd_config 中に、

HostKeyAlgorithms ssh-rsa
PubkeyAcceptedAlgorithms ssh-rsa

と二行追加してデーモンを再起動し、古いsshバージョンにも対応できるようにすれば、接続できるようになりました。

手動で sshd_config を書き換えるか、OPNsense の場合は、設定の、

System → Administratration → Secure Shell のセクションで、「Host key algorithms」「Public key signature algorithms」に ssh-rsa を追加すれば元通り古いOSのsshから接続できるようになります。

ssh host key algorithms ssh-rsa

OPNsense、古いユーザーも見捨てずにいてくれてありがたい。

コメントを残す