百年老問題:Postfix + SASL

這個版面主要討論 debian 在 server 端的應用問題, server 種類繁多..舉凡 Web Server 、 File Server、 DHCP Server..等等。

版主: 阿信

百年老問題:Postfix + SASL

文章Tetralet » 週五 7月 11, 2003 12:50 pm

不眠不休搞了三天三夜...
看了 n 份文件,還是搞不定,
只好上來問了。

安裝環境:Debian Testing

安裝套件:
代碼: 選擇全部
postfix postfix-tls ipopd libsasl2-modules sasl2-bin


/etc/default/saslauthd 內容:
代碼: 選擇全部
# This needs to be uncommented before saslauthd will be run automatically
START=yes

# You must specify the authentication mechanisms you wish to use.
# This defaults to "pam" for PAM support, but may also include
# "shadow" or "sasldb", like this:
# MECHANISMS="pam shadow"

MECHANISMS="pam"


/etc/postfix/main.cf 內容:(節錄)
代碼: 選擇全部
smtpd_recipient_restrictions = permit_sasl_authenticated, permit_mynetworks, check_relay_domains

smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
broken_sasl_auth_clients = yes


/etc/postfix/master.cf 內容:(節錄)
代碼: 選擇全部
smtp      inet  n       -       n       -       -       smtpd -v
smtp      unix  -       -       n       -       -       smtp


/etc/postfix/sasl/smtpd.conf 內容:
代碼: 選擇全部
pwcheck_method: saslauthd


重新開機後也有下達:

chown -R postfix:postfix /var/run/saslauthd

但是還是無法使用 SMTP AUTH 寄信。

/var/log/mail.log 內容:(節錄)
代碼: 選擇全部
 > unknown[192.168.1.11]: 220 mail ESMTP Postfix (Debian/GNU)
 connect from unknown[192.168.1.11]
 watchdog_pat: 0x8064350
 < unknown[192.168.1.11]: EHLO tetralet.com.tw
 > unknown[192.168.1.11]: 250-mail
 > unknown[192.168.1.11]: 250-PIPELINING
 > unknown[192.168.1.11]: 250-SIZE 10240000
 > unknown[192.168.1.11]: 250-VRFY
 > unknown[192.168.1.11]: 250-ETRN
 > unknown[192.168.1.11]: 250-AUTH NTLM LOGIN PLAIN DIGEST-MD5 CRAM-MD5
 > unknown[192.168.1.11]: 250-AUTH=NTLM LOGIN PLAIN DIGEST-MD5 CRAM-MD5
 > unknown[192.168.1.11]: 250-XVERP
 > unknown[192.168.1.11]: 250 8BITMIME
 watchdog_pat: 0x8064350
 < unknown[192.168.1.11]: AUTH PLAIN AHXXXXXXXXXXXXXXXXXXXX8/
 smtpd_sasl_authenticate: sasl_method PLAIN, init_response AHXXXXXXXXXXXXXXXXXXXX8/
 smtpd_sasl_authenticate: decoded initial response
 warning: SASL authentication failure: Password verification failed
 warning: unknown[192.168.1.11]: SASL PLAIN authentication failed
 > unknown[192.168.1.11]: 535 Error: authentication failed
 watchdog_pat: 0x8064350


Mozilla Mail 的密碼認証視窗一直過不去...
有人可以指點一下嗎?
謝謝!
時間並不能治療我心中的疼痛
南方的春天說什麼也溫暖不了我冰冷的血

誦唱大復活咒文,今天的 Tetralet 又在唧唧喳喳了 重生!
Tetralet
俺是博士
俺是博士
 
文章: 3078
註冊時間: 週四 11月 28, 2002 3:02 pm

re:百年老問題:Postfix + SASL

文章阿信 » 週五 7月 11, 2003 4:06 pm

建議安裝stable的postfix + sasl1

設定上不變應該就正常了。
頭像
阿信
版面大總管
版面大總管
 
文章: 4756
註冊時間: 週二 9月 03, 2002 11:58 pm
來自: 台灣 - 嘉義

re:百年老問題:Postfix + SASL

文章Tetralet » 週五 7月 11, 2003 4:53 pm

如果是在 Woody 裡使用 pwcheck 的方法,
己經試過成功囉。

但是因為說明文件裡註明了 pwcheck 就要被 saslauthd 所取代,
所以我想試試看 saslauthd 說...


結果白了好多頭髮卻一直弄不起來... >_<


有趣的問題:

1. chown -R postfix:postfix /var/run/saslauthd 似乎每次重新開機都要執行。

2. Mail Log 裡的 AUTH PLAIN AHXXXXXXXXXXXXXXXXXXXX8/ 字串,
  和使用

    perl -MMIME::Base64 -e 'print encode_base64("username\0username\0password");'

  所計算結果並不一致?
時間並不能治療我心中的疼痛
南方的春天說什麼也溫暖不了我冰冷的血

誦唱大復活咒文,今天的 Tetralet 又在唧唧喳喳了 重生!
Tetralet
俺是博士
俺是博士
 
文章: 3078
註冊時間: 週四 11月 28, 2002 3:02 pm

re:百年老問題:Postfix + SASL

文章阿信 » 週五 7月 11, 2003 6:46 pm

to Tetralet

你所說得方式我都測試過了,也是不行,所以才會採取stable中的package呢。
頭像
阿信
版面大總管
版面大總管
 
文章: 4756
註冊時間: 週二 9月 03, 2002 11:58 pm
來自: 台灣 - 嘉義

re:百年老問題:Postfix + SASL

文章Tetralet » 週五 7月 11, 2003 7:23 pm

原來...

我還以為只有我弄不出來呢!

那麼我決定不去管它了,
等某年某月 Debian 出了下一版時再去傷腦筋好了。
時間並不能治療我心中的疼痛
南方的春天說什麼也溫暖不了我冰冷的血

誦唱大復活咒文,今天的 Tetralet 又在唧唧喳喳了 重生!
Tetralet
俺是博士
俺是博士
 
文章: 3078
註冊時間: 週四 11月 28, 2002 3:02 pm

re:百年老問題:Postfix + SASL

文章阿信 » 週五 7月 11, 2003 8:24 pm

Tetralet 寫:原來...

我還以為只有我弄不出來呢!

那麼我決定不去管它了,
等某年某月 Debian 出了下一版時再去傷腦筋好了。


:-) ...辛苦了...其實在debian server上得thread中,討論了許多跟你相同的問題,當初我測了好多次,strace了很多次,依然無法採用其他辦法:pam or pwchent...,只能用plain passwd,氣死我了...

但換了stable之後,問題竟然不見了,而我到mailing list上討論,依然沒有正確答案,所以...換個想法改用stable吧,真的比較"stable"窩... :mrgreen:

現在會server更挑剔了,除了stable之外,其他一律不敢用...好吧...我承認我是卒仔... :y2_09:
頭像
阿信
版面大總管
版面大總管
 
文章: 4756
註冊時間: 週二 9月 03, 2002 11:58 pm
來自: 台灣 - 嘉義

re:百年老問題:Postfix + SASL

文章andrechen » 週日 7月 27, 2003 3:25 am

試試看這個方法,我在三台主機上測試都沒有問題

Postfix 遠端寄信方法

一、使用 postfix+sasl2 認證(採用 pam 認證方式),只能用在 Debian 3.0 testing。

1.安裝 postfix-tls sasl2-bin libsasl2-digestmd5-plain libsasl2-modules-plain

2.設定saslauthd

編輯/etc/default/saslauthd

START=yes
MECHANISMS=pam

3.新增 /etc/postfix/sasl/smtpd.conf

加入 pwcheck_method: saslauthd

4.將 /var/run/saslauthd 的目錄 owner 修改一下

chown postfix:postfix /var/run/saslauthd

5.修改 /etc/postfix/main.cf 加入以下字串

smtpd_sasl_auth_enable = yes
broken_sasl_auth_clients = yes
smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, rej
ect_unauth_destination
smtpd_client_restrictions = permit_sasl_authenticated
smtpd_sasl_security_options = noanonymous

6.修改 /etc/postfix/master.cf

找到

# ==========================================================================
# service type private unpriv chroot wakeup maxproc command + args
# (yes) (yes) (yes) (never) (50)
# ==========================================================================
smtp inet n - - - - smtpd

修改成

# ==========================================================================
# service type private unpriv chroot wakeup maxproc command + args
# (yes) (yes) (yes) (never) (50)
# ==========================================================================
smtp inet n - n - - smtpd

7.重新啟動 saslauthd 和 postfix

/etc/init.d/saslauthd restart
/etc/init.d/postfix restart
andrechen
可愛的小學生
可愛的小學生
 
文章: 79
註冊時間: 週三 11月 27, 2002 2:08 pm

re:百年老問題:Postfix + SASL

文章Tetralet » 週日 7月 27, 2003 4:17 am

非常謝謝您經驗的分享!

現在時間實在太晚了點,
明天我會儘快測試的。

:w_27:
時間並不能治療我心中的疼痛
南方的春天說什麼也溫暖不了我冰冷的血

誦唱大復活咒文,今天的 Tetralet 又在唧唧喳喳了 重生!
Tetralet
俺是博士
俺是博士
 
文章: 3078
註冊時間: 週四 11月 28, 2002 3:02 pm

re:百年老問題:Postfix + SASL

文章Tetralet » 週三 7月 30, 2003 1:38 pm

在 Debian Testing 中的套件似乎有點問題:

代碼: 選擇全部
Sorry, but the following packages have unmet dependencies:
  libsasl2-digestmd5-plain: Depends: libsasl2 (= 2.1.2-2) but 2.1.12-1 is to be installed
  libsasl2-modules-plain: Depends: libsasl2 (= 2.1.2-2) but 2.1.12-1 is to be installed
E: Sorry, broken packages


所以可能要再等幾天才能試...
時間並不能治療我心中的疼痛
南方的春天說什麼也溫暖不了我冰冷的血

誦唱大復活咒文,今天的 Tetralet 又在唧唧喳喳了 重生!
Tetralet
俺是博士
俺是博士
 
文章: 3078
註冊時間: 週四 11月 28, 2002 3:02 pm

re:百年老問題:Postfix + SASL

文章訪客 » 週一 9月 08, 2003 11:03 pm

不知道你的 /var/log/auth.log 有沒有:
OTP unavailable because can't read/write key database /etc/opiekeys: No such file or directory

如果是的話, 在 /etc/postfix/sasl/smtpd.conf 加上
mech_list: login plain

然後重新啟動 saslauthd 試試看

ps. 我是 debian sid..
訪客
 

re:百年老問題:Postfix + SASL

文章Tetralet » 週三 9月 10, 2003 10:19 am

Anonymous 寫:不知道你的 /var/log/auth.log 有沒有:
OTP unavailable because can't read/write key database /etc/opiekeys: No such file or directory

如果是的話, 在 /etc/postfix/sasl/smtpd.conf 加上
mech_list: login plain

然後重新啟動 saslauthd 試試看

ps. 我是 debian sid..


感謝您的提示,
我會趕快試試看的!
時間並不能治療我心中的疼痛
南方的春天說什麼也溫暖不了我冰冷的血

誦唱大復活咒文,今天的 Tetralet 又在唧唧喳喳了 重生!
Tetralet
俺是博士
俺是博士
 
文章: 3078
註冊時間: 週四 11月 28, 2002 3:02 pm

re:百年老問題:Postfix + SASL

文章Tetralet » 週三 9月 10, 2003 7:14 pm

andrechen 寫:試試看這個方法,我在三台主機上測試都沒有問題

Postfix 遠端寄信方法


恕刪...

Debian Testing 中的 libsasl2-digestmd5-plain libsasl2-modules-plain 套件好像有問題一直裝不起來,
今天火大用手動的硬給它裝上去了,
然後按照您的步驟一試果然就可以了,
實在太感謝了! :w_28:
時間並不能治療我心中的疼痛
南方的春天說什麼也溫暖不了我冰冷的血

誦唱大復活咒文,今天的 Tetralet 又在唧唧喳喳了 重生!
Tetralet
俺是博士
俺是博士
 
文章: 3078
註冊時間: 週四 11月 28, 2002 3:02 pm

re:百年老問題:Postfix + SASL

文章Tetralet » 週三 9月 10, 2003 8:55 pm

Tetralet 寫:Debian Testing 中的 libsasl2-digestmd5-plain libsasl2-modules-plain 套件好像有問題一直裝不起來


後來發現安裝 stable 的 sasl2-bin 就可以了說。
真笨,在這裡卡了一個多月...
時間並不能治療我心中的疼痛
南方的春天說什麼也溫暖不了我冰冷的血

誦唱大復活咒文,今天的 Tetralet 又在唧唧喳喳了 重生!
Tetralet
俺是博士
俺是博士
 
文章: 3078
註冊時間: 週四 11月 28, 2002 3:02 pm


回到 debian server

誰在線上

正在瀏覽這個版面的使用者:沒有註冊會員 和 1 位訪客