Linuxサーバー構築標準教科書
こちらの参考書を使用してDNSサーバを構築しました。記事はWebサーバ、DNSサーバ、メールサーバと3回に分けて書いていき、今回はメールサーバとなります。
ホスト名やIPアドレス、設定ファイルの値などについては上記の参考書に記載してあるのでそちらでご確認ください。
1. 概要
前回構築したDNSサーバの「host1」「host2」にそれぞれPostfixとDovecotをインストールして、メールを送受信できるか確認していきます。
| ドメイン名 | ホスト名 | IPアドレス |
|---|---|---|
| example1.jp. | host1.example1.jp. | 192.168.56.101 |
| example2.jp. | host2.example2.jp. | 192.168.56.102 |
各環境情報
| 項目 | 内容 |
|---|---|
| OS | AlmaLinux 9.3 |
| 仮想環境 | VirtualBox |
| ネットワーク構成 | NAT、ホストオンリーアダプター |
2. Postfixの設定
postfixの設定を行っていきます
パッケージのインストール
postfix,Cyrus-SASL,s-nail,dovecot,thunderbirdをインストールします
dnf install postfix cyrus -sasl s-nail dovecot thunderbird
2-2 /etc/postfix/main.cfの設定
host1を以下の様に設定していきます。host2は「mail.example2.jp」のように適宜変えていきます。host1、host2共に同じ作業を行います。
vi /etc/postfix/main.cf
Postfix 設定内容(main.cf)
| 項目 | 設定値 |
|---|---|
| myhostname | mail.example1.jp |
| mydomain | example1.jp |
| inet_interfaces | localhost, 192.168.56.101 |
| mydestination | $mydomain |
| smtpd_sasl_auth_enable | yes |
| smtpd_recipient_restrictions | permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination |
2-2 書式のチェック
/etc/postfix/main.cfにミスがないかチェックします
postfix check
ミスがあったので修正して再確認しました
書式が正しかったので何も表示されませんでした。
(2箇所ミスがあり、後にエラーとなりました。)
2-3 Postfixの起動
サービスの起動、自動起動、ファイアウォールの設定をします
systemctl start postfix
systemctl enable postfix
firewall -cmd --add -service=smtp --zone=public --permanent
firewall -cmd --reload
2-4 SMTP認証の設定
SMTP認証の設定はすでにmain.cfで設定してあるのでサービスの起動を行います
systemctl start saslauthd
systemctl enable saslauthd
2-5 アカウントの作成
メールの送受信をするためにアカウントを作成します
useradd user1
passwd user1
2-6 mailコマンドでメール送受信のテスト
mailコマンドを使いメールを送受信できるかテストします
host1のuser1からhost2のuser2へメールを送ります
[ user1@host1 ~]$ mail user2@example2 .jp
Subject: Test
TestTestTest
^D
しかし2-1で行った設定をミスっていたので上手く通信できませんでした。
以下、通信できるまでのスクショを貼っていきます
ChatGPTに聞いてみると「Relay access denied」と出ているのでmain.cfのmydestinationを確認した方が良いという回答がでた。
main.cfを確認すると「mydestination = $myhostname」となっていた
⇒自ホスト名しかメールを受信できないことになっている

3. Dovecotの設定
Dovecotの設定を行います
3-1 /etc/dovecot/conf.d/10-mail.confの設定
mbox形式のメールボックスを指定します
mail_location = mbox :~/ mail:INBOX =/ var/mail /%u
mail_privileged_group = mail
mail_access_groups = mail
3-2 /etc/dovecot/conf.d/10-auth.conf
平文での認証で設定していきます
disable_plaintext_auth = no
3-3 /etc/dovecot/conf.d/10-ssl.conf
今回はSSL/TLS暗号化を使用しないため停止します
# plain imap and pop3 are still allowed for local connections
ssl = no
3-4 サービスの起動、自動起動、ファイアウォールの設定
サービスを起動させます
systemctl start dovecot
systemctl enable dovecot
firewall -cmd --add -service=imap --zone=public --permanent
firewall -cmd --reload
4.Thunderbirdの設定
メールクライアントとしてThunderbirdを利用します。以下GUIで設定を行っていきます。
4-1 ユーザを切り替えてログイン
4-2 Thunderbirdを起動
Thunderbirdを起動、設定していきます
表の項目を入力していきます
アカウント情報
| 設定項目 | 設定値 |
|---|---|
| あなたの名前 | user1 |
| メールアドレス | user1@example1.jp |
| パスワード | userpass |
| パスワードを記憶する | チェックしておく |
受信サーバー設定(IMAP)
| 設定項目 | 設定値 |
|---|---|
| プロトコル | IMAP |
| ホスト名 | mail.example1.jp |
| ポート番号 | 143 |
| 接続の保護 | なし |
| 認証方式 | 通常のパスワード認証 |
| ユーザ名 | user1 |
送信サーバー設定(SMTP)
| 設定項目 | 設定値 |
|---|---|
| ホスト名 | mail.example1.jp |
| ポート番号 | 25 |
| 接続の保護 | なし |
| 認証方式 | 通常のパスワード認証 |
| ユーザ名 | user1 |
4-3 メールの送信
メールを送信できるか確認します。user1からuser2へメールを送信します
感想
DNSと同様に参考書どおりに行っただけですが、メールサーバを構築できてよかったです。また色々と自分の実力不足を感じたため、今一度Linuxについて深く考えたいと思うようになりました。
しばらくはCCNAの勉強に専念しますが、Linuxの勉強も並行して少しずつやっていこうと思います。






































