公開鍵認証でssh自動ログイン
便利らしいけどこの辺よく抑えていなかったので調べてみました。実はコマンド2つでいけるので余裕(`・ω・´)
手順
②公開鍵を接続先に登録する
ssh-copy-id hoge@server.local
よくありそうな質問
公開鍵なくしちゃった!
秘密鍵から、以下のコマンドで作成可能。
再度秘密鍵を作ると、サーバー毎に秘密鍵を切り替えないといけないので手間ですよね。
# 秘密鍵から公開鍵を作る ssh-keygen -y -f id_rsa > id_rsa.pub
ログインするサーバー毎に秘密鍵と公開鍵を作らないといけないの?
秘密鍵は使いまわせる。クライアントAがサーバーA,B,C,Dに公開鍵を登録すればいい。具体的なコマンドは以下。
#!/bin/sh # 秘密鍵が無かったら作る if [ ! -e ~/.ssh/id_rsa ] ; then ssh-keygen -N "" -t rsa -f ~/.ssh/id_rsa; fi # 公開鍵が無かったら作る if [ ! -e ~/.ssh/id_rsa.pub ] ; then ssh-keygen -y -f id_rsa > id_rsa.pub ; fi # 各サーバーに公開鍵を登録 ssh-copy-id myname@server-A ssh-copy-id myname@server-B ssh-copy-id myname@server-C ssh-copy-id myname@server-D