さくらVPSを契約した時にやったこと
VPSってなに
VPSとはVirtual Private Server(仮想専用サーバー)の略です。 ホームページを公開する際にはレンタルサーバーが必要となります。 共有サーバーだとちょっと機能が足りなかったり、専用サーバーだと価格が高かったりするので、その中間にある比較的安価で高性能なVPSを使う機会が多くなります。
なんでさくらVPSなの?
個人的理想に近かったため
理想条件 | 現実 |
---|---|
料金固定 | ◯ |
スケールアップ可能 | ◯ |
プラン変更可能 | ☓ |
情報量が多い | ◯ |
サポートがいい | ◯ |
どのプランにしたか
プラン | 利用料金 | 初期費用 |
---|---|---|
1G | 月額972円(一括10,692円) | 1620円 |
上記プランにした理由
- VPSを試してみたかった
- メモリとこれから戦ってみたい
VPSを使ってやりたいこと
- CI環境サーバとして利用
- 開発用DBサーバとして利用
- サーバの設定周りの勉強
- その他思いついたこと
初期設定(Safariでやりました)
CentOS7の環境作成
- 1.サーバを起動させる
- 2.OSを入れる
- 3.インストール先を決める
- 4.インストールを開始
- 5.rootのパスワードを設定する
- 6.ユーザを作成する
ユーザ作成とパスワードの設定
【Mac側】さくらVPSに接続
$ ssh root@ipaddress
【さくらVPS側】ユーザの追加
# useradd 追加したいユーザ名
【さくらVPS側】作成したユーザのパスワードの設定
# passwd 追加したユーザ名
【さくらVPS側】その後、パスワードを入力する
グループにユーザを追加する
【さくらVPS側】デフォルトで存在してるwheelにユーザを追加する
# usermod -G wheel 追加したいユーザ名
【さくらVPS側】visudoの設定を変更する(以下にする)
## Allows people in group wheel to run all commands %wheel ALL=(ALL) ALL
- ※1 複数のグループに追加したい場合はグループを作成を参照
- ※2 現在所属しているグループから抜けて対象のグループに所属するというコマンドのため
作成したユーザからスーパユーザになる
【Mac側】作成したユーザでログインする
$ ssh ユーザ名@ipaddress
【さくらVPS側】スーパユーザになってみる
$ sudo su -
以下成功例
root@hostname ~ #
作成したグループにユーザを追加する
【さくらVPS側】グループを追加する
# groupadd グループ名
【さくらVPS側】ユーザをグループに追加する
# gpasswd -a ユーザ名 グループ名
※ グループに追加しておくと複数人で開発する時に便利なため
CentOSのロケールを日本語に設定する
【さくらVPS側】localectlコマンドで現在のロケールを確認する
# localectl System Locale: LANG=en_US.UTF-8 VC Keymap: jp106 X11 Layout: jp
【さくらVPS側】localectlコマンドで設定可能な言語を設定する
# localectl set-locale LANG=ja_JP.utf8
【さくらVPS側】設定を確認する
# localectl System Locale: LANG=ja_JP.utf8 VC Keymap: jp106 X11 Layout: jp
SELinuxの停止
【さくらVPS側】一時的にSELinuxを止める
# setenforce 0
【さくらVPS側】再起動後も無効にする
# vi /etc/sysconfig/selinux
7 SELINUX=disabled
鍵認証の設定を行う
【Mac側】鍵の作成を行う
$ ssh-keygen -t rsa
※ 色々聞かれるけどデフォルトのままでいいのでEnter
【Mac側】鍵のパーミッションを変更する(Mac側)
$ chmod 600 .ssh/id_rsa.pub
【Mac側】さくらVPSにsshする
$ ssh ユーザ名@ipaddress
【さくらVPS側】鍵を格納するディレクトリを作成する
$ mkdir ~/.ssh
【さくらVPS側】鍵を格納するディレクトリのパーミッションを変更する
$ chmod 700 ~/.ssh
【Mac側】さくらVPSからログアウトしてMacから鍵をサーバにupする
$ scp ~/.ssh/id_rsa.pub ユーザー名@IPaddress:~/.ssh/authorized_keys
ssh接続でパスワードなしで接続できることを確認する
【Mac側】鍵ファイルを指定せずにsshしてみる
$ ssh ユーザ名@ipaddress
※ 上記でログインできなかった場合は以下を試す
【Mac側】鍵ファイルを指定してssh接続する
$ ssh -i ~/.ssh/id_rsa ユーザ名@ipaddress
ポート番号を変更&パスワードでログインできなくする
やること - 1. sshのポート番号の変更 - 2. パスワードでのログインさせない設定 - 3. rootでのログインさせない設定
【Mac側】rootでログインする
$ ssh root@ipaddress
【さくらVPS側】設定ファイルのバックアップを作成する
# cp /etc/ssh/sshd_config /etc/ssh/sshd_config.org
【さくらVPS側】設定ファイルを書き換える
# vi /etc/ssh/sshd_config
17 Port 好きなポート番号 49 PermitRootLogin no 77 PasswordAuthentication no
【さくらVPS側】sshdサービスを再起動させる
# systemctl restart sshd.service
ファイヤーウォールの設定
【さくらVPS側】ウェブサーバー(http)のサービス(ポート)を開きます。
# firewall-cmd --add-service=http
【さくらVPS側】ウェブサーバー(http)のサービス(ポート)を再起動しても開くように設定
# firewall-cmd --permanent --zone=public --add-service=http
【さくらVPS側】ウェブサーバー(https)のサービス(ポート)を開きます。
# firewall-cmd --add-service=https
【さくらVPS側】ウェブサーバー(http)のサービス(ポート)を再起動しても開くように設定
# firewall-cmd --permanent --zone=public --add-service=https
【さくらVPS側】SSHサーバーのポートを開きます。
# firewall-cmd --add-port=好きなポート番号/tcp
【さくらVPS側】古いSSHサーバーのサービス(ポート)を閉じます。
# firewall-cmd --remove-service=ssh
【さくらVPS】SSHサーバーのポートを再起動しても開くように設定します。
# firewall-cmd --permanent --add-port=好きなポート番号/tcp
【さくらVPS】古いSSHサーバーのサービス(ポート)を再起動しても閉じるように設定します。
# firewall-cmd --permanent --remove-service=ssh
【さくらVPS】ファイヤーウォール設定をリロード
# firewall-cmd --reload
設定後
- サーバの再起動をして設定が正常に反映されているか確認
- sshで接続できるか確認する
ssh -p 設定したポート番号 ユーザ名@IPaddress
参考資料
初期設定