LoginSignup
7
7

More than 5 years have passed since last update.

postfixにsaslでリモートから認証できるようにするための最低限の設定

Last updated at Posted at 2014-02-08

目的

postfixにリモートホストからメールを送信できるようにしたいが、最低限の認証はかけておきたい

前提

  • ローカルホストからメール送信できる設定までは完了している
  • ここではdebianを想定している
  • postfixとsasl2_bin はインストール済み

手順

1. /etc/postfix/main.cf を編集

以下を追加

smtpd_sasl_auth_enabled = yes

2. /etc/postfix/sasl/smtpd.conf を作成

以下の設定でpostfix自身がsasldbを見るようになる

pwcheck_method: auxprop

3. sasldb2をつくる

debianでいれたpostfixはchrootが有効になっているため、/var/spool/postfix以下にsasldb2は設置する必要がある

$ sudo saslpasswd2 -f /var/spool/postfix/etc/sasldb2 -c -u `/usr/sbin/postconf -h myhostname` <username>
$ sudo chgrp postfix /var/spool/postfix/etc/sasldb2

4. restart postfix

sudo /etc/init.d/postfix restart

5. 確認

telnetでsmtpの認証を確認する。

まずsaslpasswd2で入力したパスワードとユーザ名からbase64エンコードした認証用文字列をつくる必要がある
以下はユーザ名test, パスワード testpassとした場合のもの

$ perl -MMIME::Base64 -e 'printf encode_base64("test\0test\0testpass")'
dGVzdAB0ZXN0AHRlc3RwYXNz
$ telnet localhost 25
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
220 debian.local ESMTP Postfix (Debian/GNU)
AUTH PLAIN dGVzdAB0ZXN0AHRlc3RwYXNz
235 2.7.0 Authentication successful

successfulとでればsasl認証はOK

備考

  • mynetworksは適切に設定しておくように
  • このままだと暗号化はされないので、basic認証と同程度のセキュリティであることに注意
7
7
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
7