認証鍵のメモ
なんか前 putty から サーバへ秘密鍵で認証したいと思って試したとき、
うまくいかなかったけど、今回はうまくいったのでメモ。
user を admin として仮定。
Linux → Linux の場合
local (Linux)
mkdir ~/.ssh
cd ~/.ssh/
ssh-keygen -t rsa
scp ~/.ssh/id_rsa.pub admin@{ サーバの IP }:
Server
mkdir ~/.ssh mv ~/id_rsa.pub ~/.ssh/authorized_keys chown -R admin:admin ~/.ssh/ chmod 700 ~/.ssh chmod 600 ~/.ssh/authorized_keys
ssh admin@{ サーバの IP }
でログイン可能。
Putty(Windows) → Linux の場合
local (Windows)
puttygen をたちあげる
Server
mkdir ~/.ssh touch ~/.ssh/authorized_keys chown -R admin:admin ~/.ssh/ chmod 700 ~/.ssh chmod 600 ~/.ssh/authorized_keys
↑を一気に貼り付けて実行(Server に .ssh がないとして)
cat >> ~/.ssh/authorized_keys
で、PuTTY 鍵生成のところの、
「OpenSSHのauthorized_keysファイルにペーストするための公開鍵」
をコピって貼り付け。改行して、ctrl + d。
cat ~/.ssh/authorized_keys
↑でうまくいってるか確認
local (Windows)
putty を立ち上げる
SSH->認証->認証のためのプライベートファイルにさっき作って保存した
D:\PUTTY_KEY\id_rsa.ppk
を指定
Using username "admin". Authenticating with public key "rsa-key-20081220" Passphrase for key "rsa-key-20081220":
puttygen で利用した鍵のパスフレーズを入力
ログインできた。
鍵のパスフレーズ を入力するのが面倒。
pageant を立ち上げて鍵の追加をクリックして、
鍵のパスフレーズを入力する。
先と同じようにログインしようとすると
次の鍵への照会を許可しますか?と聞かれ、yes にすると
鍵のパスフレーズ なしでログインできる。
認証を公開鍵暗号に限定する場合
sudo cp -pc /etc/ssh/sshd_config{,.orig} sudo vi /etc/ssh/sshd_config
// パスワード認証を許可しない -PasswordAuthentication yes +PasswordAuthentication no
sudo /sbin/service sshd reload