以下省略!

タイダルウ(ry ほぼ毎日1記事執筆運動実施中。 ※記事に広告(アフィリエイト)リンクを掲載している場合があります。

SSHの鍵認証をRSAからECDSAに変更した

http://www.flickr.com/photos/37753256@N08/3466560105photo by ~Brenda-Starr~ VPSやRaspberry PiのSSH接続に使用する鍵の方式をRSAからECDSA*1に変更してみるなど。本当はEd25519を使ったほうがいいんだろうけれどCentOSやRaspbianのOpenSSHが対応していないっぽい(OpenSSH 6.5以降対応なのだがバージョンが古い)ので。

何らかの不具合(別のクライアントでECDSAが使えないなど)があっては困るので(当面は)今までのRSAの鍵も使えるようにしている(authorized_keysに作成した公開鍵を追記する)がいつか変更予定。
以下の作業をすべてサーバー側で行い、秘密鍵はコピペしたがこれはセキュリティ的にはよろしくないと思う(クライアントで鍵を作りサーバー側で公開鍵をコピペなりで登録したほうがいいかと)。。

$ ssh-keygen -t ecdsa -b 384 -C 'hogehoge'
Generating public/private ecdsa key pair.
Enter file in which to save the key (/home/someuser/.ssh/id_ecdsa): 
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /home/someuser/.ssh/id_ecdsa.
Your public key has been saved in /home/someuser/.ssh/id_ecdsa.pub.
The key fingerprint is:
(略) hogehoge
The key's randomart image is:
+--[ECDSA  384]---+
(略)
$ cat .ssh/id_ecdsa.pub >> .ssh/authorized_keys

ちなみにGitHub側にはEd25519な鍵を登録してみたのは秘密。

*1:ECDSA 256bitでRSA 3072bitに相当するという。今回は384bit(RSA 7680bit相当)で鍵を作成した