CGI(perl)サーバーからメール送信プログラムを作成して飛ばす時のpostfixの設定
アパッチでサーバー構築して自鯖でCGI作成するときのメール送信設定
これをしないと、メール送信はできない。
これはMTAの設定なので送信だけです。
受信はできません。
Postfixの設定
# vi /etc/postfix/main.cf ← 設定ファイル編集
myhostname = server.xxxx.net ←ホスト名.ドメイン名を指定
mydomain = xxxx.net ← ドメイン名を指定
myorigin = $mydomain
inet_interfaces = all
mydestination = $myhostname, localhost.$mydomain $mydomain
# 550を指定し、存在しないユーザー宛てのメールを拒否し、即座にエラーメッセージを返すようします
unknown_local_recipient_reject_code = 550 ← コメントにする (# があれば削除)
#unknown_local_recipient_reject_code = 450 ← # をつけてコメントアウト
mynetworks = 192.168.0.0/24, 127.0.0.0/8 ← 内部ネットワークアドレスとローカルホストアドレスを指定
relay_domains = $mydestination
alias_maps = hash:/etc/postfix/aliases
alias_database = hash:/etc/postfix/aliases
home_mailbox = Maildir/ ← メールボックスをMaildir方式を指定
※ メールボックスと、メールに容量制限する場合以下の二項目を追記します
mailbox_size_limit = 30720000 ←メールボックスの容量制限(例 30Mb)
message_size_limit = 1024000 ←メールのサイズ容量制限(例 1Mb)
smtpd_banner = $myhostname ESMTP unknown ← メールサーバー名を隠す
※メールボックスをMaildir方式を使用するので以下の二項目をコメントアウト
#mail_spool_directory = /var/spool/mail
#mailbox_command = /some/where/procmail -a “$EXTENSION”
allow_percent_hack = yes
# /etc/rc.d/init.d/postfix restart ← 設定終了後に再起動
postfixの設定はこれで終了
ターミナルをたちあげてSUで下の作業を行うことでユーザーのメールディレクトリーができる
Maildir を自動作製する
/etc/skel/の中身のディレクトリがユーザーを追加した時に自動で作成されます
なので skel の中に Maildir フォルダを作成しておくといちいち、後からディレクトリを作ったり、アクセス権を
変更する手間が省かれます。
# mkdir -p /etc/skel/Maildir/{new,cur,tmp}
# chmod -R 700 /etc/skel/Maildir/ ← パーミッション変更