さくらのレンタルサーバでSSH公開鍵認証

   2013/05/17

35

スポンサーリンク

サーバについての記事です。

さくらのレンタルサーバを利用するときにターミナルでSSHを使う事が増えたのでメモ。


SSHのプロトコルを使用してサーバと接続を行う時に、パスワード認証と公開鍵認証という二つの認証方式があるようです。
参考ページ

パスワード認証
SSH接続を行ったときにログインするときにパスワードを入力して接続する方法です。SSHでデフォルトで使われている認証方式です。接続はtelnetとは異なりパスワードの送信時もパスワードの暗号化をしてセキュアな通信を実現します。
実際に接続すると以下のような認証になります。

$ ssh username@username.sakura.ne.jp
username@username.sakura.ne.jp's password:パスワードを入力
Welcome to FreeBSD!

RSA認証
公開鍵と私有鍵というキーのペアを作成して公開鍵をサーバにおいておきます。キーは必ずペアになって作成されます。公開鍵が通信の暗号化を担っていて私有鍵は暗号化された通信の内容を解除するために必要になります。この方法で接続をすれば私有鍵を所有している端末から接続をする事ができます。

環境としてはMacで行っています。
鍵の作成

$ ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/Users/username/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /Users/username/.ssh/id_rsa.
Your public key has been saved in /Users/username/.ssh/id_rsa.pub.
The key fingerprint is:
28:c8:3f:21:67:65:fd:3a:b0:33:08:45:49:68:1e:62 username@computername.local
The key's randomart image is:
+--[ RSA 2048]----+
|   oo.           |
|.E+..  .         |
|.+ .. o .        |
| ..o o . .       |
|  = = o S .      |
|   * + o .       |
|    + + o        |
|     . o .       |
|                 |
+-----------------+

Enter file in which to save the key (/home/username/.ssh/id_rsa):
接続する時のパスフレーズ。空欄は危険なのでパスフレーズを必ず入力する。パスフレーズを未入力で使う事もできますが、セキュリティ上良くないと思います。
それは家の鍵を開けたまま外出をしている事と同じになり、見知らぬ人がコンピュータに侵入されてしまう恐れがあります。

Enter passphrase (empty for no passphrase):
接続する時のパスフレーズ。空欄は危険なのでパスフレーズを必ず入力する

Enter same passphrase again:
確認のための入力を行う。

鍵ができているかを確認

$ cd .ssh
$ ls
id_rsa		id_rsa.pub	known_hosts
スポンサーリンク

サーバにid_rsa.pubを転送してauthorized_keys2にリネームする

$ scp id_rsa.pub username@username.sakura.ne.jp:/home/username/.ssh/authorized_keys2
username@username.sakura.ne.jp's password:

サーバにsshでログイン

$ ssh username@username.sakura.ne.jp
username@username.sakura.ne.jp's password:パスワードを入力
Welcome to FreeBSD!

.sshフォルダのパーミッションの変更をします。

%chmod 700 /home/username/.ssh

確認

%ls -al /home/username/
%drwx------    2 username  users   512 May 30 17:16 .ssh

authorized_keys2のパーミッションを確認

%cd .ssh
%ls -al
-rw-r--r--  1 username  users   410 May 30 19:06 authorized_keys2
-rw-------  1 username  users  1743 May 30 17:16 id_rsa

作成した鍵のパーミッションを400に変更

%chmod 400 authorized_keys2

確認してログアウト

%ls -al
-r--------  1 username  users   415 May 30 18:06 authorized_keys2

%exit

RSA認証になるかを確認

$ ssh username@username.sakura.ne.jp

コマンドを入力するとダイアログボックスが表示されましたので成功しているようです。
パスワードの欄に先ほど作成をしたパスフレーズを入力して接続します。
ここでの注意はサーバに接続する時のパスワードではありません。

Identity added: /Users/username/.ssh/id_rsa (/Users/username/.ssh/id_rsa)
Welcome to FreeBSD!

二回からパスフレーズを入力しないようにするためにはパスワードをキーチェーンに保存するにチェックをつけておけば大丈夫です。
設定は以上です。



  • このエントリーをはてなブックマークに追加
  • Pocket
  • 35 follow us in feedly

この記事へのコメントはこちら

メールアドレスは公開されませんのでご安心ください。
また、* が付いている欄は必須項目となりますので、必ずご記入をお願いします。

*

内容に問題なければ、下記の「コメント送信」ボタンを押してください。