さくらVPS設定の手順の備忘録
さくらVPSで新規サービスを立ち上げたので、その備忘録です。基本的にはドットインストールを参考にしていますが、だいぶ古くなってきたので新しく参考にした方がよいかもしれませんね。
さくらのVPS入門 (全21回) - プログラミングならドットインストール
1.サーバーの起動
サーバーを起動させます。これはボタンをポチッと押すだけなので簡単です。さくらVPSのデザインが変わって管理画面がフラットデザインになっていますね。
2.sshログイン
サーバーを起動後、sshでログインしようとしましたが、すぐには立ち上がらないのか、エラーがでてしまいました。
ssh root@サーバーIPアドレス => #ssh: connect to host サーバーIPアドレス port 22: Connection refused
こちらのサイトによると、再起動するのがよいみたいなので、再起動したらすんなりsshでログインができました。
3.日本語化
sysconfigのi18nの設定を変更して日本語対応にします。
vim /etc/sysconfig/i18n => LANG=“ja_JP.UTF-8" ## "C"を"ja_JP.UTF-8"に変更
4. 作業用ユーザーの追加
作業用ユーザーを追加します。
useradd [ユーザー名] passwd [ユーザー名] usermod -G wheel [ユーザー名] visudo => %wheel ALL=(ALL) ALL #コメントアウトして有効化する
5. 鍵認証の追加
パスワードではなく、公開鍵によるログインに変更してセキュリティを高めます。
mkdir ~/.ssh #ssh用のディレクトリを作成 chmod 700 ~/.ssh #権限を700に変更
ローカルのパソコンで作業
scp ~/.ssh/id_rsa.pub [ユーザー名]@[サーバーIPアドレス]:~/.ssh/authorized_keys #公開鍵をauthorized_keysという名前で転送する
公開鍵を転送したら、パスワードなしでログインできることを確認する
ssh -i ~/.ssh/id_rsa [ユーザー名]@[サーバーIPアドレス]
6.SSHの設定を行う
次にsshの設定を行って、セキュリティを高める。
cp /etc/ssh/sshd_config /etc/ssh/sshd_config.org #予めオリジナルファイルをコピーして保存しておく vim /etc/ssh/sshd_config => Port 22 #コメントアウトし、任意の番号に変更 => PasswordAuthentication no #yesをnoに変更 => PermitRootLogin no #yesをnoに変更 service sshd restart #sshを再起動する
これでPort番号が任意の番号に変更され、パスワードでのログインが不可能になり、rootでのログインも不可能になってセキュリティが高まる。
7.ファイアーウォールの設定
vim /etc/sysconfig/iptables #ファイアーウォールの設定ファイルを作成 => *filter :INPUT DROP [0:0] :FORWARD DROP [0:0] :OUTPUT ACCEPT [0:0] :SERVICES - [0:0] -A INPUT -i lo -j ACCEPT -A INPUT -p icmp --icmp-type echo-request -m limit --limit 1/s --limit-burst 4 -j ACCEPT -A INPUT -p tcp -m state --state ESTABLISHED,RELATED -j ACCEPT -A INPUT -p tcp -m state --state NEW -j SERVICES -A INPUT -p udp --sport 53 -j ACCEPT -A INPUT -p udp --sport 123 --dport 123 -j ACCEPT -A SERVICES -p tcp --dport [先ほど設定したポート番号] -j ACCEPT -A SERVICES -p tcp --dport 80 -j ACCEPT -A SERVICES -p tcp --dport 443 -j ACCEPT COMMIT
service iptables start #iptablesを再起動
8.webサーバーの設定
apacheをインストールして、webサーバーの設定を行う。
yum install httpd #httpdのインストール chkconfig httpd on #httpdの自動起動を設定 cp /etc/httpd/conf/httpd.conf /etc/httpd/conf/httpd.conf.org #設定ファイルをコピーしておく vim /etc/httpd/conf/httpd.conf #設定ファイルの変更 => ServerTokens Prod #OSをProdに変更 => ServerSignature Off #OnをOffに変更 => ptions -Indexes FollowSymLinks #Indexesの前に-を入力 service httpd configtest #文法テスト、OKが出力されたら問題なし service https start #再起動して設定を反映させる
9.mysqlの設定
yum install mysql-server #mysqlのインストール cp /etc/my.cnf /etc/my.cnf.org #設定ファイルのコピー vim /etc/my.cnf #設定ファイルに以下を追記する character_set_server=utf8 default-storage-engine=InnoDB innodb_file_per_table [mysql] default-character-set=utf8 [mysqldump] default-character-set=utf8 service mysqld start #再起動する mysql_secure_installation #mysqlのセキュリティ設定を強化する chkconfig mysqld on #mysqlの自動起動を設定する mysql -u root -p #先ほど設定したパスワードでログインできるか確認する
10.Ruby on Railsのインストール
sudo yum install zlib-devel openssl-devel sqlite-devel #必要ファイルをインストールする curl -L https://get.rvm.io | bash -s stable #rvmをインストールする source /home/[ユーザー名]/.rvm/scripts/rvm #rvmを起動する rvm install [version] #rubyのインストール gem instal --no-ri --no-rdoc sqlite3 #sqlite3のインストール curl -sL https://rpm.nodesource.com/setup | bash - yum install -y nodejs #node.jsのインストール gem install rails --version "=4.1.4” #railsをインストール、今回はversionを4.1.4で指定してインストール
node.jsのインストールは下記を参照
Installing Node.js via package manager · joyent/node Wiki · GitHub
最後に
いつもやってる作業だけどまとめておくと今後便利かもということでまとめておく。毎回、ドットインストール見るのも大変だし。