さくらVPSにAlmaLinux9.4 をインストールして最初にすること

アフィリエイト広告を利用しています

このページの内容が役に立ったら X (旧twitter) でフォローして頂けると励みになります
挨拶や報告は無しで大丈夫です

AlmaLinux9.4をさくらのVPS 2G で契約しました。

ここでは、インストール直後に速攻でやっておいたほうが良いことを記します。

さくらのVPSでは、「サーバー作成直後に設定しておくべき初期セキュリティ設定」という記事が公開されていますので、こちらも合わせてご覧ください。

なお本番環境で利用される場合はここにある内容だけを鵜呑みにせずセキュリティ専門家に相談されることをお勧めします。

環境

実施日2024-06-17
サーバさくらのVPS 2G
OSAlmaLinux9.4

VPSを起動する

申込が完了したら、コンパネにログインします。

契約直後は「停止中」です。
下図のように「電源操作」から「起動する」をクリックします。

起動したら、ターミナルを使って操作していきます。
ちなみに「コンソール」から「VNCコンソール」を使ってブラウザ上で操作することもできます。やらかしてしまった時の緊急時にここから操作できることを覚えておくと良いです。

公式のマニュアル

さくらインターネットに詳しいマニュアルが用意されていますので、まだご覧になってない場合は先に一読しておくことをおすすめします。

本ページでやっていく内容と被る部分があります。

さくらVPSのマニュアル

SSHログイン

VPS契約時に設定したユーザーとパスワードで接続します。

接続先のIPアドレスはコントロールパネルに出ています。

デフォルトのポートは 22 です。

申込時に鍵登録を行っている場合、パスワードなしでログインできます。

rootユーザーのパスワードを設定

最初はrootユーザーのパスワードは設定されていないので、設定します。
契約時に作成した「alma」ユーザーで行います。

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 で行う手順とします。

AlmaLinux のバージョンを確認する

cat /etc/redhat-release
AlmaLinux release 9.2 (Turquoise Kodkod)

AlmaLinux公式を確認すると現時点(2024-06-17)での最新は、9.4 です。
バージョンが気になるところですがこのまま進めます

DNFの更新 / 9.2 -> 9.4

まずはこの時点での最新にしておきます。

dnf upgrade

dnf update は dnf upgrade のエイリアスです。
yumの時代は違いに意味がありました。

改めてバージョンを確認します。

cat /etc/redhat-release
AlmaLinux release 9.4 (Seafoam Ocelot)

9.4 になりました。

SELinuxの有効無効の確認

本記事では説明の都合でSELinuxは無効として進めていきます。

確認します。

getenforce
Disabled

無効になっています。
詳しくは SELinuxについて / AlmaLinux9.4 on さくらのVPS もご覧ください。

ユーザーの追加

作業用のユーザーを作成します。
root権限での作業は基本的に作業用ユーザーから行うようにします。

もとからある alma ユーザーは最終的に削除し、1から自分が設定したユーザーを残すことにします。

下記のページをご覧ください。

管理用ユーザーを追加 / AlmaLinux9.4 on さくらのVPS

上記のページにも含まれますが、wheelユーザーも確認しておきます。

suを制限するwheelユーザー / AlmaLinux9.4 on さくらのVPS

SSHの設定変更

ログイン制限の設定がひととおり完了して、接続確認できるまでは作業中のターミナルは絶対に閉じないでください。

閉じてしまって、ミスってた場合はサーバ会社提供のコンソールとかからログインできる場合があります。(さくらのVPS の場合はコンパネから)

ざっくり書くと次のような設定を行います。

  • root ユーザーはSSHから直接ログイン禁止
  • 公開鍵認証を有効にする
  • 公開鍵ファイルの場所を設定
  • パスワードによるログインを禁止
    ※例外で許可する方法もあり
  • 空のパスワードを持つユーザーのログイン禁止

下記のページをご覧ください。

SSHの設定変更 / AlmaLinux9.4 on さくらのVPS

SSHポートの変更

ログイン制限の設定がひととおり完了して、接続確認できるまでは作業中のターミナルは絶対に閉じないでください。

SSHのポートをデフォルトの 22 から異なる数字に変更します。

下記のページをご覧ください。

SSHポートの変更 / AlmaLinux9.4 on さくらのVPS

SSHのIP制限

パケットフィルタ

さくらのVPSを使用している場合は、コントロールパネルのパケットフィルタ―設定から行えます。

firewalld

本記事の手順通りに進んでいるとファイアーウォールの設定はまだ行っておらず、起動もしていないはずです。もし既に行っている場合は下記をご覧ください。

AlmaLinuxでIPアドレス制限を行う場合は、firewalld で設定します。

ファイアーウォールを設定 / AlmaLinux9.4 on さくらのVPS

ファイアーウォールの設定

AlmaLinuxにファイアーウォールの設定を行っていきます。

「さくらのVPSにパケットフィルターがあるのだから不要じゃない?」
という意見はごもっともだと思います。

「する / しない」はご自身の状況も踏まえて決めると良いと思います。

下記のページをご覧ください。

ファイアーウォールを設定 / AlmaLinux9.4 on さくらのVPS

Swap メモリを設定する / AlmaLinux9.4 on さくらのVPS

最近のRedHat系Linuxでは、デフォルトでSwapメモリを設定しないようになったようです。

ギリギリのメモリプランを契約されている場合は謎のエラーに見舞われる可能性があります。
原因はメモリ不足なのですがメモリ不足であることに気がつきにくいのが問題をややこしくしています。

ということでSwapメモリを設定しておきます。

Swap メモリを設定する / AlmaLinux9.4 on さくらのVPS

dnfの準備

アップデート

インストール直後にやっているはずなので確認だけです。

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 ・・・

時刻合わせの自動化

▼をご覧ください。

時刻合わせにChronyをインストール / AlmaLinux9.4 on さくらのVPS

DNFの自動アップデート

▼をご覧ください。

DNF の自動アップデート / AlmaLinux9.4 on さくらのVPS

終わりに

今回はここまでです。

まだ最低限の設定が終わったばかりです。
ここからは「サーバの使用目的」によって必要なものも変わってくると思います。