当前位置: 首页 > 图文教程 > 操作系统 > Unix/Linux > postfix+ldap+sasl2+courier-imap for freebsd完全ports

Unix/Linux
mysql+httpd+gd+php+zend
automake 小回顾
unix黑客精神的最好诠释
www
sun t3存储的设置
RPM简明中文手册
Linux爱好者入门教程 序章 (持续更新)
第一章 Linux基础知识 (飘心)
linux下进程与线程
浅谈如何学习linux
第二章 Linux安装
硬件安装指南
Windows 2000 的桌面不見了的解決方法
部分的ADSL路由器默认帐号密码
如何设定安全log服务器呢?
iptables 规则速查
网友学习 Linux 的七点忠告
sniffer的含义及原理
Linux编程白皮书 第二章 内存管理
Linux编程白皮书 第二章 内存管理 2.1.1 请求调页 --2.1.5 访问控制

Unix/Linux 中的 postfix+ldap+sasl2+courier-imap for freebsd完全ports


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-01   浏览: 117 ::
收藏到网摘: n/a

作者:柯贵中 网站:www.chinake.com QQ:93606088 邮箱:[email protected]
为什么使用FREEBSD?因为它有PORTS,有什么好处,就是你安装软件时就不用再考虑软件的依赖关系,它自己会添加的。这一点就足以位列所有的UNIX,包括类UNIX之首!!!!! 本文力求使用最简单的方法,构建出高效的大容量的邮件系统。本次实践过程中得到了hefish的鼓励和帮助,基本过程是hefish的KUNMAIL系统地freebsd上的一次试验。由于新版openldap对某些字段定义的变化,kunmail.schema需要作一些变动,liut对此作些改动mail.schema,同时也使用了陈景峰的postfix.schema。其实直接使用qmail.schema就挺好。 本文旨在帮助初学者,通过基本的架设过程,理解mail系统的基本原理,所以构建的系统也是最基本的,病毒防护和垃圾过滤网上的参照文件很多,就不写了。 本文假设你对类UNIX有一定的了解,最好是架设或使用过邮件系统。本文的重点在openldap,如果你想使用mysql,请参照我的另一篇文章。 本次试验在freebsd4.10下和freebsd5.4下成功通过。SASL2认证采用courier的AUTHDAEMOND认证,认证方式简单高效,只要courier认证通过,postfix认证肯定能通过。与postfix+mysql相比,只是数据库更改了,便于使用现有的经验来架设新的系统。 暂时只使用PLAIN LOGIN,大多数电信都是这两种,对于openldap来说,这种认证方式并不比其自已本身的认证更好(openldap原文),但与sasl2结合,可以有更高的、更安全的认证方式。 参考文章: 1、http://kunmail.cz8.net/ 2、http://www.huihoo.com/internet/postfix/pis/book1.html 第一章 系统准备 如果你能够安装基本系统,可以跳过本章。本文未特别申明的,一律是以root身份操作。 freebsd5.4安装 选择最小化安装,配置好网络,添加perl5.8软件包。 在本例中,机器名:mail.chinake.com 域名:chinake.com 默认网关:192.168.0.1 IP地址:192.168.0.66 1、cvsup安装 由于5.4将不少软件包放在第二张盘上,所以只有通过网络安装了。 设计pkg_add环境变量,使它使用国内的服务器,freebsd默认的shell是csh。 bash shell #export PACKAGEROOT="ftp://ftp.freebsdchina.org" csh shell #setenv PACKAGEROOT "ftp://ftp.freebsdchina.org" #pkg_add -r cvsup-without-gui 2、设计/etc/make.conf 添加 MASTER_SITE_OVERRIDE=ftp://ftp.freebsdchina.org/pub/FreeBSD/ports/distfiles/$ 3、更新ports树 #/usr/local/bin/cvsup -g -L 2 -h ftp.freebsdchina.org /usr/share/examples/cvsup/ports-supfile ; 第二章 邮件系统软件的安装 1、安装openssl #cd /usr/ports/security/openssl; make install clean 2 安装apache #cd /usr/ports/www/apache13-modssl;make install clean 支持https连接,web服务路径为:/usr/local/www/data/。也可以选择apache2。 #ee /etc/rc.conf;加入:apache_enable="YES" 3 安装php4 #cd /usr/ports/lang/php4;make install clean #cp /usr/local/etc/php.ini.dist /usr/local/etc/php.ini #ee /usr/local/etc/apache/httpd.conf 在最后加入: AddType application/x-httpd-php .php AddType application/x-httpd-php-source .phps 4 安装expect #cd /usr/ports/lang/expect #make install clean 5 安装SASL2 cd /usr/ports/security/cyrus-sasl2;make install WITH_AUTHDAEMON=yes clean; 或者使用:make -DWITH_AUTHDAEMOND install clean #ln -s /usr/local/lib/sasl2 /usr/lib/sasl2; 下面的这个smtpd.conf就是postfix调用的,很简单吧。 #ee /usr/local/lib/sasl2/smtpd.conf ; pwcheck_method: authdaemond log_level: 3 mech_list: PLAIN LOGIN authdaemond_path:/var/run/authdaemond/socket 6 安装courier-imap #cd /usr/ports/mail/courier-imap #make install clean 选择添加:[auth_ldap],[openssl],[gdbm]如果没有做,可以make config,进行重新选择。 然后编辑/etc/rc.conf;增加courier_authdaemond_enable="YES"自启动,并启动: #/usr/local/etc/rc.d/courier_authdaemond.sh start。 此时会在/var/run/authdaemond/下产生socket。 chmod +x /var/run/authdaemond; 给sasl可执行权限。 我们这里是使用authdaemond认证,不使用pam认证,所以以下的不需要做: In case you use authpam, you should put the following lines in your /etc/pam.d/imap auth required pam_unix.so try_first_pass account required pam_unix.so try_first_pass session required pam_permit.so 至此,认证部分基本完成。 7、openldap安装 #cd /usr/ports/net/openldap22-server; #make WITH_SASL=yes install clean; #ee /etc/rc.conf; 添加: slapd_flags='-h "ldapi://%2fvar%2frun%2fopenldap%2fldapi/ ldap://0.0.0.0/"' slapd_sockets="/var/run/openldap/ldapi" 我们来启动它: #/usr/local/etc/rc.d/slapd.sh start 8、 安装POSTFIX 3.3.1 cd /usr/ports/mail/postfix 安装时选中[sasl2