さくらのVPSを使ってみた。
2015/08/30
今までServersMan@VPSでブログをやっていて、まあそのままでもよいのですが、一度クリーンにして調整をしたいなと思ったので、さくらのVPSを借りてブログを引越ししてみることにしました。
ServersMan@VPSをもうひとつ借りてもよかったのですが、そういえばまださくらは試していないなと思ったのです。
この記事の構成
この記事は全4本の記事のうちのひとつです。
1 | さくらのVPSを借りて初期設定してみる(この記事) |
2 | nginxとphp-fpmを設定してサイト上でPHPが動くようにする |
3 | MySQLとphpMyAdminを動作させる |
4 | 古いVPSからWordpressを丸ごと引越しさせる |
そして、この記事は以下の構成となっています。
- まずは管理画面を紹介します
- SSHで接続できるように設定をします
- SSHで公開認証鍵を使ったログイン設定をします
さくらのVPS 管理画面
とてもシンプルな管理画面です。
どこかのレンタルVPSのように変なドラッグ&ドロップのサーバ操作のような変な飾りっ気はありません。なおかつ、ブラウザで使えるリモートコンソールがあるのはとてもよいです。
なお、初回にリモートコンソールを使うと、設定が延々と続いてしばらく止まったように見えることがあります。が、そのうちゆっくりですが動くので放置して待ちましょう。私は30分くらい放置しました。
まずはユーザの作成とSSHの基本設定
まずはリモートコンソールを使います。
さくらのVPSからroot情報が送られてきますので、rootでログイン。
$ adduser [ユーザー名] $ passwd [ユーザー名]
この2つのコマンドでパスワード付きのユーザを作成します。
次にSSHの設定です。
$ vi /etc/ssh/sshd_config
ちなみに私はemacsが好きなので、あらかじめ
$ yum install emacs
でemacsをインストールして、
$emacs /etc/ssh/sshd_config
と、emacsで作業をしています。
エディタでの変更箇所です。
# $OpenBSD: sshd_config,v 1.80 2008/07/02 02:24:18 djm Exp $ # This is the sshd server system-wide configuration file. See # sshd_config(5) for more information. # This sshd was compiled with PATH=/usr/local/bin:/bin:/usr/bin # The strategy used for options in the default sshd_config shipped with # OpenSSH is to specify options with their default value where # possible, but leave them commented. Uncommented options change a # default value. #Port 22
先頭からこのような内容になっているので、この例でいうと12行目にあたる
#Port 22
を、次のように変えます。
Port 9999
22のままだとSSHの標準ポートですのでセキュリティ的な意味で数字を変えるわけです。9999ではなく、他の任意の数字にしてください。これが接続ポート番号になります。
さらに、rootでのログインを不許可にします。
途中にこんな部分がありますので、
# Authentication: #LoginGraceTime 2m #PermitRootLogin yes #StrictModes yes #MaxAuthTries 6 #MaxSessions 10
上の例で言うと4行目を次のように変更します。
PermitRootLogin no
以上で、一旦保存して終了。
$ /etc/init.d/sshd restart
SSHを再起動しておきます。
SSH接続のテスト
TeraTermを使って、一旦ログインできるかどうか確認しておきましょう。
ホストには、割り当てられたVPSのIPアドレスを指定。
TCPポートには、自分で設定したポート番号を指定します。
接続は「SSH2」で。
ログインはrootではできませんから、一番最初に作成したユーザとパスワードを使います。
無事に接続できたら、次はセキュリティ対策です。
TeraTermで公開鍵を作る
接続確認をしたら、一度TeraTermを起動しなおし、今度は接続をせずにキャンセルして、コンソールウィンドウを使います。
メニューの「設定」の中にSSH鍵生成という項目があるので、選んでウィンドウを表示します。
ウィンドウが開いたら、まずは「生成」ボタンをそのまま押します。
処理が終わると、鍵のパスフレーズを入力するように求められます。ここで入力するものが、今後ログインで使うパスワードになります。
パスフレーズを入力したら、「公開鍵の保存」「秘密鍵の保存」をそれぞれ押して、ファイルを保存しておきます。なお、秘密鍵は今後とても大切なファイルになります。このファイルが漏れたりしないように管理しなくてはいけません。
公開鍵認証をサーバで設定する
さて、TeraTermでSSHログインします。
ここでは、最初に作ったユーザとパスワードでログインしておきます。
その後、先ほど作成した公開鍵ファイルを、TeraTermにドラッグしてやります。すると、ファイル転送のダイアログが表示されます。
「SCP」を押してファイルをサーバに転送します。
都合のよいことに、ログイン直後はユーザーのホームディレクトリにいますので、ファイルもホームディレクトリに転送されます。
転送が終わったら、以下のようにコマンドを実行します。
$ mkdir .ssh $ chmod 700 .ssh $ cat id_rsa.pub > .ssh/authorized_keys $ chmod 600 .ssh/authorized_keys $ rm -f id_rsa.pub
さて、これで鍵の配置は終了しました。
ここで、もう一度、sshの設定ファイルを変更します。
一旦、rootになります。
$ su -
rootになったら、エディタで設定ファイルを読み込みです。
$ vi /etc/ssh/sshd_config
$ emacs /etc/ssh/sshd_config
どちらでも、お好みの方を。
# Authentication: #LoginGraceTime 2m PermitRootLogin no #StrictModes yes #MaxAuthTries 6 #MaxSessions 10 #RSAAuthentication yes #PubkeyAuthentication yes #AuthorizedKeysFile .ssh/authorized_keys #AuthorizedKeysCommand none #AuthorizedKeysCommandRunAs nobody
こんな部分を探し出して、上の例だと9行目から11行目までを以下のように変更します。
RSAAuthentication yes PubkeyAuthentication yes AuthorizedKeysFile %h/.ssh/authorized_keys
さらにもう一箇所、
# To disable tunneled clear text passwords, change to no here! #PasswordAuthentication yes #PermitEmptyPasswords no
上の例で2行目を、
PasswordAuthentication no
に変更します。
以上の変更したら、保存して終了。その後、SSHを再起動します。
$ /etc/init.d/sshd restart
鍵を使ってTeraTermで接続テスト
最後に、接続テストです。
TeraTermでサーバに接続して、認証画面が開いたら、鍵を使います。
ユーザ名には、最初に設定したユーザ名を。
パスフレーズには、鍵を作成する時に入力したフレーズを入力します。
その後、「RSA/DSA/ECDSA鍵を使う」を選び、秘密鍵のファイルを指定。
これで接続ができたら、設定は無事に完了です。
参考にしたサイト
teppeilog:さくらVPSを借りてまずしたこと
さくらのVPS:SSH接続の設定変更方法
各サイトにお礼申し上げます。
記事のリンク
1 | さくらのVPSを借りて初期設定してみる(この記事) |
2 | nginxとphp-fpmを設定してサイト上でPHPが動くようにする |
3 | MySQLとphpMyAdminを動作させる |
4 | 古いVPSからWordpressを丸ごと引越しさせる |