mitsu's techlog

Customer Reliability Engineerになりました。備忘録も兼ねて技術ネタを適当に。技術以外はこっち→http://mitsu9.hatenablog.com/

さくらVPSにUbuntu LTS 14.04を入れてRedmineを導入するまで Part.1 サーバの基本的な設定

サーバーをいじってみたいなーということで値段も手頃なさくらVPSを借りてみることにしました。 インターネットにさらされたサーバーを持つということで、知らぬ間に攻撃に加担しないように、とりあえず基本的な最初にすべき設定をまとめました。 何か不足している点があれば教えていただけると幸いです!

Ubuntuのインストール

さくらVPSのデフォルトOSはCentOSなのでUbuntuをインストールします。 これは公式のインストールガイドが丁寧なのでこれに沿っていけば問題なくできます。 今回ユーザーはdeveloperで作成したので、以下のコードは適当に読み替えてください。

https://help.sakura.ad.jp/app/answers/detail/a_id/2403/~/%E3%82%AB%E3%82%B9%E3%82%BF%E3%83%A0os%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E3%82%AC%E3%82%A4%E3%83%89---ubuntu-12.04%2F14.04

sshの設定

セキュリティを高めるために鍵認証方式に変更します。

ディレクトリの作成。

mkdir ~/.ssh
chmod 700 ~/.ssh

ローカルPCに戻って鍵をサーバーに送信。

scp ~/.ssh/id_rsa.pub developer@IP_ADDRESS:~/.ssh/authorized_keys

別タブで鍵認証でログインできるかを確認。

ssh -i ~/.ssh/id_rsa  developer@IP_ADDRESS

オリジナルのコピーを保存

sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.org

設定の変更

vi /etc/ssh/sshd_config

=>
Port 22 -> 好きな番号に
PermitRootLogin no # rootのログインを禁止
X11Forwarding no # ??
PasswordAuthentication no # パスワード認証を禁止

設定のリロード

service ssh reload

Firewallの設定

httpとssh以外は禁止するように変えます。

sudo ufw status
sudo ufw default deny
sudo ufw enable
sudo ufw allow http
sudo ufw allow https
sudo ufw allow NEW_PORT_NUMBER
sudo ufw status

(出力例)=>
Status: active

To                         Action      From
--                         ------      ----
80                         ALLOW       Anywhere
443                        ALLOW       Anywhere
NEW_PORT_NUMBER                      ALLOW       Anywhere
80 (v6)                    ALLOW       Anywhere (v6)
443 (v6)                   ALLOW       Anywhere (v6)
NEW_PORT_NUMBER (v6)                 ALLOW       Anywhere (v6)

最後に

Redmine導入までは終わっているので、Part2は書き次第更新します。。

参考サイト

さくらVPSにUbuntu LTS 14.04をインストールした話(1) - いぬれおがんばれお

さくらVPS設定の手順の備忘録 - rails永遠の初心者の備忘録

さくらのVPS入門 (全21回) - プログラミングならドットインストール

そこそこセキュアなlinuxサーバーを作る - Qiita