Ubuntu 13.10 公開鍵認証設定
今回はSSH2での設定
まず普通にリモートログインをパスワード認証でログイン
ログインできたらログアウト
次に
クライアントマシンのほうで
ssh-keygen -t rsa -f ~/.ssh/id_rsa_ubu
で鍵作成
このときパスワードきかれるけどお試しなら
パスワードなし
次に、鍵をコピー
scp .ssh/id_rsa_ubu.pub 192.168.10.206:.
というように
scp .ssh/id_rsa_ubu.pub ユーザ名@IPアドレス:.
でコピー
コピーするときに ,pub 拡張子のついていることを確認すること
そして ssh のパスワード認証でログインしてサーバーで作業する
まず必要な準備
mkdir ~/.ssh
chmod 700 .ssh
でディレクトリ作成と権限設定
次に鍵の名前変更と移動
mv id_rsa_ubu.pub .ssh/authorized_keys
権限を変えるので
chmod 400 .ssh/authorized_keys
そして設定ファイルを変更するので
まず
sudo apt-get install vim
で vim を入れて
sudo vim /etc/ssh/sshd_config
でファイルを開く
vim は癖があるけど操作になれるといろいろできる
変更するのは
PasswordAuthentication yes
を
PasswordAuthentication no
#AuthorizedKeysFile %h/.ssh/authorized_keys
を
AuthorizedKeysFile %h/.ssh/authorized_keys
というように最初のコメントアウトを消すこと
PubkeyAuthentication yes
になっていることを確認して
あとは
:wq
で保存
設定反映のため
sudo service ssh restart
でSSHの再起動
ここまでできたら、ログアウトせずに
新しい端末とか wifi でつなげた ipod とかAndroid で接続テスト
ssh -o PubkeyAuthentication=no IPアドレス
とすればログインできないのが確認できる
かなり長めなオプションだけど tab で補完できるので
じつは楽だったりする
このオプションは公開鍵認証の無効化
で、ログインした状態を保っておくのは
設定失敗して、公開鍵もログインできない状況だと
サーバー本体で操作することになるから
あと、今回は最初のパスワードを省いたけど
本当はセキュリティを考慮するなら設定する
日経 Linux の巻末のマンガにも載っていたけど
パスワードなしを使うのは運用で
ログのみ閲覧可能とかの限定権限にしておくこと