CentOS 7 のサポートが2024年7月で終了するということなので、さくらVPSで運用している kobalab.net のOSを AlmaLinux 9 に乗り換えます。ついでにVPSも交換することにしました。メモリ1GのモデルでSSDは100Gに増設します。
も参考に設定していきます。
ネットから利用申請すると即座に VPSコントロールパネル からも見えるようになるので、早速起動します。
ユーザ alma と申請時に指定したパスワードでログインします。 申請時に公開鍵暗号によるログインを指定していれば、ssh で(パスワードなしに)リモートログインすることもできます。
ログインの際に使用したユーザ alma ですが、root の別名という訳ではなく「sudo 可能な作業用ユーザ」です。 なのでこのまま作業を開始してもいいのですが、私の場合、長年ユーザ koba で作業していたので、このユーザを作成します。*1
$ sudo useradd koba
$ sudo passwd koba
$ sudo usermod -G wheel koba
作成したユーザ koba でログインし直し、ssh の公開鍵を登録します。
id_ed25519.pub
に公開鍵を保存しているとすると以下のような操作となります。
$ mkdir ~/.ssh
$ cat id_ed25519.pub >> ~/.ssh/authorized_keys
$ chmod -R go-wrx ~/.ssh
$ rm id_ed25519.pub
ssh でのパスワードによるログインを禁止します。
/etc/ssh/sshd_config
の以下の行が有効になるよう修正します。
PasswordAuthentication no
sshd を再起動します。
$ sudo systemctl restart sshd
これでもはや初期ユーザの alma は不要となったので、ログインを禁止します。
$ sudo passwd -l alma
ユーザごと削除してもよいでしょう。
$ sudo userdel -r alma
visudo コマンドで設定を編集し、以下の行の alma を koba に置き換えます。 これで alma のようにパスワードなしで sudo が使えるようになります。
alma ALL=(ALL) NOPASSWD: ALL
さくらVPSの提供する「パケットフィルター」は使わず、OSのファイアウォール機能を使います。 まず、firewalld を常駐させます。
$ sudo systemctl enable firewalld
$ sudo systemctl restart firewalld
現在のファイアウォールの設定を確認します。
$ sudo firewall-cmd --list-all
public (active)
target: default
icmp-block-inversion: no
interfaces: ens3
sources:
services: cockpit dhcpv6-client ssh
ports:
protocols:
forward: yes
masquerade: no
forward-ports:
source-ports:
icmp-blocks:
rich rules:
ネットワークインタフェース名が eth0 → ens3 に変更されたようです。 cockpit*2、dhcpv6-client、ssh のためのポートが開けられています。
さくらVPSの提供する AlmaLinux 9 ではswap領域は確保しておらず、利用者が自分の必要に応じた容量で確保する必要があります。*3 swapfileの追加 を参考に設定を行います。
swap領域がとられていないことを確認します。
$ sudo swapon --show
$ free -h
total used free shared buff/cache available
Mem: 963Mi 273Mi 670Mi 5.0Mi 159Mi 690Mi
Swap: 0B 0B 0B
swapファイルを作成します。 容量は 4G (= 4,096 M)としました。
$ sudo dd if=/dev/zero of=/swapfile bs=1M count=4096
$ sudo chmod go-wrx /swapfile
$ sudo mkswap /swapfile
swap領域として組み込みます。
$ sudo swapon /swapfile
$ free -h
total used free shared buff/cache available
Mem: 963Mi 281Mi 58Mi 5.0Mi 775Mi 681Mi
Swap: 4.0Gi 0B 4.0Gi
再起動時も /swapfile
を有効とするために、/etc/fstab
に以下の1行を追加します。
/swapfile none swap sw 0 0
再起動し、swap領域が有効なことを確認しておきましょう。
EPEL からもパッケージをインストールできるようにしておきます。 パッケージマネージャは yum の後継の dnf を使ってみます。
$ sudo dnf install -y epel-release
CentOSのときと比べてコマンド補完機能が劣っているので、入力補完のパッケージをインストールします。
$ sudo dnf install -y bash-completion
運用開始後は機会がなくなるので、パッケージを全て最新化しておきます*4。
$ sudo dnf update -y
終わったら再起動できることを確認しておきましょう。