postfix+smtp+pop3+sasl2
时间:2006-03-21 来源:xj_bluesky
postfix+smpt+pop3+sasl2
1.postfix
安装POSTFIX很简单,mount你的CD
rpm -ivh postfix.*.rmp
#如果你这样安装 会出现很包的相依关系的问题,差不多有10+个包要你自己去安装。如果你是高手那么没有关系一个一个装上去就可以了,如果你和我一样是新手,那么我还是希望你用添加删除程序安装因为它会为你解决相依性的问题。
装好后启动postfix 查看25端口有没有在监听。
netstat -ntl |grep 25
如果有返回行 就说明你的postfix以启动了
再把你的postfix加入启动里
ntsysv
2.pop3
要用的Linux是 FC4 里面有一个dovecot的服务,先得安装这个包
rpm -ivh dovecot.*.rpm
再开启这个服务器
service devecot statr
哇!无法启动。为什么呢 到网上google 才发现 虽然你以装好了这服务,但是默认情况一下 FC4为了安全,对dovecot禁用的,我们要先解除禁用方法如下:地
1.請從 Desktop -> System Settings -> Security Level ->SELinux 選擇
Modify SELinux Policy 中的SELInux Service Protection 將
Disable SELinux protection for dovecot daemon 勾選. 再启动 dovecot就可以了 service devecot statr 再查看110端口是不是以开启 netstat -ntl | grep 110 如有返回行 就说明你以开启了 当25和110端口以开启后 你就可以用本机发信和收信了,但是你不可以在别的PC上 利用这个mailserver收发信件。应该在别的PC上还没有等到授权。这个我们以后再谈。 3.mtp认证 smtp认证 主要是为了解决邮件的中继问题,如果你设置不妥你的服务器很快会被列入一些组织的rbl,这样你就玩玩了。 先要下载 cyrus-sasl2.xx这个东东(google一把到入处都是)。 cd /usr/local/src tar -zxvf /path/cyrus-sasl2.*.tar.gz cd /usr/local/src/cyrus-sasl2 ./conifgure \ >--perfix=/usr/local/syrus-sasl2 --enable-login \ >--enable-plain --enalbe-pwcheck --wiht-saslauthd=/var/run make make install 默认系统会到/usr/lib/cyrus-sasl2 可是我们安装在/usr/local/syrun-sasl2 所以我们要在/usr/lib目录下创建链接文件 cd /usr/lib ln -s /usr/local/cyrus-sasl2/lib/* . 再要声明认证机制为saslauthd,plain,login echo 'pwcheck_method=saslauthd' >smtpd.conf echo 'mech_list:plain login >>smtp.conf 4.saslauthd是否正确 cyrus-sasl2有一个认证的小程序 操作如下: /usr/local/cyrus-sasl2/sbin/saslauthd -a shadow cd /usr/local/src/cyrus-sasl2/saslauthd make testsaslauthd ./testsaslauthd -u userid -p userpwd 0: ok success (看以这行 表示成功了). 设置开机启动 vi /etc/rd.c/rc.local /usr/local/syrus-sasl2/sbin/saslauthd -a shadow (加入这一行) 在postfix里启动saslauthed vi /etc/postfix/main.cf (添加如下几行) smtpd_sasl_uath-enable=yes (启到sasl2 认证) smtpd_sasl_local_domain='' (在这里设置的话 这个domain里的主机就不需要 SMTP 认证,但是sasl2里为个是不能设置的) smtpd_recipient_restrictions=permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination (什么条件下 接受客户端的relay功能) smtpd_client_restrictions=permit_sasl_authenticated (未经信认的客户端,就采用permit_sasl_authenticated这个认证方法) smtpd_sasl_security_options=noanoymous (限制一些登入方式,postfix中默认是使用plaintext方式认证的,所以不有取消,但可以用匿名登入方式(noanonymous) 6.认证情况 telnet localhost 25 ehlo localhost 如果 在第6行 看到 auth cram-md5 login digest-md5 plain 表示smtp以工作了。 进一步确认 假如我有一个帐号为 id:test pwd:123 我们进行如下验证 printf 'test\0test\0123' |mmencode 但是你先要装metamail-2.7-29.fc2.mok.i386.rpm 装metamail-2.7-29.fc2.mok.i386.rpm时 系统会调用sharutils 所以也要装 sharutils-4.2.1-12.i386.rpm rpm -ivh sharutils-4.2.1-12.i386.rpm rpm -ivh metamail-2.7-29.fc2.mok.i386.rpm 这样就可以了 printf 'test\0test\0123' |mmencode n12fja3fj32ak56ljflkf== telnet localhost 25 ehlo localhost plain n12fja3fj32ak56ljflkf== (输入这一行回车) 如果你看到 anutentication successful 表示成功了!恭喜 完成以上东东 你的postfix可以正常的跑起来了 再对主机进行一些设置就可以了 关与主机具体的设置我会尽快补充的 ̄ ̄........
################################################################
smtpd_sasl_auth_enable = yes
smtpd_sasl_local_domain = ''
smtpd_recipient_restrictions = permit_mynetworks,_
permit_sasl_authenticated,reject_unauth_destination
smtpd_client_restrictions = permit_sasl_authenticated
smtpd_sasl_security_options = noanonymous
################################################################
Modify SELinux Policy 中的SELInux Service Protection 將
Disable SELinux protection for dovecot daemon 勾選. 再启动 dovecot就可以了 service devecot statr 再查看110端口是不是以开启 netstat -ntl | grep 110 如有返回行 就说明你以开启了 当25和110端口以开启后 你就可以用本机发信和收信了,但是你不可以在别的PC上 利用这个mailserver收发信件。应该在别的PC上还没有等到授权。这个我们以后再谈。 3.mtp认证 smtp认证 主要是为了解决邮件的中继问题,如果你设置不妥你的服务器很快会被列入一些组织的rbl,这样你就玩玩了。 先要下载 cyrus-sasl2.xx这个东东(google一把到入处都是)。 cd /usr/local/src tar -zxvf /path/cyrus-sasl2.*.tar.gz cd /usr/local/src/cyrus-sasl2 ./conifgure \ >--perfix=/usr/local/syrus-sasl2 --enable-login \ >--enable-plain --enalbe-pwcheck --wiht-saslauthd=/var/run make make install 默认系统会到/usr/lib/cyrus-sasl2 可是我们安装在/usr/local/syrun-sasl2 所以我们要在/usr/lib目录下创建链接文件 cd /usr/lib ln -s /usr/local/cyrus-sasl2/lib/* . 再要声明认证机制为saslauthd,plain,login echo 'pwcheck_method=saslauthd' >smtpd.conf echo 'mech_list:plain login >>smtp.conf 4.saslauthd是否正确 cyrus-sasl2有一个认证的小程序 操作如下: /usr/local/cyrus-sasl2/sbin/saslauthd -a shadow cd /usr/local/src/cyrus-sasl2/saslauthd make testsaslauthd ./testsaslauthd -u userid -p userpwd 0: ok success (看以这行 表示成功了). 设置开机启动 vi /etc/rd.c/rc.local /usr/local/syrus-sasl2/sbin/saslauthd -a shadow (加入这一行) 在postfix里启动saslauthed vi /etc/postfix/main.cf (添加如下几行) smtpd_sasl_uath-enable=yes (启到sasl2 认证) smtpd_sasl_local_domain='' (在这里设置的话 这个domain里的主机就不需要 SMTP 认证,但是sasl2里为个是不能设置的) smtpd_recipient_restrictions=permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination (什么条件下 接受客户端的relay功能) smtpd_client_restrictions=permit_sasl_authenticated (未经信认的客户端,就采用permit_sasl_authenticated这个认证方法) smtpd_sasl_security_options=noanoymous (限制一些登入方式,postfix中默认是使用plaintext方式认证的,所以不有取消,但可以用匿名登入方式(noanonymous) 6.认证情况 telnet localhost 25 ehlo localhost 如果 在第6行 看到 auth cram-md5 login digest-md5 plain 表示smtp以工作了。 进一步确认 假如我有一个帐号为 id:test pwd:123 我们进行如下验证 printf 'test\0test\0123' |mmencode 但是你先要装metamail-2.7-29.fc2.mok.i386.rpm 装metamail-2.7-29.fc2.mok.i386.rpm时 系统会调用sharutils 所以也要装 sharutils-4.2.1-12.i386.rpm rpm -ivh sharutils-4.2.1-12.i386.rpm rpm -ivh metamail-2.7-29.fc2.mok.i386.rpm 这样就可以了 printf 'test\0test\0123' |mmencode n12fja3fj32ak56ljflkf== telnet localhost 25 ehlo localhost plain n12fja3fj32ak56ljflkf== (输入这一行回车) 如果你看到 anutentication successful 表示成功了!恭喜 完成以上东东 你的postfix可以正常的跑起来了 再对主机进行一些设置就可以了 关与主机具体的设置我会尽快补充的 ̄ ̄........
################################################################
smtpd_sasl_auth_enable = yes
smtpd_sasl_local_domain = ''
smtpd_recipient_restrictions = permit_mynetworks,_
permit_sasl_authenticated,reject_unauth_destination
smtpd_client_restrictions = permit_sasl_authenticated
smtpd_sasl_security_options = noanonymous
################################################################
相关阅读 更多 +