【2026年5月26日時点の情報です】
AlmaLinux 9をインストールしたあと、自宅サーバーとして使うために最初に行った設定です。インストールの手順は、AlmaLinux 9 インストールの記事で紹介しています。
設定はすべてrootで行います。インストールのときに作った管理者ユーザーでログインし、「su -」でrootに切り替えてから作業します。
[user@almalinux ~]$ su -
パスワード: ← rootのパスワード
[root@almalinux ~]#1. 日本語化
日本語の言語パックを入れて、メッセージや日付の表示を日本語にします。
[root@almalinux ~]# dnf install -y glibc-langpack-ja
[root@almalinux ~]# localectl set-locale LANG=ja_JP.utf8
[root@almalinux ~]# localectl ※日本語のロケールになったか確認
System Locale: LANG=ja_JP.utf8
VC Keymap: jp
X11 Layout: jp一度ログアウトして、もう一度ログインすると、日本語の表示に切り替わります。
※切り替える前
[root@almalinux ~]# ll
total 4
-rw-------. 1 root root 1095 May 26 09:01 anaconda-ks.cfg
※ログインし直したあと
[root@almalinux ~]# ll
合計 4
-rw-------. 1 root root 1095 5月 26 09:01 anaconda-ks.cfg2. rootに切り替えられるユーザーを管理者だけにする
初期設定では、rootのパスワードを知っていれば、どのユーザーでもsuでrootになれます。これを、管理者のグループ(wheel)に入っているユーザーだけに制限します。
[root@almalinux ~]# vi /etc/pam.d/su
次の行の先頭の # を外す
#auth required pam_wheel.so use_uid
↓
auth required pam_wheel.so use_uidインストールのときに「このユーザーを管理者にする」にチェックを入れたユーザーは、すでにwheelグループに入っています。入っているかは、次のコマンドで確かめられます(userは自分のユーザー名)。この設定の前に確かめておかないと、rootに切り替えられなくなるので注意してください。
[root@almalinux ~]# id user
… グループ=1000(user),10(wheel) ← wheel があればOK3. パッケージの更新と自動アップデート
パッケージを最新にしてから、dnf-automaticで更新を自動でインストールするようにします。セキュリティの修正を自動で取り込めるので、自宅サーバーでは入れておきたい設定です。
[root@almalinux ~]# dnf -y update ※すべてのパッケージを最新にする
[root@almalinux ~]# dnf -y install dnf-automatic
[root@almalinux ~]# vi /etc/dnf/automatic.conf
※更新のダウンロードとインストールを自動で行う
apply_updates = no
↓
apply_updates = yes
[root@almalinux ~]# systemctl enable --now dnf-automatic-install.timer ※自動更新を有効にして、すぐに開始
[root@almalinux ~]# dnf -y groupinstall base "Development tools" ※ベースと開発ツールのパッケージ群を入れるカーネルの更新は、再起動しないと反映されません。私は月に一度程度、再起動しています。
4. root宛てのメールをGmailに転送する
サーバーでは、エラーやセキュリティチェックの結果が、root宛てのメールで届きます。このあと入れるTripwireやrkHunterの通知もroot宛てに届くので、ふだん使っているGmailに転送して、スマホでも確認できるようにします。
Gmailを経由して送るには、事前にGoogleアカウントで「アプリパスワード」を作っておく必要があります(2段階認証を有効にしたアカウントで作れます)。アプリパスワードは、ふだんのGmailのパスワードとは別の、16文字のパスワードです。
[root@almalinux ~]# dnf -y install postfix cyrus-sasl-plain ※Postfixと、Gmailの認証に必要なパッケージを入れる
[root@almalinux ~]# systemctl enable --now postfix ※Postfixを起動して、自動起動も設定
[root@almalinux ~]# vi /etc/postfix/main.cf ※Postfixの設定ファイルを編集
最後の行に次を追加
relayhost = [smtp.gmail.com]:587
smtp_tls_security_level = encrypt
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options = noanonymous
smtp_sasl_tls_security_options = noanonymous
smtp_sasl_mechanism_filter = plain
[root@almalinux ~]# echo "[smtp.gmail.com]:587 xxxxx@gmail.com:アプリパスワード" > /etc/postfix/sasl_passwd ※Gmailのアドレスとアプリパスワードを設定
[root@almalinux ~]# chmod 600 /etc/postfix/sasl_passwd ※rootだけが読めるようにする
[root@almalinux ~]# postmap /etc/postfix/sasl_passwd ※Postfixが読める形式に変換
[root@almalinux ~]# systemctl reload postfix ※設定を反映
[root@almalinux ~]# dnf -y install s-nail ※mailコマンドを使えるようにする
[root@almalinux ~]# sed -i '/^root:/d' /etc/aliases ※今のroot宛ての転送設定を削除
[root@almalinux ~]# echo "root: xxxxx@gmail.com" >> /etc/aliases ※root宛てのメールをGmailに転送
[root@almalinux ~]# newaliases ※転送設定を反映
[root@almalinux ~]# echo test | mail root ※root宛てにテストメールを送り、Gmailに届くか確認届かないときは、「tail /var/log/maillog」でエラーを確かめます。アプリパスワードの入力間違いや、cyrus-sasl-plainが入っていないことがよくある原因です。
5. SELinuxを無効にする
SELinuxは、プログラムが許可されたことだけをできるようにする、Linuxのセキュリティの仕組みです。安全性は高まりますが、ApacheやKVMなどを設定するたびにSELinuxの設定も必要になり、初心者にはつまずきやすいので、このサーバーでは無効にしています。無効にすると、そのぶん安全性は下がるので、更新や改ざんの検知(Tripwire、rkHunter)などで補っています。
[root@almalinux ~]# setenforce 0 ※SELinuxの効果を一時的に止める
[root@almalinux ~]# getenforce ※SELinuxの状態を確認
Permissive ← 「警告だけで止めない」状態
[root@almalinux ~]# grubby --update-kernel ALL --args selinux=0 ※次に起動したときから、SELinuxを完全に無効にする再起動したあと、getenforceで「Disabled」と表示されれば、無効になっています。
6. ファイアウォールを止める
このサーバーでは、ファイアウォール(firewalld)を止めています。
- 自宅の回線(NURO光のMAP-E方式)ではルーターでポートを開けていないので、インターネットからサーバーに直接届く接続はありません。
- ブログへのアクセスは、すべてCloudflare Tunnelを通して届きます。不正なアクセスのブロックなどは、Cloudflare側で設定しています。
ただし、ファイアウォールを止めると、家の中のネットワーク(LAN)からは、サーバーのどのポートにもつながる状態になります。ルーターでポート開放をしている環境や、LANに知らない機器がつながる環境では、ファイアウォールは止めずに使ってください。
[root@almalinux ~]# systemctl disable --now firewalld ※ファイアウォールを止めて、自動起動もしないようにするCloudflare Tunnelで公開している仕組みは、自宅ネットワークの記事で紹介しています。
まとめ
AlmaLinux 9をインストールしたあとに、次の設定を行いました。
| 設定 | 目的 |
|---|---|
| 日本語化 | メッセージや日付を日本語で表示する |
| suの制限 | rootになれるユーザーを管理者だけにする |
| 自動アップデート | セキュリティの修正を自動で取り込む |
| root宛てメールの転送 | サーバーからの通知をGmailで受け取る |
| SELinuxの無効化 | このあとの設定でつまずかないようにする |
| ファイアウォールを止める | 公開はCloudflare Tunnelだけなので、サーバー側では使わない |
次は、KVMで仮想環境を作ります。手順はKVMの記事で紹介しています。



コメント