さくらVPS CentOS7セットアップ(インストール〜SSH設定・Firewalld設定まで)
今まで6系を使っていたのですが、勉強もしたいので自前のVPSをCentOS7に変更した手順のメモを取りました。
6系ではiptablesとか自動設定や起動コマンドとか覚えていたのですが、7系は色々と違ったりしていました。これからコマンド覚えていこうと思います。。
- CentOS7インストール
- ログインの確認
- SSHの設定
- Firewalldの設定
さくらVPS管理画面 手順
- さくらVPS管理画面にアクセス
- OSインストールからカスタムOSインストールを選択
- インストールOSからCentOS7を選択
- VNCコンソール(HTML5版)を起動をクリック
- コンソール画面が立ち上がる
CentOS7 設定
- Install CentOS 7でEnter
- 起動後、CentOSの初期画面が表示される(※SOFTWAREの項目はネットワーク環境によってソースの取得に時間がかかるようです。)
- 「SYSTEM」の「 INSTALLATION DESTINATION」をクリック
- ディスクの選択画面で、すべてのディスクが選択されているのを確認後したら「Done」をクリック
現在のディスクの利用情報が表示されるようです。
ディスクのパーティションをカスタムしたい場合は、公式を参照してください。
- 標準のOSパーティションを利用するため、そのまま「Reclaim space」をクリック
- RECLAIM DISK SPACEで「Delete ALL」をクリック
- 右下の「Reclaim space」をクリック
- 「Begin Installation」をクリックしてインストール開始
OSのインストール開始
- インストール開始後、rootのパスワードとユーザ(任意)のパスワードを設定する
- パスワードと確認用パスワードを入力してDone(強度が低いパスワードだと「Done」を2回クリックする必要がある)
インストール完了後、起動
すべてのインストールが完了後、仮想サーバは自動的に電源がOFFの状態になるのでコンソールから起動させて完了です。
SSHの初期設定と鍵の設定まで
- CentOS7にrootでログイン(xxxはさくらVPSのIP)
$ ssh root@xxx.xxx.xxx.xx
yumアップデート
# yum -y update
ユーザの作成(GUIでユーザを作成していない場合)
# useradd ユーザ名 // ユーザを作成する
# passwd ユーザ名 // ユーザのパスワードを設定
作成したユーザをsudoが使えるグループに所属させる
- wheelグループに、作成したユーザを所属
# usermod -G wheel ユーザ名
- wheelグループのみ管理者になれるように設定
# vi /etc/pam.d/su
#auth sufficient pam_wheel.so trust use_uid
↓
auth sufficient pam_wheel.so trust use_uid
- wheelグループをsudoできるように設定
# visudo
%wheel ALL=(ALL) ALL // コメントアウトを外す
- 別のターミナルを立ち上げてユーザからsshログイン
- sudoができるか確認する
ssh ユーザ名@xxx.xxx.xxx.xx
$ sudo -s
公開鍵の設定をする
- ローカルから公開鍵認証でSSHできるように設定する
- 作成したユーザで設定を行う
SELinuxの設定
SELinuxを無効にする。※理解している場合は有効にしておいたほうが良いと思います。
- 設定ファイルのenforcingをdisabledに変更
- 保存
$ sudo vi /etc/sysconfig/selinux
SELINUX=enforcing
↓
SELINUX=disabled
- OSを再起動
$ shutdown -r now
- 再起動後、稼働状況を確認
$ getenforce
Firewalldの設定
- Firewallで、sshでアクセスするポートを開ける
- ポート:10222を追加
$ sudo firewall-cmd --add-port=10222/tcp
- 再起動しても10222を使う
$ sudo firewall-cmd --permanent --add-port=10222/tcp
- ポートが開いているか確認
$ sudo firewall-cmd --list-ports
鍵作成・配置(Mac)
- Macのローカル環境で鍵を作成する
- ユーザディレクトリに.sshフォルダを作成
$ mkdir ~/.ssh
$ cd ~/.ssh
$ ssh-keygen -t rsa
- VPSへ公開鍵を転送する(ファイル名は、authorized_keys)
- 転送先のユーザディレクトリに.sshフォルダを作成する
scp ~/.ssh/id_rsa.pub ユーザ名@xxx.xxx.xxx.xx:~/.ssh/authorized_keys
- 権限の強化
$ ssh ユーザ名@xxx.xxx.xxx.xx
$ chmod 700 /home/ユーザ名/.ssh
$ chmod 600 /home/ユーザ名/.ssh/*
- sshdの設定
$ sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.backup // sshのconfigファイルのバックアップをとる
$ sudo vi /etc/ssh/sshd_config
- 変更部分
# ポート番号
Port 10222
# rootでのログインを拒否
PermitRootLogin no
# パスワードでのログインを拒否
PasswordAuthentication no
# 公開鍵でのログインを許可
RSAAuthentication yes
PubkeyAuthentication yes
接続確認
- 設定したPortと鍵で接続できるか確認する
ssh -p 10222 -i ~/.ssh/id_rsa ユーザ名@xxx.xxx.xxx.xx
参考サイト
まずは、初期設定は以上になります。
次回はNginxやPHPとDB周りのインストールができればと思っています。