さくらVPSにRocky Linux9.4 をインストールして最初にすること
篠原 隆司
アフィリエイト広告を利用しています
このページの内容が役に立ったら X (旧twitter) でフォローして頂けると励みになります
挨拶や報告は無しで大丈夫です
Rocky Linux9.3をさくらのVPS 2G で契約してインストールした覚書です。
ここでは、インストール直後に速攻でやっておいたほうが良いことを記します。
さくらのVPSでは、「サーバー作成直後に設定しておくべき初期セキュリティ設定」という記事が公開されていますので、こちらも合わせてご覧ください。
なお本番環境で利用される場合はここにある内容だけを鵜呑みにせずセキュリティ専門家に相談されることをお勧めします。
環境
実施日 | 2024-05-13 |
サーバ | さくらのVPS 2G |
OS | Rocky Linux9.4 |
VPSを起動する
申込が完了したら、コンパネにログインします。
契約直後は「停止中」です。
下図のように「電源操作」から「起動する」をクリックします。
起動したら、ターミナルを使って操作していきます。
ちなみに「コンソール」から「VNCコンソール」を使ってブラウザ上で操作することもできます。やらかしてしまった時の緊急時にここから操作できることを覚えておくと良いです。
公式のマニュアル
さくらインターネットに詳しいマニュアルが用意されていますので、まだご覧になってない場合は先に一読しておくことをおすすめします。
本ページでやっていく内容と被る部分があります。
SSHログイン
VPS契約時に設定したユーザーとパスワードで接続します。
接続先のIPアドレスはコントロールパネルに出ています。
デフォルトのポートは 22 です。
申込時に鍵登録を行っている場合、パスワードなしでログインできます。
rootユーザーのパスワードを設定
最初はrootユーザーのパスワードは設定されていないので、設定します。
契約時に作成した「rocky」ユーザーで行います。
sudo passwd root
Changing password for user root.
New password:
Retype new password:
passwd: all authentication tokens updated successfully.
root に切り替える
su
Password:
root ユーザーに設定したパスワードを入力して切り替え
ちなみに元のユーザーに戻る(rootを抜ける)には
exit
ここからは基本的に root ユーザーでの操作となります。
※root での操作と 一般ユーザーからの sudo の使い分けはケースバイケースです。ここでは root で行う手順とします。
Rocky Linux のバージョンを確認する
cat /etc/redhat-release
Rocky Linux release 9.2 (Blue Onyx)
Rocky Linuxの公式を確認すると現時点(2024-05-13)での最新は、9.4 です。
バージョンが気になるところですがこのまま進めます。
DNFの更新 / 9.2 -> 9.4
まずはこの時点での最新にしておきます。
dnf upgrade
dnf update は dnf upgrade のエイリアスです。
yumの時代は違いに意味がありました。
改めてバージョンを確認します。
cat /etc/redhat-release
Rocky Linux release 9.4 (Blue Onyx)
9.4 になりました。
SELinuxの有効無効の確認
本記事では説明の都合でSELinuxは無効として進めていきます。
確認します。
getenforce
Disabled
無効になっています。
詳しくは SELinuxについて / Rocky Linux9.4 on さくらのVPS もご覧ください。
ユーザーの追加
作業用のユーザーを作成します。
root権限での作業は基本的に作業用ユーザーから行うようにします。
もとからある rocky ユーザーは最終的に削除し、1から自分が設定したユーザーを残すことにします。
下記のページをご覧ください。
管理用ユーザーを追加 / Rocky Linux9.4 on さくらのVPS上記のページにも含まれますが、wheelユーザーも確認しておきます。
suを制限するwheelユーザー / Rocky Linux9.4 on さくらのVPSSSHの設定変更
ログイン制限の設定がひととおり完了して、接続確認できるまでは作業中のターミナルは絶対に閉じないでください。
閉じてしまって、ミスってた場合はサーバ会社提供のコンソールとかからログインできる場合があります。(さくらのVPS の場合はコンパネから)
ざっくり書くと次のような設定を行います。
- root ユーザーはSSHから直接ログイン禁止
- 公開鍵認証を有効にする
- 公開鍵ファイルの場所を設定
- パスワードによるログインを禁止
※例外で許可する方法もあり - 空のパスワードを持つユーザーのログイン禁止
下記のページをご覧ください。
SSHの設定変更 / Rocky Linux9.4 on さくらのVPSSSHポートの変更
ログイン制限の設定がひととおり完了して、接続確認できるまでは作業中のターミナルは絶対に閉じないでください。
SSHのポートをデフォルトの 22 から異なる数字に変更します。
下記のページをご覧ください。
SSHポートの変更 / Rocky Linux9.4 on さくらのVPSSSHのIP制限
パケットフィルタ
さくらのVPSを使用している場合は、コントロールパネルのパケットフィルタ―設定から行えます。
firewalld
本記事の手順通りに進んでいるとファイアーウォールの設定はまだ行っておらず、起動もしていないはずです。もし既に行っている場合は下記をご覧ください。
Rocky LinuxでIPアドレス制限を行う場合は、firewalld で設定します。
ファイアーウォールを設定 / Rocky Linux9.4 on さくらのVPSファイアーウォールの設定
Rocky Linuxにファイアーウォールの設定を行っていきます。
「さくらのVPSにパケットフィルターがあるのだから不要じゃない?」
という意見はごもっともだと思います。
「する / しない」はご自身の状況も踏まえて決めると良いと思います。
下記のページをご覧ください。
ファイアーウォールを設定 / Rocky Linux9.4 on さくらのVPSdnfの準備
アップデート
インストール直後にやっているはずなので確認だけです。
dnf upgrade
日本語環境にする
次のようなエラーが出るときにもこちらで解決します
Failed to set locale, defaulting to C.UTF-8
インストール
dnf install langpacks-ja glibc-langpack-ja
# 確認
localectl status
# System Locale: LANG=en_US.UTF-8 になってる
# 設定
localectl set-locale LANG=ja_JP.UTF-8
確認
localectl status
System Locale: LANG=ja_JP.UTF-8
VC Keymap: jp
X11 Layout: jp
EPELリポジトリ
インストール
dnf install epel-release
設定変更
vi /etc/yum.repos.d/epel.repo
enabled=0
enabled=1 を 0 にして、普段は無効化しておきます。
必要な時は▼のように明示的に指定します。
dnf --enablerepo=epel ・・・
Remiリポジトリ
ファイル名の確認
https://rpms.remirepo.net/enterprise
こちらにアクセスしてファイル名を確認し、下記のインストールURLを調整してください。
インストール
dnf install https://rpms.remirepo.net/enterprise/remi-release-9.rpm
設定変更
vi /etc/yum.repos.d/remi-safe.repo
enabled=0
enabled=1 を 0 にして、普段は無効化しておきます。
必要な時は▼のように明示的に指定します。
dnf --enablerepo=remi-safe ・・・
その他いろいろインストール
dnf install wget
dnf install unzip
dnf install tar
時刻合わせの自動
▼をご覧ください。
時刻合わせにChronyをインストール / Rocky Linux9.4 on さくらのVPSDNFの自動アップデート
▼をご覧ください。
DNF の自動アップデート / Rocky Linux9.4 on さくらのVPSサーバ設定をGit管理できるようにする
ターミナルを開いて vi で編集しても良いのですが、バージョン管理の問題があります。
サーバ内に Git を直接入れる方法もありますが、地雷がありそうで導入しづらいと思います。
ここでは、必要なファイルを rsync でローカルに同期し、使い慣れたエディタで編集、Gitにコミットして、rsync でファイルを戻す流れができるようにしていきます。
▼をご覧ください。
OSの設定管理をGitで行う / Rocky Linux9.4 on さくらのVPSroot宛のメールを転送
root宛のメールの送信先を変更します。
vi /etc/aliases
root: sample@example.com
newaliases
bash: newaliases: command not found になった場合は、MTAが無いと思います。
▼で「無い」ことを確認してみます。
alternatives --display mta
newaliases して有効化するにはメールサーバのインストールが必要です。
▼をご覧ください。
Postfixインストール後は、newaliases できるようになってます。
newaliases
終わりに
今回はここまでです。
まだ最低限の設定が終わったばかりです。
ここからは「サーバの使用目的」によって必要なものも変わってくると思います。