Linux で自宅サーバ [ Home Server Techncial ]

>>トップページに戻る

BBS 過去ログ No.0014に戻る

タイトル: Postfixでメール送信時に認証方法をSMTP-AUTHに限定する方法
記事No: 4362
投稿日: 2006/11/21(Tue) 13:18
投稿者: kozu
四苦八苦しながら、SMTP-AUTHを設定してみました。
しかし、SMTP-AUTHを利用していなくてもメールが送信出来ているようです。
Postfixでメール送信時にSMTP-AUTHで認証しなければメールの送信を行なえないように限定する事は可能でしょうか。
アドバイスをよろしくお願いします。

▽ログメッセージ

・SMTP-AUTHを使用してメール送信したときのログ
Nov 21 13:04:53 vine2 postfix/smtpd[981]: connect from unknown[172.16.100.201]
Nov 21 13:04:53 vine2 postfix/smtpd[981]: 3062C834015: client=unknown[172.16.100.201], sasl_method=CRAM-MD5, sasl_username=webmaster@ドメイン名
Nov 21 13:04:53 vine2 postfix/cleanup[982]: 3062C834015: message-id=<20061121130815.501402.webmaster@ドメイン名>
Nov 21 13:04:53 vine2 postfix/qmgr[964]: 3062C834015: from=<webmaster@ドメイン名>, size=521, nrcpt=1 (queue active)
Nov 21 13:04:53 vine2 postfix/smtpd[981]: disconnect from unknown[172.16.100.201]
Nov 21 13:04:53 vine2 postfix/local[983]: 3062C834015: to=<kozu@ドメイン名>, relay=local, delay=0, status=sent (mailbox)

・SMTP-AUTHを使用しないでメール送信したログ
Nov 21 13:14:43 vine2 postfix/smtpd[990]: connect from unknown[172.16.100.201]
Nov 21 13:14:43 vine2 postfix/smtpd[990]: D2233834015: client=unknown[172.16.100.201]
Nov 21 13:14:43 vine2 postfix/cleanup[992]: D2233834015: message-id=<20061121131806.612354.webmaster@ドメイン名>
Nov 21 13:14:43 vine2 postfix/qmgr[964]: D2233834015: from=<webmaster@ドメイン名>, size=520, nrcpt=1 (queue active)
Nov 21 13:14:43 vine2 postfix/smtpd[990]: disconnect from unknown[172.16.100.201]
Nov 21 13:14:43 vine2 postfix/local[995]: D2233834015: to=<kozu@ドメイン名>, relay=local, delay=0, status=sent (mailbox)


▽/usr/lib/sasl2/smtpd.conf

pwcheck_method: auxprop
auxprop_plugin: sasldb
mech_list: cram-md5 digest-md5 login


▽Postfixの設定

# SMTP の VRFY コマンドを使用不可にする
disable_vrfy_command = yes

# RFC822 で定義されている書式に適合しないメールアドレスが通知された場合、受信を拒否する
strict_rfc821_envelopes = yes

# この2つに「 no 」を指定すると何でもかんでも転送拒否してしまいます。
swap_bangpath = yes

# RBLの設定
#maps_rbl_domains = relays.ordb.org


# ソース・ルート形式で指定されている宛先メールアドレスを拒否しています。
allow_untrusted_routing = no

# Postfix サーバへの接続は、自サイトのネットワークからの接続を無条件で許可し、IP アドレスからホスト名への逆引きができな>
いホストの接続を拒否。
smtpd_client_restrictions = permit_mynetworks, reject_unknown_client, permit

# ホスト名が正しい書式でホスト名を通知してきたホストのみ接続を許可
smtpd_helo_restrictions = permit_mynetworks, reject_invalid_hostname, reject_unknown_client, permit

# ホスト名と転送先ドメインとして許可されているドメインが宛先メールアドレスに指定されているものを受信
# 「permit_sasl_authenticated」はSMTP認証( SMTP-AUTH )を通過したものを許可する設定
#smtpd_recipient_restrictions = permit_sasl_authenticated, permit_mynetworks, reject_sender_login_mismatch, check_relay_domains

smtpd_recipient_restrictions = permit_sasl_authenticated, reject_unauth_destination, permit_mynetworks, check_relay_domains

# 実際には存在しないドメイン名が送信元メールアドレスに使われているメールの受信を拒否


# 実際には存在しないドメイン名が送信元メールアドレスに使われているメールの受信を拒否
#smtpd_sender_restrictions = reject_unknown_sender_domain, reject_sender_login_mismatch


smtpd_sender_restrictions = reject_unknown_sender_domain

# SMTP の ETRN コマンドの使用をホスト名が不正(妖しげ)なホストには使用不可としている


# SMTP の ETRN コマンドの使用をホスト名が不正(妖しげ)なホストには使用不可としている
smtpd_etrn_restrictions = permit_mynetworks, reject_invalid_hostname

# SMTP AUTHの利用を設定
smtpd_sasl_auth_enable = yes

broken_sasl_auth_clients = yes

# SASL で認証する local domain
smtpd_sasl_local_domain = $mydomain

# 匿名での接続を拒否する。下記のようにnoplaintextと記入するとPLAINでの認証を拒否する。
smtpd_sasl_security_options = noanonymous,noplaintext
readme_directory = no
sample_directory = /etc/postfix
sendmail_path = /usr/sbin/sendmail
setgid_group = postdrop
manpage_directory = /usr/local/man
newaliases_path = /usr/bin/newaliases
mailq_path = /usr/bin/mailq

タイトル: Re: Postfixでメール送信時に認証方法をSMTP-AUTHに限定する方法
記事No: 4365
投稿日: 2006/12/02(Sat) 21:44
投稿者: ren
 こんばんは。
 ひょっとしたらサーバーのあるネットワーク内から送信しようとしているのでは?
 たしか、smtpd_recipient_restrictions での送信許可条件として permit_mynetworks を設定していると、mynetworks 内からの送信は無条件で可能になってしまうと思いました。ネットワーク外からのテストはされましたか? ネットワーク内においても SMTP 認証を使うのでしたら permit_mynetworks を外してもう一度テストしてみてください。

▲ページの最上部に戻る

Copyright© Home Server Technical. All Right Reserved.
webmaster@miloweb.net