さくら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が必要になる.インストールすればいいのだけど,インストールしたにも関わらず,私の場合はSafariとChromeでは起動しなかった.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をインストール - としたにあんの左脳