如何用solaris自带sendmail实现多域邮件服务

12/3/2006来源:Qmail人气:6571

我们先来配置DNS服务------ #本机hostname为mail
一.DNS配置用到下列文件、
1./etc/named.conf
2./var/named/abcedu.net.hosts(named.conf) #正向解析配置文件,即实现域名到ip的对应
3。/var/named/named.local #DNS反向解析配置文件,即实现IP地址很域名的映射
4./var/named/named.rev #DNS反向解析配置文件,即实现IP地址很域名的映射
5./var/named/abc.net.cn #要实现多域收发邮件的另一个域
6./etc/resolv.conf #定义本机所使用的域名服务器,最多三个IP
7./etc/hosts #主机名和对应IP

二.pop3 #要收发邮件当然要有此项服务啦

三.sendmail配置所需文件
几个相关文件:↓
/usr/lib/sendmail #实际运行的执行文件
/etc/mail/sendmail.cf #主配置文件
/var/spool/mqueue #邮件队列
/etc/default/sendmail #初始变量设置文件等等。
就是由/etc/init.d/sendmail启动/usr/lib/sendmail,
/usr/lib/sendmail加载/etc/mail/sendmail.cf里面关于sendmail的设置。
1./etc/mail/access #对付垃圾邮件,以及进行权限控制
2./etc/mail/aliases #别名设置
3./etc/mail/relay-domains #允许发邮件的IP列表,可将本公司IP段列入其中,功能与access相近
4./var/named/named.rev #DNS反向解析配置文件,即实现IP地址很域名的映射
________________________________________________

哈哈。。到此就可以用一个sendmail来支持简单的多域邮件收发工作了,(用户方面我还没想到办法区分域)
我们来找到相应进程并重启进程后就可以啦工作啦
________________________________________________

如何用solaris自带sendmail实现多域邮件服务
以下测试在solaris 5.7 系统测试通过;标题功能本例通过DNS+SENDMAIL+pop3实现
首先solaris5.7安装完毕,要实现多域邮件服务,必需前提是本机能够域名解忻。
_________________________________________________________________________________________________
我们先来配置DNS服务------ #本机hostname为mail
一.DNS配置用到下列文件
_________________________________________________________________________________________________
1./etc/named.conf
源文件:
options {
directory "/var/named"; #定义了named要读写文件的路径
};

zone "abcedu.net" in { #被解释的域名
type master;
file "abcedu.net.hosts";
};

zone "0.0.127.in-addr.arpa" {
type master; #表明服务器是主域名服务器
file "named.local";
};

zone "17.16.15.in-addr.arpa" in { #定义被解释网段
type master;
file "named.rev";
};

zone "." {
type hint; #表明在启动时被用来初始域名服务器的文件 file "named.cache"; #指定所要读取的文件名
};
_________________________________________________________________________________________________
2./var/named/abcedu.net.hosts(named.conf) #正向解析配置文件,即实现域名到IP的对应
源文件:
@ IN SOA mail.abcedu.net. root.mail.abcedu.net.
(20001220002 ; Serial #序列号
10800 ; Refresh 3 hours #刷新周期,以秒为单位
1800 ; Retry 30 minutes #循环周期
604800 ; Expire 7 days #中止时间
86400) ; Minimum 1 day #最少存活时间
IN NS mail.abcedu.net. #定义域名服务器
abcedu.net. IN MX 5 mail.abcedu.net.#定义邮件服务器,5表示优先级,越小越高
$ORIGIN abcedu.net.
;Define localhost
localhost IN A 15.16.17.18
abcedu.net. IN A 121.34.56.78 #实现域到IP的映射
;Define hosts in this zone
mail IN A 121.34.56.78
www IN A 121.34.56.78
_________________________________________________________________________________________________
3。/var/named/named.local #DNS反向解析配置文件,即实现IP地址很域名的映射
源文件:
@ IN SOA mail.abcedu.net. root.mail.abcedu.net.
(20001220001 ; Serial
10800 ; Refresh 3 hours
1800 ; Retry 30 minutes
604800 ; Expire 7 days
86400) ; Minimum 1 day

IN NS mail.abcedu.net.
IN NS mail.abc.net.cn.
IN NS mail.citsmdj.com.cn.
1 IN PTR localhost.
#其中那个1的意思是IP的最后一位,可以是0-255,它与
#/etc/named.conf中另外三位IP一起组成一个IP;定义逆向关系,
#即www.abcedu.net和127.0.0.1之间的对应。
_________________________________________________________________________________________________
4./var/named/named.rev #DNS反向解析配置文件,即实现IP地址很域名的映射
源文件:
@ IN SOA mail.abcedu.net. root.mail.abcedu.net.
(20001220001 ; Serial
10800 ; Refresh 3 hours
1800 ; Retry 30 minutes
604800 ; Expire 7 days
86400) ; Minimum 1 day
IN NS mail.abcedu.net.
18 IN PTR mail.abcedu.net.
#其中那个8的意思是IP的最后一位,可以是0-255,它与
#它与/etc/named.conf中另外三位IP一起组成一个IP;定义逆向关系,
#即www.abcedu.net和10.52.6.8之间的对应。
_________________________________________________________________________________________________


源文件:
@ IN SOA mail.abc.net.cn. root.mail.abc.net
(20001220002 ; Serial
10800 ; Refresh 3 hours
1800 ; Retry 30 minutes
604800 ; Expire 7 days
86400) ; Minimum 1 day
IN NS mail.abc.net.cn.
IN MX 10 mail.abc.net.cn.
abc.net.cn. IN MX 10 email.abc.net.cn.
$ORIGIN abc.net.cn.
abc.net.cn. IN A 121.34.56.78
localhost IN A 15.16.17.18
www IN A 121.34.56.78
mail IN A 121.34.56.78
_________________________________________________________________________________________________
6./etc/resolv.conf #定义本机所使用的域名服务器,最多三个IP
源文件:
domain abcedu.net.
nameserver 127.0.0.1
nameserver 15.16.17.18
nameserver 121.34.56.78
_________________________________________________________________________________________________
7./etc/hosts #主机名和对应IP
源文件:
# Internet host table
127.0.0.1 localhost
15.16.17.18 mail
#实现与网上其他主要计算机的映射,它通常是当作DNS的备份出现的,
#也就是说,当DNS系统出现问题的时候才使用Hosts表
_________________________________________________________________________________________________
二.pop3 #要收发邮件当然要有此项服务啦
qpopper-4.0.5-sol7-sparc-local #系统没有POP3我们找到二进制包来安装
#在网上找到合适版本下载到安装目录,本人用的是4.0.5
pkgadd -d qpopper-4.0.5-sol7-sparc-local #使用pkgadd -d 命令默认安装

安装成功之后到/etc/inetd.conf中加入下面行↓来启动POP3服务
pop3 stream tcp nowait root /usr/local/sbin/popper qpopper -s
_________________________________________________________________________________________________
三.sendmail配置所需文件
几个相关文件:↓
/usr/lib/sendmail #实际运行的执行文件
/etc/mail/sendmail.cf #主配置文件
/var/spool/mqueue #邮件队列
/etc/default/sendmail #初始变量设置文件等等。
就是由/etc/init.d/sendmail启动/usr/lib/sendmail,
/usr/lib/sendmail加载/etc/mail/sendmail.cf里面关于sendmail的设置。
_________________________________________________________________________________________________


系统自带sendmail默认情况下只能在本机发送邮件所以我们要进行配置
1./etc/mail/access #对付垃圾邮件,以及进行权限控制
access中有如下规则↓
relay #允许通过本地邮件服务器进行转发
OK #允许用户任意访问
reject #来访地址拒绝
discard #收到邮件后做删除处理
________________________________
abcedu.net OK #此处将本地域加入access***允许收发的域***本人认为必须加入
abc.net.cn OK #
@abcedu.net OK
@abc.net.cn OK
________________________________
例:
98.98 relay #来自98.98段的IP可以通过本地邮件服务器进行转发
201.201 reject #来自201.201段的访问全部会被拒绝
abc.com ok #来自abc.com域用户任意访问
定义完access文件后执行下面命令生成access.db库
makemap hash access________________________________________________________________________________________________
2./etc/mail/aliases #别名设置
a:b,c,d,a #发给a的邮件分发给b,c,d转回到a(不加最后的a可能会导制邮件丢失)
owner_a:b #当邮件发给a出错时,将错误信息发到b
a:b,a@163.com,a #可以实现跨域转发 将a的邮件转到a@163.com中一份
同样定义完aliases文件后执行下面命令生成aliases.db库
makemap hash aliases_________________________________________________________________________________________________
3./etc/mail/relay-domains #允许发邮件的IP列表,可将本公司IP段列入其中,功能与access相近
abcedu.net #此处将本地域列入其中***允许收发的域***本人认为必须加入
abc.net.cn
@abcedu.net
@abc.net.cn
_________________________________________________________________________________________________
4./etc/mail/sendmail.cf #公认的最麻烦的配置文件在本文中只做了少数改动
Cwlocalhost abcedu.net abc.net.cn #可以使用vi中的“/”查找命令找到本行.加上想要接收邮件的域 #名 *注意,本文中要实现的多域收发就在这此了^O^
_________________________________________________________________________________________________
哈哈。。到此就可以用一个sendmail来支持简单的多域邮件收发工作了,(用户方面我还没想到办法区分域)
我们来找到相应进程并重启进程后就可以啦工作啦
_________________________________________________________________________________________________

本文原地址:
http://blog.chinaunix.net/article.php?articleId=11561%26amp;blogId=1102

,