NetBSDからマイナンバーカードの証明書を使ってsshログインする

はじめに

個人番号カード(マイナンバーカード)を早い段階で入手していたので、 OpenSSHでログインするために利用したいと思っていたのだが、 NetBSD上でのOpenSCなどの使い方が理解できずに放っておいてしまっていた。

ICカードリーダーを確定申告でしか使わないのはもったいないので、再度挑戦して、それなりに使えたので書いておく。 使っているICカードリーダーは、Gemalto (VID: 0x08e6)の接触式SmartCard Reader PC USB-TR (PID: 0x0307)である。

また、NetBSDは、NetBSD/amd64 9.99.8である。

ソフトウェアの準備

pkgsrcを使って以下のようにインストールする。

# cd /usr/pkgsrc/security/opensc
# make install
# cd /usr/pkgsrc/security/ccid
# make install
過去に試した際にはsecurity/ccidをインストールしていなかったので、pcscdでICカードを認識させられなかったようだ。 他にはNetBSD baseのssh-keygensshコマンドを利用する。

公開鍵の抽出とログイン

マイナンバーカードでSSHするの記事には、あまり詳しい操作方法が書かれたいないのだが、 man pageなどを読んでみると、pcscdを起動しておくことが必要だと分かった。 ただし、初回はpkgsrc/security/ccidをインストールしていなかったので、/etc/rc.d/pcscdから起動させても メッセージを見ることができないのもあって、状況が把握できなかった。 infoレベルでメッセージを出しつつ、フォアグラウンドでpcscdを実行してみた。 ICカードリーダーを接続した上で、以下のように起動させる。

# /usr/pkg/sbin/pcscd -f --info
その上で個人番号カードを ICカードリーダーに挿入すると、以下のように認識された。
00000124 Card ATR: 3B E0 00 FF 81 31 FE 45 14
元記事によると、以下のように実行することで利用者証明電子証明書の公開鍵をOpenSSHで使える形式で抽出できるはずであった。
$ pkcs15-tool --read-ssh-key 1 > id_rsa.pub
だが、以下のようにデコードすべきデータが取得できないためかエラーとなり抽出できない。
$ pkcs15-tool --read-ssh-key 1 > id_rsa.pub
Using reader with a card: Gemalto PC Twin Reader (6C55990E) 00 00
Public key enumeration failed: Required ASN.1 object not found
同じことをDebian GNU/Linux 10のOpenSCで試しても同じエラーになるし、Debian GNU/Linux 10で同じpkgsrcのOpenSCを使っても同じエラーになるので、 私の個人番号カードがそういう仕様なのか、OpenSCの方が変わったのかもしれない。 検索してみると、ssh-keygenコマンドもSmartCardを扱えるようなので、以下のように実行してみた。 これによって、4行のテキストファイルとして、OpenSSH形式の公開鍵を抽出できた。
$ ssh-keygen -D /usr/pkg/lib/opensc-pkcs11.so > mynum.pub
Enter PIN for 'User Authentication PIN (JPKI)':
Enter PIN for 'Digital Signature PIN (JPKI)':
私は電子署名用の鍵は使う予定はないのだが、なぜかそれ用のパスワードも入力させられてしまった。 この4つの公開鍵のうち、利用したいものは1行目のみであったので、それをログイン先の~/.ssh/authorized_keysに追記しておく。 その上で以下のように実行すれば良い。
$ ssh -I /usr/pkg/lib/opensc-pkcs11.so REMOTEHOST
Enter PIN for 'User Authentication PIN (JPKI)':
Enter PIN for 'Digital Signature PIN (JPKI)':
やはり、電子署名用の鍵のパスワードも必要になってしまう。

0 件のコメント:

コメントを投稿

注: コメントを投稿できるのは、このブログのメンバーだけです。

国立公文書館所蔵の特定歴史公文書等の利用制限はないようだ

国立公文書館のよくある質問と答え によると、国立公文書館が所蔵する特定歴史公文書等を複写した資料については、 利用制限はないようだ。以下に引用しておく。 16. Q: 国立公文書館所蔵の特定歴史公文書等の画像等を出版等に利用したいのですが、どのような手続きが必...