hiro99ma blog

何か技術的なこと

Linuxで公開鍵認証だけに変更して失敗

2024/06/29

久しぶりにRaspberry Pi4を使おうとした。
Raspberry OSをインストールしてSSHを有効にした。最近はインストーラの方でそういう設定もできるようだ。

その設定項目の中に「公開鍵認証」があった。 ~/.ssh/authorized_keysに公開鍵を載せておいて、ログイン側は秘密鍵を使ってなんかする。署名して検証するんだと思うが。
家の中でしか使わないのでパスワード認証だけでよいだろうと考えて公開鍵認証は設定しなかったのだが、最近は宅内機器を狙った攻撃が増えてきているのを思い出した。 Raspberry Piを初期設定のままでは使わないにしても、公開鍵認証にしておいた方が無難だろう。

linux 公開鍵認証 設定 - Google 検索

そうすると、パスワード認証を無効にしないと意味があるまい。

linux ssh パスワード認証 無効 - Google 検索

ここで私は設定だけして再起動してしまった。公開鍵認証でログインできることを確認する前に、だ。
私はどうやらauthorized_keysを保存し損なっていたようで、結果としてログインできなくなってしまった。。。 ディスプレイが接続できれば良かったのだが、ちょうど会社にケーブルを持っていって手元になかったためローカルでログインすることができない。
やらかしてしまった。


ただ、そこまで慌てなかった。 SDカードなのでmountして書き換えれば良いのだ。

しかし、そう簡単に進まなかった。
VirtualBox環境だと特に問題なくできていたと思うのだが、WSL2だとSDカード上のext4パーティションをmountできなかったのだ。 USB HDDはmountできたので、SDカードだからなのかもっと違う理由があるのかは分からない。

VirtualBoxをわざわざインストールしたくないので、Live DVDを使うことにした。USBではなくDVDにしたのは、ちょうどDVDドライブをもらったので使ってみたかっただけかもしれない。 ディストリビューションはどれでも良かったのだが、Debian12にした。
作ったのは良かったのだが、うちのThinkPadでうまく起動しない。どうもSecureBootが有効になっているからどうのこうのと言っているようだ。
BIOS…UEFIの設定画面でSecureBootをオフにしたら起動したので、SDカードをmountして/etc/ssh/sshd_configを編集したらパスワード認証でログインできた。

よかったよかった。

で終わるはずだったのだが、SecureBootをオフにしたことでより悲惨な目に会うことになるのを私は知らなかった。
(次回に続く)

< Top page
View on GitHub