2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

この記事誰得? 私しか得しないニッチな技術で記事投稿!
Qiita Engineer Festa20242024年7月17日まで開催中!

しぶとく生き残るCentOS6の環境にOpenSSH9.8p1のClientからSSHできるようにする2つの方法

Last updated at Posted at 2024-07-03

はじめに

皆様CentOS6のことはご存知でしょうか。とっくにEoLを迎えて、インターネットに直に繋がるような環境は流石に皆様滅ぼされたことと思います。

しかし、検証用環境などでしぶとく生き残るCentOS6環境がいるかもしれません。

そんな環境につなぐときに、~/.ssh/configにこんな感じで記載していたかもしれません。

~/.ssh/config
Host arikitari
    IdentityFile ~/.ssh/arikitari_id_rsa
    HostKeyAlgorithms ssh-dss,ssh-rsa
    PubkeyAcceptedKeyTypes  ssh-dss,ssh-rsa

事象: Bad key types 'ssh-dss,ssh-rsa'.

さて、私は変態的な環境が好きなのでpacmanが大好きなので、Windowsでmsys2を使っています。

執筆中の現在世の中を騒がせているOpenSSH regreSSHion対応(CVE-2024-6387)のために、おもむろにpacman -Syuuしてパッケージの更新をかけると、OpenSSHのバージョンが上がりました。

アップデート中のログは虚空送りしてしまったので代わりにこれを。

$ssh -V
OpenSSH_9.8p1, OpenSSL 3.3.1 4 Jun 2024
$pacman -Qs openssh
local/openssh 9.8p1-1 (net-utils)
    Free version of the SSH connectivity tools
$ls -l /var/cache/pacman/pkg/ | grep openssh
-rw-r--r-- 1 yumetodo なし  982K 10月  5  2023 openssh-9.5p1-1-x86_64.pkg.tar.zst
-rw-r--r-- 1 yumetodo なし   566 10月 11  2023 openssh-9.5p1-1-x86_64.pkg.tar.zst.sig
-rw-r--r-- 1 yumetodo なし  991K 12月 19  2023 openssh-9.6p1-1-x86_64.pkg.tar.zst
-rw-r--r-- 1 yumetodo なし   566 12月 19  2023 openssh-9.6p1-1-x86_64.pkg.tar.zst.sig
-rw-r--r-- 1 yumetodo なし  993K  3月 12 05:10 openssh-9.7p1-1-x86_64.pkg.tar.zst
-rw-r--r-- 1 yumetodo なし   566  3月 16 19:53 openssh-9.7p1-1-x86_64.pkg.tar.zst.sig
-rw-r--r-- 1 yumetodo なし 1022K  7月  2 00:07 openssh-9.8p1-1-x86_64.pkg.tar.zst
-rw-r--r-- 1 yumetodo なし   566  7月  2 02:20 openssh-9.8p1-1-x86_64.pkg.tar.zst.sig

openssh-9.7p1-1からopenssh-9.8p1にあがったっぽいですね。

そして任意のサーバーにSSHしようとすると・・・

Bad key types 'ssh-dss,ssh-rsa'.
.
.
.
terminating, 4 bad configuration options

等と言ってSSHできないわけです。

解決策1: ssh-dssを除去する

幸いにしてCentOS6はHostKeyとしてssh-rsaに対応しているので、ssh-dssを除去するだけでひとまず対応はできそうです。

~/.ssh/config
Host arikitari
     IdentityFile ~/.ssh/arikitari_id_rsa
+    HostKeyAlgorithms ssh-rsa
+    PubkeyAcceptedKeyTypes  ssh-rsa
-    HostKeyAlgorithms ssh-dss,ssh-rsa
-    PubkeyAcceptedKeyTypes  ssh-dss,ssh-rsa

解決策2: CentOS6側でHostKeyにecdsaを追加する

まずどうにかしてCentOS6サーバーに繋いで、以下の作業をします

$ sudo ssh-keygen -t ecdsa -f /etc/ssh/ssh_host_ecdsa_key -C '' -N ''
$ sudo chmod 600 /etc/ssh/ssh_host_ecdsa_key
$ sudo chmod 640 /etc/ssh/ssh_host_ecdsa_key.pub
$ sudo vi /etc/ssh/sshd_config # HostKey /etc/ssh/ssh_host_ecdsa_key を追記
$ sudo /etc/rc.d/init.d/sshd restart

クライアント側の ~/.ssh/config を編集します。

~/.ssh/config
Host arikitari
     IdentityFile ~/.ssh/arikitari_id_rsa
+    PubkeyAcceptedKeyTypes +ssh-rsa
-    HostKeyAlgorithms ssh-dss,ssh-rsa
-    PubkeyAcceptedKeyTypes  ssh-dss,ssh-rsa

参考にしたのはこれ。これの場合はCentOS6から別環境、って感じだったので逆手順ですね。

2
0
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?