としたにあんの左脳

備忘録です.

さくらVPSの初期設定

さくらのVPSを借りました.Jenkinsサーバーを立てて,自動ビルドの練習したいなとおもったので.
VPS(仮想専用サーバ)のさくらインターネット
スペックは一番安いプランのやつです.

さくらVPSにカスタムOSのUbuntu 10.04をインストール+セキュリティ設定などをした時のメモ - ぬいぐるみライフ(仮)
を参考にしました.

OSの再インストール

デフォで入ってるOSはCentOS.Ubuntu12.04を入れてみよう.
VPSコントロールパネルさくらインターネットVPSコントロールパネルにいって.ログインする.
OS再インストール→ カスタムOSインストールへ →OSを選択し,確認 → 実行
すると,Java Appletが起動しOSのインストールが始まる.
そのため,Java Runtime Environmentが必要になる.インストールすればいいのだけど,インストールしたにも関わらず,私の場合はSafariChromeでは起動しなかった.Firefoxでは起動したので,Firefoxでインストールを続けていくことにする.(なぜだろう)

ここからはUbuntu 12.04|カスタムOSインストールガイド|さくらのVPS|さくらインターネット公式サポートサイトを参考にすすめる.
ネットワーク設定後,何も表示されない状態が続くのでちょっと不安.マニュアルには1~2分と書かれていますが,私の場合は5分くらいかかったと思います.スペック低いからなのかな?

最後に起動をしてあげればOKです!

$ ssh hoge@133.xxx.yy.zz

接続出来ましたー.

公開鍵

今どきパスワードでサーバーに入れるようになってるとかないと思いますので,公開鍵の設置とログインの設定をしたいと思います.
ローカルマシン上で秘密鍵と公開鍵を作ります.

$ ssh-keygen

パスフレーズだけは必ず設定します.

次に,サーバ上に公開鍵を設置します.

~/.ssh/authorized_keys

に登録します.
ちなみに ~/.ssh はインストール直後はありませんので,自分で作って大丈夫です.この際,パーミッションも変更しておくといいようです.

$ chmod 700 .ssh

公開鍵はこんな感じです.(例です)

ssh-rsa AAAAB3NzaC1yc2EAAAADAQABBBBBAQDKADhrgN8/D3a5T324mv3x1xv7fTUYFYfo6UfLk4jxcYi7neF0yC6B2X0+E+lLaAqEKpCUYgNt/3giu+RjzTf9kQ5GIxdoN65QitJmncC9riQmD4ZwKNNdgStPsnediC05QjGaGDs2Mdqff2qN1pM5RFwZWE0Fa9Ymxr6wUEKyRB4dQ2x0AbDXT4QMriX9ix2rUGc7qlio8ZQEga7Q0N6ExVPbt2v4sII38abspyDBkHVs4gzwmStloozY7lbrZBF2qoWeSjYEg07P5INVS0ltsqAUeDWPeBbp7ZVaKB6oaRDT4eCo5HcIFCBOVUAebnaPKGvI1c2sI1NipLJ38E57 hoge@hoge-MacBook-Pro.local

これをauthorized_keysへそのまま書いちゃえばいいです.vimは入ってないので,viでがんばりました.(さきにvimいれてもいいかもですね.)

authorized_keysのパーミッションもちゃんと変えとかないとですね.

$ chmod 600 authorized_keys

ここまで来たら,ローカルマシンから鍵認証でログインのできるはずなので,試してみます.

$ssh -i id_rsa hoge@133.xxx.yy.zz

無事,ログインできました.

ただ,毎回こんなのを書くのもめんどくさいので,~/.ssh/configに設定を書いておいてあげる.

Host sakuravps
 User hoge
 port 22
 Hostname 133.xxx.yy.zz
 IdentityFile ~/.ssh/id_rsa

これで,

$ ssh sakuravps

でログインできるようになる.

ここからsshのセキュリティ的な設定したいとおもいます.が,viじゃもういやなので先にapt-getのアップデートとvimのインストールをしておきます.

$ apt-get update
$ sudo apt-get upgrade
$ apt-get install vim

参考エントリーでは,localeの変更後に行っています.もしかしたら,影響があるかもしれません.

では,本題にもどって,/etc/ssh/sshd_configを編集をしていきます.
私は,パスワード認証とルートログインをできないようにしました.

#  PasswordAuthentication yes

PasswordAuthentication no

に変更,

PermitRootLogin yes

PermitRootLogin no

に変更.編集を保存して.チェック

$ sudo sshd -t

最初,ssh_configを編集していて,うまくできませんでした.
編集するのは sshd_config

sudo service ssh restart

して,sshdを再起動する.

ローカルからパスワードでログインできないこと,鍵認証でログインできることを確認します.

ファイヤーウォールの設定

参考エントリーを参考にファイアウォールの設定を行います.

$ sudo ufw allow 12345

とありますが,私の場合はsshのポートは22のままなので

$ sudo ufw allow 22

としました.

ロケールの変更

同様に参考エントリー通りに行います.
設定後は再ログインして,設定が反映されていることを確認します.

デフォルトエディタの変更

vim.basicにしておきました.

最低限入れておくべき
$sudo apt-get install make gcc 
Jenkinsのインストール

長くなってしまったので次のエントリーで書きます.さくらVPSにJenkinをインストール - としたにあんの左脳