PostfixでSMTP認証させてる. 今までは, MySQLだったんだけど,
Cyrus-saslのアップデートがあったので, PostgreSQLにした.
が....Cyrus-saslをpgsqlのオプションでコンパイルしたら, メールが送れなくなった.
認証に失敗してる. ということで, Postfixも再コンパイル.
でもだめ. あー, パスワードファイルがダメなんだね.
という事で, パスワードファイルsasldb2を削除して, saslpasswd2で作り直し.
何とかメールは送れるようになった.
が, /var/log/messagesが気持ち悪い事になってる.
Jul 9 00:xx:xx zzzzzz postfix/smtpd[3374]: SQL engine 'mysql' not supported
Jul 9 00:xx:xx zzzzzz postfix/smtpd[3374]: auxpropfunc error no mechanism available
Jul 9 00:xx:xx zzzzzz postfix/smtpd[3374]: _sasl_plugin_load failed on sasl_auxprop_plug_init for plugin: sql
何が原因? ググってみると, 情報発見.
http://www.irbs.net/internet/postfix/0312/0676.html
なになに, smtpd.confでsql_engine変数にpgsqlを指定してやればよいのね.
よっしゃー.
と思ったら, こんなこと言い出した.
Jul 9 00:xx:xx zzzzzz postfix/smtpd[3205]: sql_select option missing
Jul 9 00:xx:xx zzzzzz postfix/smtpd[3205]: auxpropfunc error no mechanism available
Jul 9 00:xx:xx zzzzzz postfix/smtpd[3205]: _sasl_plugin_load failed on sasl_auxprop_plug_init for plugin: sql
さらに, ググる. こんなの見つけました.
http://www.mail-archive.com/info-cyrus@lists.andrew.cmu.edu/msg18452.html
このページでは, imapで, cyrus+mysqlがうまく使えないわけね.
ちょっと違うけど, 参考になるはず.
ここでは, /etc/imapd.confを下記のようにしている.
sasl_pwcheck_method: saslauthd
sasl_mech_list: plain
sasl_sql_engine: mysql
sasl_sql_hostnames: localhost
sasl_sql_user: mail
sasl_sql_passwd: secret
sasl_sql_database: mail
sasl_sql_select: select password from accountuser where username = '%u'
と言う事は, smtpd.confに
sql_select: select password from accountuser where username = '%u'
を加えれば, いいのか????
Jul 9 00:xx:xx zzzzzz postfix/smtpd[3528]: sql auxprop plugin using pgsql engine
キタ━━━━━━(゜∀゜)━━━━━━ !!
ということで, 現在のsmtpd.confはこうなってます.
pwcheck_method: auxprop
auxprop_plugin: sasldb
mech_list: CRAM-MD5
sql_engine: pgsql
sql_select: select password from accountuser where username = '%u'
ほんとは, pwcheck_method: saslauthd したいんだけど,
mech_list: login plain しか使えないらしいのであきらめてる.
ここは, SMTP over SSLしかないか?
0 件のコメント:
新しいコメントは書き込めません。