TL;DR
私「Ansibleでsshpass使って通信するかぁ(Ansible機までは公開鍵認証で、その先のマシンにパスワードで)...テストだから鍵交換メンドクセ」
ましん「sshpass入れまーす(ガコッ」
私「あー、楽ちんなんじゃ^^...一旦切断して切り替えて...戻るか...あれ?」
ましん「Permission denied(publickey)」
私「どうして...」
環境
今回そこまで環境が問題ではなかったので割愛
-
Server
- ArchLinux(5.14.8-arch1-1)
- 標準のOpenSSHサーバ
- ArchLinux(5.14.8-arch1-1)
-
クライアント
- Windows 11
- Rlogin(2.26.3)
- Windows 11
起こったこと
ものすごいシンプルに書くと。sshpassをインストールしたら公開鍵認証でSSHつながらなくなっただけのお話です。
自分はSSH-FSをcode-serverに入れて使っていて、そこから接続できねぇって気がついたのが発端ですが、なんでつながらないのか...と悩みました。
原因
今の所不明です...対応方法だけ見つけました。分かり次第書きます。
対処
/etc/ssh/sshd_config
に以下の内容を追記してください。
(ここでは既にPubkeyAuthenticationがyesになっている前提です)
# PubkeyAuthentication yes の下くらいに入れるといいかも...
PubkeyAcceptedKeyTypes ssh-rsa
記述したら
sudo systemctl restart sshd
してあげてください。
結論
sshpass怖い....sshpass怖い...便利だけど怖い....