Blowin' in the Wind

~ memorandum ~

さくらVPSにDebian8をインストールする

目的

さくらVPSにサーバ環境を構築する。
OSはDebian8。

  • さくらVPSにDebian8インストール
  • sudoのインストールと設定
  • sshのインストールと設定

さくらVPSにDebian8インストール

さくらVPSのサーバ設定画面→OSインストール→カスタムOSインストール→インストールOSに「Debian 8 amd64」を選択→「設定内容を確認する」押下→「インストールを実行する」押下。

Debian GNU/Linux installer boot menu」表示され、開始。
各設定項目の詳細は、参考サイトに記載した「Debian 管理者ハンドブック

4.2. インストール作業の各段階」に詳しく記載されています。

インストールの流れ

1. Configure the keyboard

 ・Japanese

2. Configure the network

  • IP address  (さくらネットワーク情報のIPv4のアドレスを入力)
  • Netmask   ( 同上、ネットマスクの情報を入力)
  • Gateway    (同上、ゲートウェイ情報を入力)
  • Name server address  (同上、プライマリDNSを入力)
  • Hostname    (自分できめたホスト名を入力)
  • Domein name  (自分できめたドメイン名を入力)

3. Set up users and passwords (以下、自分で決めた内容を入力)

  • Root password
  • Re-enter password to verify
  • Full name for the new user
  • Username for your account
  • Chose a password for the new user
  • Re-enter password to verify

4. Partition disks

  • Partitioning method (以下、3択:私はディスク全体に対しガイドによるパーティショニングを行う 'Guided - use entire disk'を選択)
      'Guided - use entire disk'
       'Guided - use entire dis and set up LVM'
       'Manual'
  • Select disk to partition (以下、1択)
       'Virtual disk 1 (vda) .... '
  • Partitioning scheme (以下、3択:詳細は前述ガイドを参照願います。All filesが推奨とのこと。私は/homeを選択)
      'All files in one partition'
      'Separate /home partition'
      'Separate /home, /var, and /tmp partitions'
  •  Finish partitioning and write changes to disk
      'Write the change to disk? (よければ、Yes )'

5. フォーマットとインストール

 上記メッセージ後、マーマットが開始され、しばらくしてインストールが開始され、以下、表示で完了

  • Finish the instllation (Continue押下)
  • バージョンの確認

    $ cat /etc/debian_version
    8.6

sudoのインストールと設定

sudoとは

sudo(“su do”)は、UNIXおよびUnixオペレーティングシステムのプログラムの1つで、ユーザーが別のユーザーの権限レベルでプログラムを実行するためのコマンドである。一般的に、ユーザーがスーパーユーザー(superuser、すなわちroot)の特権レベルを利用する際に用いられることが多い。デフォルトではその別ユーザーのパスワード入力を求めてくるが、設定を変更すれば root のパスワードを求めるようにもできるし、端末(や擬似端末)につき1回だけパスワードを入力すればよいようにも、全くパスワード入力を求めないようにもできる[4]。sudo は各コマンド実行を記録でき、スーパーユーザーとしてのログインの完全な代替として使う場合もある。

  (「sudo - Wikipedia」より引用)

sudoのインストール

1. rootにスイッチユーザ 
  `$ su -`

2. sudoパッケージのインストール 
  `# apt-get install sudo`

3. sudoユーザ設定

 sudo の設定ファイルである  /etc/sudoers を編集し、 ルート権限でコマンドを実行できるように設定。編集するためのコマンドと設定の内容は以下。

  `# visudo`

    と入力し、「この位置」まで矢印キーで移動。
  `# This file MUST be 以下省略...
  # See the man page for details on 以下省略...
  Defaults env_reset
  # Host alias specification
  # User alias specification
  # Cmnd alias specification
  # User privilege specification
  root ALL=(ALL) ALL
  「この位置」

 この位置のところで、以下の書式で追記。
 ユーザ名 ホスト=権限 コマンド
 例(user1に権限付与):
  user1 ALL=(ALL)ALL

 CTL-Xでvisudoを抜ける。

 [上記以外に、作成したユーザをwheelグループに追加する手順もあり。〕

sshのインストールと設定

sshとは

ssh(Secure Shell:セキュアシェル)は、暗号や認証の技術を利用して、安全にリモートコンピュータと通信するためのプロトコル

sshについて、その概要、認証方式、sshコマンド等について、以下のサイトで包括的にまとめられています。(導入前に一読をお薦めします。)

インフラエンジニアじゃなくても押さえておきたいSSHの基礎知識 - Qiita

sshの導入

1. サーバ側へsshパッケージをインストール

以下、コマンドでサーバへインストール実施。

 $ sudo apt-get update
 $ sudo apt-get install ssh

2. Mac側でキーペアを作成しサーバ側へ公開鍵を送り込む

  (1) 保存場所を作成
   $ mkdir ~/.ssh

  (2) 鍵の作成

           $ cd .ssh
           $ ssh-keygen

  (3) 作成した公開鍵をサーバ側へ送り込む
           $ scp id_rsa.pub ユーザ@サーバIPアドレス:~/

3. サーバ側で送り込まれた公開鍵を登録する

   (1) 準備

   $ cd ~
   $ mkdir .ssh
   $ chmod 700 .ssh/

 (2) 鍵の登録
   $ cat id_rsa.pub >> .ssh/authorized_keys
   $ chmod 600 authorized_keys

 (3) サーバーにコピーした鍵は削除
   $ rm id_rsa.pub

4.  Mac側からパスワード無しでログインできるかチェック

   ログイン状態であれば一旦、ログアウト。

   $ ssh ユーザ名@IPアドレス

   自動的にログインされることを確認。

5. セキュリティ上の対応

 サーバ側で、以下の設定変更実施。(設定内容は、/etc/ssh/sshd_config)

  portの変更、rootログインの禁止、パスワード認証の禁止 

 (1) オリジナル設定内容のバックアップを取る

   $ sudo -s

           # cd /etc/ssh/

           # cp -p sshd_config sshd_config.org 

 (2) sshd_configをviで変更

   # vi sshd_config

          変更内容は以下のとおり。

   Port 22

    →  22 を自分できめた番号(適当な数字:1024~65535の範囲で)に変更

   PermitRootLogin without-password

           (root でのログインの許可/禁止)

    → PermitRootLogin no に変更(Rootログインを禁止する。)

   ChallengeResponseAuthenticate no
   (チャレンジレスポンス認証を許可するかどうかを指定。
    ログインを公開鍵認証だけにする場合、noに指定。)

    → no なのでこのままでok(チャレンジレスポンス認証を許可しない)

           #PasswordAuthentication no
   (パスワード認証の許可/禁止の設定。)

    → #を外す。
     (noとなり、パスワードログイン禁止、公開鍵でのログインのみ許可。)

 (3) sshサーバーを再起動

         # service sshd restart

    (4) Mac側からsshで接続

         $ ssh ユーザ名@IPアドレス

   --> エラー:ポート番号を指定しないとConnection refusedを確認

   $ ssh -p ポート番号 ユーザ名@IPアドレス

   --> OK

        $ ssh -p root@IPアドレス

   --> エラーログインできない:Permission denied

参考

4.2. インストール作業の各段階

VPSその2・さくらVPSにDebian 8をインストールする

へなちょこlinuxer » Debian 6 サーバー構築 » Debian6 インストール

sudo を使うには

sudo の設定

http://yaoshisi.herokuapp.com/tags/SSH/

さくらのVPSで最初にやっておくこと - 飲んだり寝たり

sshd_config&PAMの設定 | OpenGroove

日本シーサート協議会 SSH サーバセキュリティ設定ガイド Ver 1.0          ( http://www.nca.gr.jp/imgs/nca_ssh_server_config_v01.pdf )