ServersMan@VPSで仮想サーバを借りて最初にやること

ドメインを衝動買いしてしまったので*1なにかつくろうかと思ってサーバを借りましたっ!借りたのは,ServersMan@VPS仮想専用レンタルサーバで,Entryプランは月490円なのでお手軽だと思います。

最初にやること

申し込んだら10分くらいでサクっと使えるようになります。だけど,そのままだとrootでログインできるのでほっとくと,どこからかしつこくこじ開けようとされて危ないのでいろいろ設定しました。あと,サーバをリセットするかもしれないので自分用のメモでもあります(^^;
あ,OSは,CentOS 5を選択しました。

メールのIPアドレスSSHでログインする

ここでは,Macのターミナルで作業する方法を書いてますが,WindowsでもPuTTYやTera Termでも作業できるのでやってみてください。
まずは,rootで作業しないといけないので申し込み完了のメールに書いてあるIPアドレスにrootでログインします。

ローカルMac$ ssh -l root 182.163.xxx.xxx↵
root@182.163.xxx.xxx's password: ▒▒▒▒▒↵ メールに書いてあるrootパスワードを入力
The authenticity of host '182.163.xxx.xxx (182.163.xxx.xxx)' can't be established.
RSA key fingerprint is 00:11:22:33:44:55:66:77:88:99:aa:bb:cc:dd:ee:ff.
Are you sure you want to continue connecting (yes/no)? yes↵ 初回アクセス時にメッセージが出るのでyesと入力する
[root@xxxxxx ~] # ←ログイン完了!
rootパスワードを変更する

rootパスワードはさっさと変えてしまいましょう!

# passwd↵
Changing password for user root.
New UNIX password: ▒▒▒▒▒↵ 新規パスワードを入力
Retype new UNIX password: ▒▒▒▒▒↵ もう一度入力
passwd: all authentication tokens updated successfully.
ユーザを作る

rootのほかにユーザを作って通常はこれを使うようにします。wheelグループ(管理者グループ)にもいれてあげます。

# useradd -G wheel zundairo↵

つぎにsudoを使えるようにします。root権限が必要になったときはsu -でrootになるよりsudo commandで実行したほうがいいです*2visudo/etc/sudoersを編集します。

# visudo↵

次の行を探して先頭にあるコメント(#)を外します。

%wheel   ALL=(ALL)      ALL
rootでログイン出来ないようにする

つぎに,sshの設定をします。

# vi /etc/ssh/sshd_config↵

PermitRootLoginを探してきてyesnoにします。

PermitRootLogin no

これを保存して,最後にsshdを再起動すればrootでログイン出来ないようになります。

# /etc/init.d/sshd restart↵

公開鍵認証でログインする

ここからは,必要に応じて設定します。公開鍵認証を使用するとパスワードを使用しないのでより安全と言えます。ここでは,鍵ペアの作り方はMacのターミナルから行ってますがPuTTYなどでも作れます。

鍵ペアを作る

まず,ローカル(Mac側)で鍵ペアを作ります。

ローカルMac$ ssh-keygen↵
Generating public/private rsa key pair.
Enter file in which to save the key (/Users/zundairo/.ssh/id_rsa): ↵ 保存場所を聞いてきますが,デフォルトでいいのでそのままEnterを押します
Enter passphrase (empty for no passphrase): ▒▒▒▒▒↵ 必要な場合パスフレーズを入力します
Enter same passphrase again: ▒▒▒▒▒↵ もう一度入力します
Your identification has been saved in /Users/zundairo/.ssh/id_rsa.
Your public key has been saved in /Users/zundairo/.ssh/id_rsa.pub.
The key fingerprint is:
30:4f:ea:db:bf:5a:70:c1:45:4a:cb:b7:61:12:6c:a3 zundairo@zundairo-no-iMac.local
The key's randomart image is:
 +--[ RSA 2048]----+
 |         .o.o    |
 |         ++=     |
 |      o .oB.+    |
 |       *E  = o   |
 |      . S . .    |
 |     .   o       |
 |      .   .      |
 |       o .       |
 |      . ooo.     |
 +-----------------+

これで,~/.ssh/秘密鍵id_rsaと公開鍵のid_rsa.pubが作成されます。なお,鍵作成に使用するパスフレーズは,暗号化された秘密鍵を復号するために使用されるので,サーバには送信されません。

公開鍵をサーバに登録する

つぎに,公開鍵をサーバに置きます。公開鍵の中身はテキストなのでコピペしてもいいいんですが,ここでは,scpを使用してサーバに送信します。

ローカルMac $ scp ~/.ssh/id_rsa.pub zundairo@182.163.xxx.xxx:↵
zundairo@182.163.xxx.xxx's password: ▒▒▒▒▒↵ パスワードを入力します
id_rsa.pub                                    100%  407     0.4KB/s   00:00

これでサーバのホームに送信されたので,サーバにログインします。ログインしたら,~/.ssh/authorized_keysに鍵を追加します。複数の鍵を追加する場合は次回から,2番目の作業だけをすればいいです。

$ mkdir ~/.sshディレクトリが無いので作成します(2回目から不要)
$ cat id_rsa.pub >> ~/.ssh/authorized_keys↵ 複数の公開鍵を追加できます

つぎにパーミッションを設定します。

$ chmod 700 ~/.ssh
$ chmod 600 .ssh/authorized_keys↵

これで準備ができましたので,いちどログアウトして公開鍵でログインしてみましょう。ログインの仕方は,同じです。

ローカルMac$ ssh -l zundairo 182.163.xxx.xxx↵

すると,ダイアログが表示されるので先程設定したパスフレーズを入力します。これで,ログインできます。

もし,zundairo@182.163.xxx.xxx's password: と表示されたら公開鍵認証に失敗しているので設定を見なおしてみてください。

パスワードログインを禁止する

こちらも設定は任意ですが,パスワードによるログインを禁止して公開鍵認証方式だけ許可するようにしてみます。

# vi /etc/ssh/sshd_config↵

PasswordAuthenticationを探してきてyesnoにします。

PasswordAuthentication no

これを保存して,最後にsshdを再起動すればパスワードでログイン出来ないようになります。

# /etc/init.d/sshd restart↵

ただし,鍵をなくしちゃうと入れなくなっちゃうので鍵の取り扱いには注意が必要です!