歡迎您光臨本站 註冊首頁

簡單的 postfix+cyrus-sasl+ courier-authlib+ courier-imap-+ postfixadmin+ mysql

基本是搞了一個星期。終於搞好了。

我把我組建的過程及中間出現的問題,如何解決。會全部帖出來。目的 一是留一個備忘,二是也給新手一個參考。(我找了CU很久,發現論壇上的精華已經太老了。可能是軟體版本的問題。如果你完全按照他們的做法是很難實現的。)

我是參照anstan 大哥的 精華帖  《postfix郵件系統》 所做
http://bbs.chinaunix.net/viewthread.php?tid=641709&extra=page%3D1%26amp%3Bfilter%3Ddigest   此帖最後更新日期:2005年11月5日

我的系統 及 軟體本版

as5 + postfix-2.4.5 + cyrus-sasl-2.1.22 + courier-authlib-0.59.3 + courier-imap-4.1.3 + postfixadmin-2.1.0 + mysql-4.1.20(mysql的版本好像無所謂。)

輔助軟體 apache 2.0.X + php (任意。我用的是5) + phpMyadmin (版本任意)

出了MYSQL 其他軟體都是最新版。

由於時間關係,軟體下載地址我就不鏈接了。

好了 廢話少說  let`s go !!!

一、安裝mysql
# tar zxvf mysql-4.1.20.tar.gz
# cd cd mysql-5.0.15
# groupadd mysql
# useradd -g mysql mysql
#./configure --prefix=/usr/local/mysql --with-charset=gbk --with-extra-charsets=utf8,gb2312,big5 --enable-thread-safe-client
# make
# make install
#cp support-files/my-medium.cnf /etc/my.cnf
#cp support-files/mysql.server /etc/init.d/mysql

安裝完以後要初始化資料庫
# cd /usr/local/mysql
# /usr/local/mysql/bin/mysql_install_db --user=mysql
# chown -R mysql var
# chgrp -R mysql .

啟動mysql
#/etc/init.d/mysql start
ss -ant | grep 3306

為了能讓系統找到mysql,請運行如下命令
# PATH=$PATH:/usr/local/mysql/bin
# export PATH
# echo "/usr/local/mysql/lib/mysql" >> /etc/ld.so.conf
# ldconfig

註:由於我的mysql版本是4.1.20 所以加了 --enable-thread-safe-client 。 如果你不加,編譯php的時候會提示一個mysql的錯誤。(具體錯誤我找不到了。)我感覺好像是mysql的版本低。php版本高的原因。如果你用mysql 5的話 就不用加了。

二、安裝apache
# groupadd vmail -g 1001
# useradd vmail -u 1001 -g 1001 -s/sbin/nologin -d/dev/null
# tar jxvf httpd-2.0.55.tar.bz2
# cd httpd-2.0.55
# ./configure --prefix=/usr/local/apache
# make
# make install

設置自啟動
# cp support/apachectl /etc/init.d/httpd
# chmod +x /etc/init.d/httpd
# /etc/init.d/httpd start

三、安裝PHP
# tar jxvf php-5.2.2.tar.bz2
# cd php-5.2.2
# mkdir /usr/local/php
# ./configure --prefix=/usr/local/php --with-mysql=/usr/local/mysql --with-apxs2=/usr/local/apache/bin/apxs
#make
#make install
#cp php.ini-dist /usr/local/php/lib/php.ini

# vi /usr/local/apache/conf/httpd.conf
找到#AddType application/x-tar .tgz 這行,在下面加兩行
AddType application/x-httpd-php .php
找到下面一行在後面加上index.php,這表示網站的默認頁也能夠為index.php
DirectoryIndex index.html index.html.var index.php

把User nobody
Group #-1
改為
User vmail
Group vmail

重啟APACHE

四、安裝postfixadmin


#tar -zxf postfixadmin-2.4.5.tar.gz
#cp -r postfixadmin-2.4.5 /usr/local/apache/htdocs/postfixadmin
#chown -R vmail:vmail /usr/local/apache/htdocs/postfixadmin
導入postfixadmin的資料庫
#/usr/local/mysql/bin/mysql < /usr/local/apache/htdocs/postfixadmin/DATABASE_MYSQL.TXT
# cp config.inc.php.sample config.inc.php
# vi config.inc.php
本例中的配置如下: 跟參考帖一樣沒動
$CONF['default_language'] = 'cn';
$CONF['database_type'] = 'mysql';
$CONF['database_host'] = 'localhost';
$CONF['database_user'] = 'postfixadmin';
$CONF['database_password'] = 'postfixadmin';
$CONF['database_name'] = 'postfix';
$CONF['encrypt'] = 'md5crypt';
$CONF['domain_path'] = 'YES';
$CONF['domain_in_mailbox'] = 'NO';
$CONF['quota'] = 'YES';
$CONF['quota_multiplier'] = '1024000';

然後打開瀏覽器,輸入http://127.0.0.1/postfixadmin 進入postfixadmin的歡迎界面,點擊網頁上的setup,看看檢查是否通過,記得要刪除setup.php文件。

五、安裝 cyrus-sasl-2.1.22
先關閉as4默認安裝的sasl
# mv /usr/lib/sasl /usr/lib/sasl.OFF
# mv /usr/lib/sasl2 /usr/lib/sasl2.OFF
#tar -zxf cyrus-sasl-2.1.22.tar.gz
#cd cyrus-sasl-2.1.22
#./configure --disable-anon -enable-plain --enable-login --enable-sql --with-mysql=/usr/local/mysql --enable-sample --with-authdaemond
#make
#make install

更新lib庫
# echo "/usr/local/lib" >> /etc/ld.so.conf
# ldconfig
重要
# ln -s /usr/local/lib/sasl2 /usr/lib/sasl2

註:安裝SASL的時候最好不要指定安裝路徑。如果你直徑的安裝路徑的時候,以後安裝authlib的時候會出問題。會提示你sasl找不到authdaemon的SOCKET
所以以後 安裝authlib 的時候也不指定路徑。

六、安裝postfix 2.4.5
如果你的系統上原來有sendmail,先將其停止並將其文件改名
# /etc/init.d/sendmail stop
# chkconfig --level 0123456 sendmail off
# mv /usr/bin/newaliases /usr/bin/newaliases.orig
# mv /usr/bin/mailq /usr/bin/mailq.orig
# mv /usr/sbin/sendmail /usr/sbin/sendmail.orig

開始安裝
# groupadd -g 12345 postfix
# useradd -u 12345 -g 12345 -c postfix -d/dev/null -s/sbin/nologin postfix
# groupadd -g 54321 postdrop
# tar zxf postfix-2.4.5.tar.gz
# cd postfix-2.2.5
# make -f Makefile.init makefiles CCARGS="-DUSE_SASL_AUTH -DUSE_CYRUS_SASL -I/usr/local/include/sasl -DHAS_MYSQL -I/usr/local/mysql/include/mysql " AUXLIBS="-L/usr/local/lib -lsasl2 -L/usr/local/mysql/lib/mysql -lmysqlclient -lz -lm"
(注意這裡是我自己看postfix官方的文檔上的結果。如果你參照anstan哥的精華帖。postfix綁定不了sasl)
#make
#make install
之後一路回車 postfix OK 了

檢驗一下sasl是否綁定到了postfix上
#postconf -a
cyrus
dovecot
如果有cyrus說明你已經成功了。沒有從新postfix吧。找問題。

(註:install_root: [/]  正確的:後面都應該有提示的 表示正確的  如果沒有那麼有可能 postfix找不到你libmysqlclient.so.12  使用ldconfig就可以達到這個目的# echo /usr/local/mysql/lib/mysql >> /etc/ld.so.conf  # ldconfig )

vi /etc/postfix/main.cf
#=====================BASE=========================
myhostname = mail.test.hk
mydomain = test.hk
myorigin = $mydomain
mydestination = $myhostname localhost localhost.$mydomain
mynetworks = 127.0.0.0/8
inet_interfaces = all

#=====================Vritual Mailbox settings=========================
virtual_mailbox_base = /var/mailbox
virtual_mailbox_maps = mysql:/etc/postfix/mysql/mysql_virtual_mailbox_maps.cf
virtual_mailbox_domains = mysql:/etc/postfix/mysql/mysql_virtual_domains_maps.cf
virtual_alias_domains =
virtual_alias_maps = mysql:/etc/postfix/mysql/mysql_virtual_alias_maps.cf
virtual_uid_maps = static:1001
virtual_gid_maps = static:1001
#virtual_transport = maildrop
#virtual_transport = vmail
maildrop_destination_recipient_limit = 1
maildrop_destination_concurrency_limit = 1

################## maildrop      #############

#mail_owner = maildrop
#mailbox_transport = maildrop
#fallback_transport = maildrop
#maildrop_destination_recipient_limit = 1


######################################


#====================QUOTA========================
message_size_limit = 14336000
virtual_mailbox_limit = 20971520
virtual_create_maildirsize = yes
virtual_mailbox_extended = yes
virtual_mailbox_limit_maps = mysql:/etc/postfix/mysql/mysql_virtual_mailbox_limit_maps.cf
virtual_mailbox_limit_override = yes
virtual_maildir_limit_message = Sorry, the user's maildir has overdrawn his diskspace quota, please try again later.
virtual_overquota_bounce = yes

#====================SASL========================
broken_sasl_auth_clients = yes
smtpd_recipient_restrictions =
  permit_mynetworks,
  permit_sasl_authenticated,
  reject_invalid_hostname,
  reject_non_fqdn_hostname,
  reject_unknown_sender_domain,
  reject_non_fqdn_sender,
  reject_non_fqdn_recipient,
  reject_unknown_recipient_domain,
  reject_unauth_pipelining,
  reject_unauth_destination,
  permit
smtpd_sasl_auth_enable = yes
smtpd_sasl_local_domain = $myhostname
smtpd_sasl_security_options = noanonymous
smtpd_sasl_application_name = smtpd
smtpd_banner=$myhostname ESMTP "Version not Available"
(注意:我上的配置文件里的註釋。我去掉了maildrop)

建立/var/mailbox並設置許可權
# mkdir /var/mailbox
# chown -R vmail:vmail /var/mailbox
# chmod -R ug+rwx,o-rwx /var/mailbox

建立/etc/postfix/mysql文件夾和MySQL查詢配置文件
# mkdir /etc/postfix/mysql
1、vi /etc/postfix/mysql/mysql_virtual_alias_maps.cf
user = postfix
password = postfix
hosts = localhost
dbname = postfix
table = alias
select_field = goto
where_field = address

2、vi /etc/postfix/mysql/mysql_virtual_domains_maps.cf
user = postfix
password = postfix
hosts = localhost
dbname = postfix
table = domain
select_field = description
where_field = domain
#additional_conditions = and backupmx = '0' and active = '1'

3、vi /etc/postfix/mysql/mysql_virtual_mailbox_maps.cf
user = postfix
password = postfix
hosts = localhost
dbname = postfix
table = mailbox
select_field = maildir
where_field = username
#additional_conditions = and active = '1'

4、vi /etc/postfix/mysql/mysql_virtual_mailbox_limit_maps.cf
user = postfix
password = postfix
hosts = localhost
dbname = postfix
table = mailbox
select_field = quota
where_field = username
#additional_conditions = and active = '1'

配置 /usr/local/lib/sasl2/smtpd.conf
sasl密碼驗證機製為authdaemond
# vi /usr/local/lib/sasl2/smtpd.conf
pwcheck_method:authdaemond
log_level:3
srp_mda:md5
password_format:crypt
mech_list: PLAIN LOGIN
authdaemond_path: /usr/local/var/spool/authdaemon/socket

檢驗postfix 是否支持了認證
#postfix start
#telnet localhost 25
ehlo localhost
ehlo localhost
250-mail.1x.hk
250-PIPELINING
250-SIZE 14336000
250-VRFY
250-ETRN
250-AUTH PLAIN LOGIN
250-AUTH=PLAIN LOGIN
250-ENHANCEDSTATUSCODES
250-8BITMIME
250 DSN
看間了 紅的部分的字樣  說明 postfix 已經 有 驗證 機制了。 可以繼續往下做了。

七、安裝Courier-authlib 0.57
新版本的imap不再包含authentication library,必須先安裝 Courier authentication library
#tar -zxf courier-authlib-0.59.3.tar.tar
# cd courier-authlib-0.59.3
# ./configure --with-redhat --with-authmysql=yes --with-mailuser=vmail --with-mailgroup=vmail --with-mysql-libs=/usr/local/mysql/lib/mysql --with-mysql-includes=/usr/local/mysql/include/mysql/
# make
# make install
# make install-configure
重要
# chmod +x /usr/local/var/spool/authdaemon/

# vi /usr/local/etc/authlib/authdaemonrc
authmodulelist="authmysql"
DEBUG_LOGIN=2
(註:打開authdaemon的日誌 方便調試。  調試成功之後把2 改成 0)

# mv /usr/local/etc/authlib/authmysqlrc /usr/local/etc/authlib/authmysqlrc.old
備份一下authlib的配置文件。
# vi /usr/local/etc/authlib/authmysqlrc
MYSQL_SERVER localhost
MYSQL_SOCKET /tmp/mysql.sock
MYSQL_DATABASE postfix
MYSQL_USERNAME postfix
MYSQL_PASSWORD postfix
MYSQL_USER_TABLE mailbox
MYSQL_LOGIN_FIELD username
MYSQL_CRYPT_PWFIELD password
MYSQL_UID_FIELD '1001'
MYSQL_GID_FIELD '1001'
#MYSQL_HOME_FIELD '/var/mailbox/'
#MYSQL_MAILDIR_FIELD maildir
MYSQL_HOME_FIELD        concat('/var/mailbox/',maildir)
MYSQL_MAILDIR_FIELD     concat('/var/mailbox/',maildir)
MYSQL_NAME_FIELD name
MYSQL_QUOTA_FIELD concat(quota,'S')
MYSQL_WHERE_CLAUSE active='1'
DEFAULT_DOMAIN test.hk

注意:確認在這個文件中不能用空格鍵(包括行尾),只能用tab鍵。
確認只使用單引號,比如:'/var/mailbox/','UID','GID'(本文為'1001')
localhost不能用單引號
確認你的/etc/hosts文件中有localhost
編譯時如果支持Ipv6可能導致錯誤
MYSQL_GID_FIELD 和MYSQL_UID_FIELD是maildrop的UID和GID,而不是MySQL的  
這是anstan哥的原話   IPV6 我沒有編譯  我修改了一下他的配置,因為用他的 mysql會找不到你的用戶目錄。

# cp courier-authlib.sysvinit /etc/rc.d/init.d/courier-authlib
# chmod 755 /etc/rc.d/init.d/courier-authlib
# chkconfig --level 0123456 courier-authlib on
手動啟動服務:
# authdaemond start

在postfixadmin中建立一測試帳戶test@test.hk

測試smtp
# perl -MMIME::Base64 -e 'print encode_base64("test\@test.hk");'
dGVzdC5oaw==
# perl -MMIME::Base64 -e 'print encode_base64("test");'
dGVzdA==

# telnet localhost 25
Trying 127.0.0.1...
Connected to localhost.localdomain (127.0.0.1).
Escape character is '^]'.
220 www.test.com ESMTP "Version not Available"
ehlo www.test.hk
250-www.test.com
250-PIPELINING
250-SIZE 14336000
250-VRFY
250-ETRN
250-AUTH LOGIN PLAIN
250-AUTH=LOGIN PLAIN
250 8BITMIME
auth login
334 VXNlcm5hbWU6
dGVzdC5oaw==
334 UGFzc3dvcmQ6
dGVzdA==
235 Authentication successful

看見 Authentication successful 恭喜你的用戶驗證 已經OK 了。  如果不成功 #tail -60 /var/log/maillog  看裡面說什麼

繼續往下走。

八、安裝courier-imap-4.1.3
#tar -xf courier-imap-4.1.3.tar.tar
#cd courier-imap-4.1.3
# ./configure --prefix=/usr/local/imap --with-redhat --disable-root-check --enable-unicode=utf-8,iso-8859-1,gb2312,gbk,gb18030 --with-trashquota --with-dirsync
#make
#make install
# make install-configure

# vi /usr/local/imap/etc/pop3d
POP3DSTART=YES

# vi /usr/local/imap/etc/imapd
IMAPDSTART=YES

將MAILDIRPATH=Maildir改為
MAILDIRPATH=/var/mailbox/


讓imap自啟動:
# cp courier-imap.sysvinit /etc/rc.d/init.d/courier-imap
# chmod 755 /etc/rc.d/init.d/courier-imap
# chkconfig --level 0123456 courier-imap on

測試POP3
# telnet localhost 110
+OK Hello there
user test@test.hk
+OK Password required.
pass test
+OK Logged in.
quit
+OK bye-bye

如果能 登錄成功   再次恭喜你  一起都OK 了 。

下面說一下我碰到的問題   FAQ
Aug 29 13:47:06 mail pop3d: authdaemon: s_connect() failed: No such file or directory

建議你從下安裝一下SASL 和 authdaemon  在試試

Aug 30 00:09:46 mail postfix/trivial-rewrite: fatal: file /etc/postfix/main.cf: parameters mail_owner and setgid_group: user postfix and group postdrop have the same group ID: 101

這是你的POSTFIX 用戶和組 建的 有問題 。 把原來的DEL 掉  從新建一下試試

暫時 就 這麼多    做的 時候 碰見好多 問題     以後大家做的碰見了 問題 就 回帖吧 一器 解決 。

還有好多 功能 沒有加    在以後 我會把 他們一個一個的加上  。
《解決方案》

註:安裝SASL的時候最好不要指定安裝路徑。如果你直徑的安裝路徑的時候,以後安裝authlib的時候會出問題。會提示你sasl找不到authdaemon的SOCKET
所以以後 安裝authlib 的時候也不指定路徑。
--with-authdaemond=/usr/local/courier-authlib/var/spool/authdaemon/socket

[ 本帖最後由 atyu30 於 2007-9-5 11:58 編輯 ]
《解決方案》

原帖由 atyu30 於 2007-9-5 11:51 發表 http://bbs.chinaunix.net/images/common/back.gif

--with-authdaemond=/usr/local/courier-authlib/var/spool/authdaemon/socket


thank you!!
學習了
《解決方案》

maillog被刪了該怎麼辦呢.現在日誌在哪裡看?
《解決方案》

在重touch 個mailog
《解決方案》

我按照上述的方法安裝老是不成功,我用的RHEL5 版本,安裝時的序列號選擇Red Hat Enterprise Linux (Server including virtualization)的序列號,然後在默認和定製安裝選項時選擇默認,其他都沒有動就開始安裝了。安裝好后,然後按照帖子提示一步一步MYSQL,APACHE,PHP,SASL等,安裝的是系統默認的SASL,RPM方式安裝的,安裝后#postconf -a,也可以出現cyrus,dovecot兩行信息。但安裝POSTFIX后(採用下載安裝包安裝的),沒有安裝courier-authlib,啟動POSTFIX,TELNET LOCALHOST 25,沒有220信息出現。然後安裝courier-authlib,MAKE時也提示沒有找到MAKEFILE文件。查LOG,發現有錯誤。

我感覺奇怪的是,難道你們安裝時都是一帆風順,一點錯誤都沒有嗎?

直接TELNET 25就直接可以了?
《解決方案》

我配置成功怎麼不可以收發HOTMAIL

HOTMAIL發我的郵箱不可以
我發HOTMAIL郵箱老是退信怎麼回事,
那位高手解決一下,
先謝謝了

下面是HOTMAIL退信的內容:
This is the mail system at host mail.michi.cn.

I'm sorry to have to inform you that your message could not
be delivered to one or more recipients. It's attached below.

For further assistance, please send mail to postmaster.

If you do so, please include this problem report. You can
delete your own text from the attached returned message.

                   The mail system

<aaa@hotmail.com>: host mx4.hotmail.com said: 550 Your
    e-mail was rejected for policy reasons on this gateway.  Reasons for
    rejection may be related to content with spam-like characteristics or
    IP/domain reputation problems.  If you are not an e-mail/network admin
    please contact your E-mail/Internet Service Provider for help.  For e-mail
    delivery information, please go to http://postmaster.live.com (in reply to
    MAIL FROM command)

Reporting-MTA: dns; mail.michi.cn
X-Postfix-Queue-ID: CDF67107047
X-Postfix-Sender: rfc822; noreply@mailman.yusker.com
Arrival-Date: Thu,  6 Sep 2007 15:10:51 +0800 (CST)

Final-Recipient: rfc822; aaa@hotmail.com
Original-Recipient: rfc822;aaa@hotmail.com
Action: failed
Status: 5.0.0
Remote-MTA: dns; mx4.hotmail.com
Diagnostic-Code: smtp; 550 Your e-mail was rejected for policy reasons on this
    gateway.  Reasons for rejection may be related to content with spam-like
    characteristics or IP/domain reputation problems.  If you are not an
    e-mail/network admin please contact your E-mail/Internet Service Provider
    for help.  For e-mail delivery information, please go to
    http://postmaster.live.com

------------------------------------------------------------
From:  "noreply@mailman.yusker.com" <noreply@mailman.yusker.com>
To:  "aaa" <aaa@hotmail.com>
Subject:  work
Date:  Thu6 Sep 2007 15:11:19 +0800

5bulo

------------------------------------------------------------

[ 本帖最後由 yusker_1 於 2007-9-6 18:23 編輯 ]
《解決方案》

原帖由 sunnyyxg 於 2007-9-6 15:15 發表 http://bbs.chinaunix.net/images/common/back.gif
我按照上述的方法安裝老是不成功,我用的RHEL5 版本,安裝時的序列號選擇Red Hat Enterprise Linux (Server including virtualization)的序列號,然後在默認和定製安裝選項時選擇默認,其他都沒有動就開始安裝了 ...


強烈建議 你把系統原帶的RPM 包  卸掉。
之後 在 做
五、安裝 cyrus-sasl-2.1.22
先關閉as4默認安裝的sasl
# mv /usr/lib/sasl /usr/lib/sasl.OFF
# mv /usr/lib/sasl2 /usr/lib/sasl2.OFF
#tar -zxf cyrus-sasl-2.1.22.tar.gz
#cd cyrus-sasl-2.1.22
#./configure --disable-anon -enable-plain --enable-login --enable-sql --with-mysql=/usr/local/mysql --enable-sample --with-authdaemond
#make
#make install

更新lib庫
# echo "/usr/local/lib" >> /etc/ld.so.conf
# ldconfig
重要
# ln -s /usr/local/lib/sasl2 /usr/lib/sasl2

註:安裝SASL的時候最好不要指定安裝路徑。如果你直徑的安裝路徑的時候,以後安裝authlib的時候會出問題。會提示你sasl找不到authdaemon的SOCKET
所以以後 安裝authlib 的時候也不指定路徑。

六、安裝postfix 2.4.5
如果你的系統上原來有sendmail,先將其停止並將其文件改名
# /etc/init.d/sendmail stop
# chkconfig --level 0123456 sendmail off
# mv /usr/bin/newaliases /usr/bin/newaliases.orig
# mv /usr/bin/mailq /usr/bin/mailq.orig
# mv /usr/sbin/sendmail /usr/sbin/sendmail.orig

開始安裝
# groupadd -g 12345 postfix
# useradd -u 12345 -g 12345 -c postfix -d/dev/null -s/sbin/nologin postfix
# groupadd -g 54321 postdrop
# tar zxf postfix-2.4.5.tar.gz
# cd postfix-2.2.5
# make -f Makefile.init makefiles CCARGS="-DUSE_SASL_AUTH -DUSE_CYRUS_SASL -I/usr/local/include/sasl -DHAS_MYSQL -I/usr/local/mysql/include/mysql " AUXLIBS="-L/usr/local/lib -lsasl2 -L/usr/local/mysql/lib/mysql -lmysqlclient -lz -lm"
(注意這裡是我自己看postfix官方的文檔上的結果。如果你參照anstan哥的精華帖。postfix綁定不了sasl)
#make
#make install
之後一路回車 postfix OK 了

檢驗一下sasl是否綁定到了postfix上
#postconf -a
cyrus
dovecot
如果有cyrus說明你已經成功了。沒有從新postfix吧。找問題。



如果還是不行    你就 開 兩個 終端    一個 終端 tail -f /var/log/maillog    之後 敲及個回車     另一個終端   執行 telnet  localhost 25  

之後把你的 maillog  帖上來 大家幫你分析 。
《解決方案》

原帖由 yusker_1 於 2007-9-6 17:37 發表 http://bbs.chinaunix.net/images/common/back.gif
HOTMAIL發我的郵箱不可以
我發HOTMAIL郵箱老是退信怎麼回事,
那位高手解決一下,
先謝謝了

下面是HOTMAIL退信的內容:
This is the mail system at host mail.michi.cn.

I'm sorry to have to infor ...


我估計是沒有 反向解析的原因 。  我的系統 往hotmail上發  也不是 正常信 。 因為我沒有 反向解析。

550 Your
    e-mail was rejected for policy reasons on this gateway.  Reasons for
    rejection may be related to content with spam-like characteristics or
    IP/domain reputation problems.  If you are not an e-mail/network admin
    please contact your E-mail/Internet Service Provider for help.  For e-mail
    delivery information, please go to http://postmaster.live.com (in reply to
    MAIL FROM command)

大概的意思 。 我的英文也很爛     說的你的郵件 像垃圾郵件 。  被 hotmail 決絕了 。   看懂的 就 這麼多 。
《解決方案》

你好, 想請教樓主.
我在 freebsd 上裝好了 Postfix + Cyrus-sasl + courier-imap + postfixadmin + mysql + squirrelmail 了.
telnet localhost 110 及 telnet localhost 25 都能通過, 全部無問題..
但當我用 squirrelmail 寄信時, 發現按下"傳送"後, 並沒有任何反應, 只返回頁面, 又沒有任何mailer-failure的回頭信, 但信仍是發不到出去, 也收不入來...
我再查看 postqueue -p 發現mail 仍在queue當中, 並沒有寄出去...
而且還出現 mail transport unavailable.

5BF2917019      763 Tue Sep 11 18:26:03  test@abc.org
                                                  (mail transport unavailable)
                                         may@abc.org


再查看 /var/log/maillog 也是同樣error

Sep 12 15:39:36 test postfix/error: AE5D31707F: to=<root@abc.org>, relay=none, delay=14181, delays=14181/0.1/0/0.13, dsn=4.3.0, status=deferred (mail transport unavailable)


弄了整個星期也是出 mail transport unavailable, 也嘗試參考你的教學, 得出也是一樣, 請樓主再指教...
謝謝.

下午4時20分更新了.

樓主你好, 我現在可以發信出去了.. maillog 已經沒有 mail transport unavailable, 請教這是什麼原因得出來的呢. 我從頭依你的教學對我系統作了些修改就可以了. 但另一個問題就出現了. 就是收不到信. 我再外邊寄信回來是會退信的. 說的的網域地址找不到... 即 test.abc.com, 我已經在我的dns內加入了對test.abc.com 的mx解釋. 請問在 postfix 內需要再作什麼改動嗎? 以我知應該是網址的問題, postfix mail 系統應該是正確的. 再請指教.
謝謝.

[ 本帖最後由 惠繪洋 於 2007-9-12 16:24 編輯 ]

[火星人 ] 簡單的 postfix+cyrus-sasl+ courier-authlib+ courier-imap-+ postfixadmin+ mysql已經有689次圍觀

http://coctec.com/docs/service/show-post-35759.html