何度やっても同じ

ただの日記

外部にメール送信できるようPostfix設定

saslauthd設定

/etc/sysconfig/saslauthd

/etc/shadow を利用した認証方法に変更

# MECH=pam
MECH=shadow

再起動してOSユーザ名とパスを使って動作確認。

$ service saslauthd restart
$ testsaslauthd -u user -p pass
0: OK "Success."

postfix設定

/etc/postfix/master.cf

submissionサービスをsasl認証つきで利用

submission inet n       -       n       -       -       smtpd
#  -o smtpd_tls_security_level=encrypt
  -o smtpd_sasl_auth_enable=yes
  -o smtpd_client_restrictions=permit_sasl_authenticated,reject
#  -o milter_macro_daemon_name=ORIGINATING

/etc/postfix/main.cf

sasl認証済のユーザは任意の宛先へ送信可能とする

http://www.aconus.com/~oyaji/bbs/wforum.cgi?mode=allread&pastlog=0012&no=7547&page=120&act=past

smtpd_recipient_restrictions = permit_mynetworks,permit_sasl_authenticated,reject_unauth_destination

さいきどう。

$ service postfix restart
Shutting down postfix:                                     [  OK  ]
Starting postfix:                                          [  OK  ]

送信確認

事前にユーザ名とパスワードをbase64化しておく。

# echoは末尾に改行をつけて出力する。-n は改行をつけないオプション
$ echo -n user | base64
USERBASE64=
$ echo -n pass | base64
PASSBASE64=

プロトコル直利用でメール送信。

$ telnet localhost 587
EHLO example.com
250-example.com
250-PIPELINING
250-SIZE 10240000
250-VRFY
250-ETRN
250-AUTH LOGIN PLAIN
250-ENHANCEDSTATUSCODES
250-8BITMIME
250 DSN

AUTH LOGIN
334 VXNlcm5hbWU6
USERBASE64=
334 UGFzc3dvcmQ6
PASSBASE64=
235 2.7.0 Authentication successful

MAIL FROM: user@example.com
250 2.1.0 Ok

RCPT TO: mymailaddress@x.com
250 2.1.5 Ok

DATA
354 End data with <CR><LF>.<CR><LF>
hello! hello!

.

TLS設定

あとでやる。

support.plesk.com