公開鍵認証方式の実習 MacOS Xの場合
実習手順 Key Pair(公開鍵、秘密鍵)の作成 公開鍵のサーバへの登録 公開鍵を使った認証 二人、もしくは三人で公開鍵を互いに交換し、 一時的に他人のログインを許可する実験 あくまで実験です。
Key Pairの作成 ターミナルを起動 以下のコマンドを実行し、id_rsaや id_dsa が無いことを確認 ls .ssh もしあったら、次のスライドへ 無ければ以下のコマンドを実行 ssh-keygen -t rsa パスフレーズは、好きな文字列を入力
公開鍵のサーバへの転送 以下を実行 scp .ssh/id_rsa.pub ユーザID@psihexa.cc.kyushu-u.ac.jp:~/ psihexa のパスワードを入力
公開鍵のサーバへの登録 sshで psihexa.cc.kyushu-u.ac.jpにログイン このときは、まだ普通のパスワードを利用 以下を実行 cat 公開鍵のファイル名 >> .ssh/authorized_keys いったんログアウト
公開鍵暗号方式を使ったログイン 再度、ssh でログイン 今度は鍵生成時のパスフレーズを入力
ここまでのまとめ 従来のパスワードによるログインではなく、 公開鍵暗号方式によるログインができるようになった。 すなわち、公開できない情報をネットワークに一切流すことなく、認証ができるようになった。 パスフレーズは、PC内で秘密鍵を開くために必要なものであり、ネットワークには流れない
二人組もしくは三人組での実験 注意: これは、公開鍵暗号方式の性質を理解する目的で一時的に試すものであり、他人に自分のIDを貸すことは禁止です。 実験終了後は、速やかに相手の公開鍵の情報をauthorized_keysの中から削除してください。
公開鍵の交換 相手を見つける 公開鍵を相互に交換する 相手の公開鍵をサーバに転送し、登録 手段はUSBメモリでもメールでも良い 秘密鍵を渡さないように注意 相手の公開鍵をサーバに転送し、登録 自分の公開鍵を登録した時と同じ操作
実験 相手の IDでサーバにログインできることを確認 相手も自分の IDでログインできることを確認したら、 .ssh/authorized_keys を編集し、2番目以降のエントリを削除 emacs などを利用 一番上は 残す ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAtt7LASeAp7ygzUx0366Ty+Krf7eVD80/7kbb0Uf437tWRXsZmKLs9 ... hqpFT3M3cdCCubuq11wGah72CEKtQXMzt87DuGhBnQRRVYeepQ== nanri@gwin.cc.kyushu-u.ac.jp ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEApPWVGHlMEg6xUa+9WcWoYDZGH1gqJvkHLKtVU2vZyM8KUGm ... DXIcgV74YdIPEkBLfTyion3AfgrQ== tn@tn-VAIO ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAIEAqS+Yab6IMpAPy1gg5nigxCZrFFg0Ffi+3PrWTDCS/RF3bhoQHCJC ... kRCWo4stuVKHMFe88RapE= rsa-key-20111126 それ以外 は削除
まとめ 他人に見られても構わない公開鍵を渡すだけで、アクセスを許可してもらうことができる。 ユーザ登録等に利用可能。 許可する側は、公開鍵が本人のものであることを何らかの方法で確認する。 必ず対面で渡す、等。 ユーザ登録等に利用可能。