先日の記事(IDCFクラウドでサーバー起動とSSHによるアクセスまで)で、SSHによるアクセスができるようになるまで設定しましたので、引き続き設定を進めます。
SSH関係
公開鍵認証とはいえ、rootでログインできる状態はマズイので、一般ユーザー(例:testuser)を作成します。
[root@server ~]# useradd testuser
[root@server ~]# passwd testuser
ユーザー testuser のパスワードを変更。
新しいパスワード:
新しいパスワードを再入力してください
passwd: すべての認証トークンが正しく更新できました。
作成した一般ユーザーで、SSHアクセスできるように公開鍵を設置します。(公開鍵はクライアント側で作成しておきます)
[root@server ~]# mkdir /home/testuser/.ssh
[root@server ~]# vi /home/testuser/.ssh/authorized_keys
ssh-ed25519 AAAA... testuser@PC
[root@server ~]# chown -R testuser:testuser /home/testuser/.ssh/
[root@server ~]# chmod 700 /home/testuser/.ssh/
[root@server ~]# chmod 600 /home/testuser/.ssh/authorized_keys
SSHの設定を「rootログイン禁止」「ポート変更」「パスワード認証禁止(公開鍵認証のみ)」にします。(IDCFクラウドのおすすめテンプレートでは、デフォルトで「パスワード認証禁止(公開鍵認証のみ)」になっていました)
「rootログイン禁止」に変更する前に、一般ユーザーでのSSHアクセスを試しましょう。
[root@server ~]# vi /etc/ssh/sshd_config
▼ 変更する箇所
Port 49994
PermitRootLogin no
PasswordAuthentication no
ChallengeResponseAuthentication no
.bashrcにaliasとumaskの設定を追記します。
[john@pochaneko john]# vi .bashrc
# .bashrc
# User specific aliases and functions
alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'
alias ls='ls -a --color=auto'
# Source global definitions
if [ -f /etc/bashrc ]; then
. /etc/bashrc
fi
# Uncomment the following line if you don't like systemctl's auto-paging feature:
# export SYSTEMD_PAGER=
# User specific aliases and functions
umask 072
Hostnameの設定
仮想マシン作成時に入力したHostnameが設定されていますが、運用予定のドメイン名などに変更します。
[root@server ~]# hostnamectl set-hostname example.com
SELinuxの無効化
本来は有効の状態で運用すべきですが、非常に面倒かつ難しい部分なので、無効化しておきます。(IDCFクラウドのおすすめテンプレートでは、デフォルトでDisabledになっていました。)
▼ SELinuxの状態確認
[root@server ~]# getenforce
Disabled
- Enforcing:SELinux有効
- Permissive:SELinux有効。但し、セキュリティポリシ違反でも実行は許可
- Disabled:SELinux無効
▼ SELinuxの状態を変更する場合
[root@server ~]# vi /etc/selinux/config
SELINUX=disabled
または、
SELINUX=permissive
今回はここまで。
続きの記事は、IDCFクラウドで稼働させたサーバーの初期設定 その2