NO IMAGE

CentOS7にPostfixを導入

CentOS7にメールサーバーPostfixをインストールします。

■Postfixをインストール

# yum -y install postfix

ステータスを確認

# systemctl status postfix.service
● postfix.service – Postfix Mail Transport Agent
Loaded: loaded (/usr/lib/systemd/system/postfix.service; enabled; vendor preset: disabled)
Active: inactive (dead)

まだ起動していないので、inactive (dead)です。

自動起動の確認。

# systemctl list-unit-files | grep postfix
postfix.service                enabled

有効です。

Postfixのバージョンを表示するには、以下のコマンドを実行します。

# postconf | grep “mail_version =”
mail_version = 2.10.1

■Maildir形式で使用の為、ユーザ追加でディレクトリが作成されるよう/etc/skelに雛型を用意
CentOS にユーザ登録した際に、ホームディレクトリ/ユーザ名/ 以下に作成されるディレクトリは、/etc/skel 以下に存在するディレクトリを元にするらしい。

# ls -la /etc/skel
合計 24
drwxr-xr-x. 2 root root 62 12月 15 17:03 .
drwxr-xr-x. 82 root root 8192 12月 19 18:56 ..
-rw-r–r–. 1 root root 18 12月 7 08:19 .bash_logout
-rw-r–r–. 1 root root 193 12月 7 08:19 .bash_profile
-rw-r–r–. 1 root root 231 12月 7 08:19 .bashrc
#

従って、ここに Maildir ディレクトリを作成しておくことで、ユーザ追加時に自動的に、ユーザのホームにも Maildir を作成させるようにします。

# mkdir -p /etc/skel/Maildir/{new,cur,tmp}
# chmod -R 700 /etc/skel/Maildir
# ls -la /etc/skel
合計 24
drwxr-xr-x. 3 root root 77 12月 19 19:26 .
drwxr-xr-x. 82 root root 8192 12月 19 18:56 ..
-rw-r–r–. 1 root root 18 12月 7 08:19 .bash_logout
-rw-r–r–. 1 root root 193 12月 7 08:19 .bash_profile
-rw-r–r–. 1 root root 231 12月 7 08:19 .bashrc
drwx—— 5 root root 39 12月 19 19:26 Maildir
# ls -la /etc/skel/Maildir
合計 0
drwx—— 5 root root 39 12月 19 19:26 .
drwxr-xr-x. 3 root root 77 12月 19 19:26 ..
drwx—— 2 root root 6 12月 19 19:26 cur
drwx—— 2 root root 6 12月 19 19:26 new
drwx—— 2 root root 6 12月 19 19:26 tmp

試しに、ユーザinfoを登録してみましょう。

# useradd info

パスワードを設定。

# passwd info
ユーザー info のパスワードを変更。
新しいパスワード:
新しいパスワードを再入力してください:
passwd: 全ての認証トークンが正しく更新できました。

ユーザ info のホームディレクトリを表示してみます。

# ls -la /home/
合計 0
drwxr-xr-x. 4 root root 34 12月 19 20:17 .
dr-xr-xr-x. 17 root root 262 12月 17 21:57 ..
drwx—— 3 info info 77 12月 19 20:17 info
drwx——. 2 satoh163 satoh163 83 12月 15 17:58 satoh163
# ls -la /home/info
合計 12
drwx—— 3 info info 77 12月 19 20:17 .
drwxr-xr-x. 4 root root 34 12月 19 20:17 ..
-rw-r–r– 1 info info 18 12月 7 08:19 .bash_logout
-rw-r–r– 1 info info 193 12月 7 08:19 .bash_profile
-rw-r–r– 1 info info 231 12月 7 08:19 .bashrc
drwx—— 5 info info 39 12月 19 19:26 Maildir
#

↑自動的に Maildir ディレクトリが作成されています。

また、/var/spool/mail ディレクトリも確認してみます。

# ls -la /var/spool/mail
合計 0
drwxrwxr-x. 2 root mail 34 12月 19 20:17 .
drwxr-xr-x. 8 root root 87 12月 15 16:52 ..
-rw-rw—- 1 info mail 0 12月 19 20:17 info
-rw-rw—-. 1 satoh163 mail 0 12月 15 16:54 satoh163
#

↑こちら(Mailbox形式)にも info が作成されています。

メールボックスとしてのMailbox形式とMaildir形式、どちらを使うかは、Postfix、Dovecot の設定により決まります。

■Postfix の設定ファイルは、/etc/postfix/main.cf です。

# nano -K /etc/postfix/main.cf

メールボックスの形式は、home_mailbox パラメータで設定します。今回は、先頭のコメント(#)を削除し、Maildir形式を有効にします。

#home_mailbox = Mailbox
home_mailbox = Maildir/

Mailbox形式とした場合は、メールスプールディレクトリを指定します。
今回は、Maildir形式を選択したので、以下のパラメータはコメントアウトのままとします。

#mail_spool_directory = /var/mail
#mail_spool_directory = /var/spool/mail

まだ、起動していないので、Postfixを起動します。

# systemctl start postfix.service

既に起動済みで、main.cf 等の設定変更のみ反映させたい場合は、以下のコマンドを実行します。

# systemctl reload postfix.service

動作確認をしたいところですが、もう少し設定が必要なので、本日はここまで。