🗝

VyOSにSSH認証鍵を設定する

2024/01/15に公開

authorized_keysに直接書いてもダメ

VyOSにパスワード無しでログインするためにSSHの公開鍵を.ssh/authorized_keysに設定しようとして中を見たら以下のようになっていた。

vyos@vyos:~$ cat .ssh/authorized_keys
### Automatically generated by system_login.py ###

構わず公開鍵を追加し、sshでログインを試してみるとパスワード無しでログインできた。よしよし。と思ったがVyOSを再起動すると.ssh/authorized_keysに設定した内容が消えてしまう。どうやら起動時に自動生成されるため、直接変更してはダメなようだ(って中に書いてある通り)

鍵はコマンドで設定

VyOSの他の設定と同じようにsetコマンドで鍵を設定するよう。

vyos@vyos:~$ configure
vyos@vyos# set system login user 'vyos' authentication public-keys 'mykey' key 'AAAAB3NzaC1....'
vyos@vyos# set system login user 'vyos' authentication public-keys 'mykey' type 'ssh-rsa'                                                             
vyos@vyos# commit
vyos@vyos# save

mykey は一意な文字列ならなんでもよい。クライアントのホスト名を入れるとわかりやすい。これを変更して複数の鍵を登録することができる。

コマンド実行後にもう一度.ssh/authorized_keysを覗いてみるとちゃんと鍵が追加されている。

vyos@vyos:~$ cat ~/.ssh/authorized_keys 
### Automatically generated by system_login.py ###

ssh-rsa AAAAB3NzaC1...

VyOSを再起動しても中身が消えていない。めでたしめでたし。

Discussion