重い腰を上げ、やっとアップデートしました
さくらVPSにCentOS7をインストールしたので、セットアップ手順をまとめました。
CentOS7をインストール、起動
VPS管理画面からインストラーの準備
- 「各種設定」から、「OSインストール」をクリック
- 「カスタムOSインストール」をクリック
- 「インストールOSからCentOS7 x86_64」 を選択
- 「設定内容を確認する」をクリック
- 「インストールを実行する」をクリック
- 「VNCコンソール(HTML5版)を起動」をクリック
インストーラーを起動する
- 「Install CentOS7」を選択し、Enter
- ※少し時間かかります
- 「 SYSTEM 」 の「 INSTALLATION DESTINATION 」をクリック
- ※SOFTWAREは、ネット環境により少し時間かかります
- ① すべてのディスクが選択されているのを確認する
- ② 確認後「Done」をクリック
- 古いOSがインストールされているのを削除し、新規のパーティション作成する
- 標準のOSパーティションを利用するなら、そのまま右下の 『 Reclaim space 』 をクリック
- 「 Delete ALL」をクリック
- 「Reclaim space 」をクリック
- 「Begin Installation」をクリック
OSインストールを開始
- 「USER SETTING」の「ROOT PASSWORD」をクリック
- 「ROOT PASSWORD」、「Confirm」を入力するし、「Done」
- ※強度が低いパスワードを設定した場合、「Done」を2回クリックする必要
インストール完了
- すべてのインストールが完了した状態では、仮想サーバは自動的に電源がOFFの状態になっているので、「起動」をクリック
初期設定
rootでログイン
- ※ xxx.xxx.xxx.xxx : さくらVPSで付与されているIPアドレス
$ ssh root@xxx.xxx.xxx.xxx
- アプリケーションを最新にする
# yum -y update
ユーザーの作成
# 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
↓
%wheel ALL ALL
- 別のターミナルを開き、ユーザでsshログインできるかの確認とsudoが使えるかの確認
$ ssh ユーザ名@xxx.xxx.xxx.xxx
$ sudo -s
SELinuxの設定
- 無効にする。
こちらもお勉強しないとダメですね。。
$ sudo vim /etc/sysconfig/selinux
SELINUX=enforcing
↓
SELINUX=disabled
- OS再起動
sudo shutdown -r now
- 稼働状況の確認
- ※Disabledが表示されていれば、無効
$ getenforce
Disabled
SSHの設定
- 公開鍵認証が使えるよう設定
- 一旦、backupする
$ sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.backup
$ sudo vim /etc/ssh/sshd_config
- ポートの変更
Port 22
↓
Port 10123
- rootでのログイン拒否
PermitRootLogin yes
↓
PermitRootLogin no
- パスワードでのログイン拒否
PasswordAuthentication yes
↓
PasswordAuthentication no
- 公開鍵でのログインを許可
#RSAAuthentication yes
↓
RSAAuthentication yes
#PubkeyAuthentication yes
↓
PubkeyAuthentication yes
- sshdを再起動
$ sudo systemctl restart sshd.service
Firewalldの設定
- sshでアクセスするポートを開ける
- ポート:10123を追加する
$ sudo firewall-cmd --add-port=10123/tcp
- 再起動しても10123を使用するように設定
$ sudo firewall-cmd --permanent --add-port=10123/tcp
- ポートが開いているかの確認
$ sudo firewall-cmd --list-ports
10123/tcp
- sshのポート番号を修正
$ sudo cp /usr/lib/firewalld/services/ssh.xml /etc/firewalld/services/
$ sudo vim /etc/firewalld/services/ssh.xml
<port protocol="tcp" port="22"/>
↓
<!--<port protocol="tcp" port="22"/>-->
<port protocol="tcp" port="10123"/>
- 再起動
$ sudo firewall-cmd --reload
SSH鍵の作成
- サーバ内に公開鍵を保存するディレクトリを作成
- パーミッションを700へ設定
$ mkdir ~/.ssh
$ chmod 700 ~/.ssh
- ローカル(PC)で認証鍵を生成する
ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/Users/xxxxxx/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Passphrases do not match. Try again.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /Users/xxxxx/.ssh/id_rsa.
Your public key has been saved in /Users/xxxxxx/.ssh/id_rsa.pub.
The key fingerprint is:
xx:xxx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx xxxxxxxxx@xxxxxx-no-MacBook-Pro.local
The key's randomart image is:
+--[ RSA 2048]----+
| .++O*.. |
| .oXE.o. |
|. =.+ o . |
| = o . . |
| o S |
| o |
| . |
| |
| |
+-----------------+
- 公開鍵(id_rsa.pub)のパーミッションを変更
chmod 600 .ssh/id_rsa.pub
- 公開鍵(id_rsa.pub)をサーバへ転送
scp ~/.ssh/id_rsa.pub -p 10123 ユーザ名@xxx.xxx.xxx.xx:~/.ssh/authorized_keys
- ssh鍵での接続確認
ssh -p 10123 -i ~/.ssh/id_rsa ユーザ名@xxx.xxx.xxx.xx