さくらVPS借りました。ある意味仕方がなく。色々使う前にいじってみるさ。
いじりはこの辺を参考にしました。
・ユーザの作成
さくらVPSを契約すると30分ぐらいでrootのパスワードが送られてくるので、さくらVPSのコントロールパネルでリモートコンソールを選び、rootでログイン。まずはユーザを作成する。
$ adduser hogehoge $ passwd hogehoge
・SSH接続のセキュリティ向上設定
SSHの設定は /etc/ssh/sshd_config を編集する。
SSH接続先ポート番号を変更。デフォルトは22だよ。
Port 4569
SSHのプロトコルを2だけ許可。
Protocol 2
SSH接続でrootに直接ログインすることを禁止。
PermitRootLogin no
リモートコンソールはシリアルだから関係ないよ。
これでひとまず保存して終了。sshdを再起動します。
$ /etc/init.d/sshd restart
・クライアントで鍵ペア作成
SSH接続には公開鍵認証方式を使用することにします。私の場合はクライアントがMacなのでTerminalを開き
$ ssh-keygen
とコマンドを打ちますと、~/.ssh/ あたりに id_rsa と id_rsa.pub ができてるはず。秘密鍵と公開鍵です。
このうち公開鍵を先ほど作成したhogehogeユーザでさくらVPSにscp転送します。
$ scp .ssh/id_rsa.pub hogehoge@'さくらVPSのホスト':~
パスワードはhogehogeのパスワード。これでhogehogeユーザのホームディレクトリに公開鍵が保存されます。
・ユーザの公開鍵設定
リモートコンソールからhogehogeでログインし公開鍵の設定をします。
# ホームディレクトリに.sshディレクトリがない場合 $ mkdir .ssh # .sshディレクトリのPermissionを変更(重要。はまりました) $ chmod 700 .ssh # 公開鍵を.sshディレクトリに移動 $ mv id_rsa.pub .ssh/
次にauthorized_keysというファイルを作成します。これは公開鍵を書き込んでおくファイルです。sshdはこのファイルを確認します。
$ cd .ssh $ touch authorized_keys # ファイル作成 $ cat id_rsa.pub >> authorized_keys # 公開鍵の中身をauthorized_keysへ $ chmod 600 authorized_keys # 重要
・SSH接続認証の設定
再度sshd_configの設定をします。sshd_configを開き編集します。編集する内容は鍵認証の有効化とパスワード認証の無効化です。
RSAAuthentication yes PubkeyAuthentication yes AuthorizedKeysFile %h/.ssh/authorized_keys PasswordAuthentication no
%hは各ユーザのホームディレクトリです。編集を終了してsshdを再起動します。
$ /etc/init.d/sshd restart
これでSSH接続時のパスワード認証はできなくなりました。
・クライアントからSSH接続する
クライアントからSSH接続するには
$ssh hogehoge@'さくらVPSホスト' -i .ssh/id_rsa -p 4569
とします。
クライアントの.ssh/configを編集するともっと簡単に接続できます。
Host sakuravps HostName ‘さくらVPSホスト’ User hogehoge Port 4569 IdentityFile ~/.ssh/id_rsa
こうすると
$ ssh sakuravps
で接続できます。
[…] 参考: http://blog.hybridism.com/?p=140 […]
[…] ここらを参考にしました さくらVPSを借りてまずしたこと at teppeilog 【さくらのVPS】初期設定(3) – 公開鍵認証ログインのみを許可する | Xliner.net Blog penguinJr1’s Room: さくらVPS公開鍵認証 […]
[…] さくらVPSを借りてまずしたこと at teppeilog […]
[…] 今回の記事はこちらのサイトを参考にさせて 頂きました。ありがとうございます。 […]