Pocket

こんにちは、Nitです。

今回はさくらインターネットでVPSを借りてサーバ構築をしてみたので、
その時に行ったOSインストール~初期設定をざっくり書いていきたいと思います。

準備

OSインストールの前にまずはVPSを借りないとですね。
こちらからどうぞ。(別に回し者ではないです。)
さくらインターネット

最安512プラン(メモリ512M、SSD20G)で
年間一括7,543円+初期費用1,080円 = 8,623円 でした。
ちなみに2週間試用期間がありますが、その間はおまけで付いてくるネームサーバが使えません。
あと25番ポートも使えないそうです。

OSインストール

さくらのVPSでは、標準OSはCentOSです。
今回はDebian7「Wheezy」を再インストールしてみたいと思います。
(2015/04/28にDebian8「Jessie」がリリースされており、
 さくらのVPSでもインストール可能になっています。)

ちなみにコードネームはToy Storyのキャラクターからとられており、
Wheezyは2で本棚の隅で埃をかぶっていたペンギンの人形、
Jessieは2のメインキャラになっているカウガールのことです。

さくらのサポート情報にインストールガイドがあります。

カスタムOSインストールガイド – Debian 7/8

悩んだのは以下2点くらいだったと思います。

・パーティション
 「Guided – use entire disk and set up LVM」
  論理ボリュームマネージャーを使う。
 「All files in one partition (recommended for new users)」
  ディスクの全てを/に割り当てる。(パーティション1つになる)
  用途が決まってないときはとりあえずこれで。

・言語、ロケーション、ロケール
  言語は「English」を選択。文字化けるとめんどくさいので。
  ロケーションは「Japan」か、無ければ「Asia」を選択。タイムゾーン(時計)になります。
  ロケールは「en_US.UTF-8」を選択。デフォルトの文字コードになります。

初期設定

の前にコンソールの準備

さくらのVPSコントロールパネルにある、標準コンソールを使う事もできますが、
もし操作するマシンがWindowsなら、puttyを導入しておくと楽かもしれません。

 英語(公式)版:PuTTY: A Free Telnet/SSH Client
 日本語版:ICE IV + putty

 putty.exeを起動して、
 ・ホスト名(またはIPアドレス)=さくらVPSのIPアドレス
 ・接続タイプ=Telnet
 で、標準コンソールと同じくログインできるはずです。

アップデート

$ su –
 rootのパスワードを聞かれるので、インストール時に設定したものを入力
# aptitude update
# aptitude upgrade

rootになれるユーザを制限

# usermod -G adm [一般ユーザ名]
# vi /etc/pam.d/su
 太字部分追記
 auth required pam_wheel.so group=adm

ここで言う一般ユーザ名は、インストール時に作成したユーザのことです。

SSH接続設定

暗号化通信するためにSSHの設定をします。

(1)鍵作成(自PC上で実行)

 puttyをインストールすると付いてくるputtygen.exe(putty用の鍵ジェネレータ)を使います。
 
 ・パラメータで「SSH-2 RSA」を選択
   将来的には「SSH-2 ECDSA」も有り得るかもしれません。
   (使用するソフトが対応していれば、こちらでも良いと思います。)
   「SSH-1」、「SSH-2 DSA」は使いません。

 ・パラメータの「生成する鍵のビット数」を2048以上に設定
 ・「生成」ボタンをクリック
 ・プログレスバーが満タンになるまで、マウスを動かす
 ・「鍵のパスフレーズ」を設定する
 ・「公開鍵の保存」「秘密鍵の保存」ボタンを押して、それぞれ保存する。
   公開鍵はサーバに置き、秘密鍵はローカルに持っておく。
   秘密鍵は他の人には見えないように保管して下さい。

(2)SSHサーバのインストール~設定(VPS上で実行)

# aptitude -y install ssh
# vi /etc/ssh/sshd_config
 太字部分変更
 Port 10022 22のままだと攻撃対象になりやすいので任意のポートに変える。
 Protocol 2 SSH2を使用。
 PermitRootLogin no rootでのログイン不可
 PasswordAuthentication no パスワード認証不可
 PermitEmptyPasswords no 空パスワード不可
 AllowUsers [SSHを使用する一般ユーザ名]

(3)鍵の配置(VPS上で実行)

# su – [SSHを使用する一般ユーザ名]
$ mkdir .ssh
$ chmod 700 .ssh
$ vi .ssh/authorized_keys
 元は空なので、(1)で作成した公開鍵を貼り付けて少し編集する。
 ・1、2、最終行は削除
 ・3行目から「==」までの状態にし、改行を削除する。(1行になる)
 ・頭に「ssh-rsa 」を付ける。(「ssh-rsa xxxxxxxxxxx==」という形になる。)
 ・保存して終了。

$ chmod 600 .ssh/authorized_keys

(4)SSH起動(VPS上で実行)

設定がおわったらSSHを起動し、接続できるようにします。

$ su –
# /etc/init.d/ssh restart

(5)puttyの設定(自PC上で実行)

putty.exeを起動して、以下を設定して「開く」ボタンで接続。
(接続する前に設定を保存しておくと楽)

 ・セッション-ホスト名
  :[SSHを使用する一般ユーザ名]@サーバのIPアドレス
   (例)user@111.222.333.444
 ・セッション-ポート
  :(2)で設定したSSHで使用するポートを入力 (例)10022
 ・セッション-接続タイプ
  :SSH
 ・接続-SSH-認証-認証のためのプライベートキーファイル
  :(1)で作成した秘密鍵

ここまででSSH接続が使えるようになります。
次回はポート設定について書こうと思います。