Chinaunix首页 | 论坛 | 博客
  • 博客访问: 570364
  • 博文数量: 201
  • 博客积分: 7734
  • 博客等级: 少将
  • 技术积分: 1994
  • 用 户 组: 普通用户
  • 注册时间: 2010-04-09 19:18
文章分类

全部博文(201)

文章存档

2011年(28)

2010年(173)

分类: LINUX

2010-06-17 23:53:50

MUA:
 邮件用户代理,用来给客户端收发邮件的工具,如雷鸟,windows下的foxmail。发:MUA通过SMTP(TCP25)
 来邮件推给MTA。收:MUA通过pop3功议TCP(110)到MTA上拉邮件。
MTA:
 邮件传送代理,MTA通过查看DNS的MX,也是通过SMTP把邮件推给对方。
MRA:
 邮件检索代理,查看邮件有没有问题,就是防垃圾。先有收的过程再检索。
只要DNS能解析到主机,就能发送邮件。
SMTP是由送的MTA提控的。POP3也是由MTA提控。

@  IN  MX   10     station3.example.com,如果没有定义这个记录,
缺省丢给服务器的A记录。

mail -s 'test' redhat1  这样走的是LMTP,本机发给本机的用户就是走这个协议。

To:user1@account.com   执行的人
Cc:manger@account.com  知道的人
Bcc:boss@account.com   暗送的人
用telnet来测试邮件服务器。它还可以来测试所有的协议。
Spamassassin  防垃圾工具。

邮件服务器也可以做虚拟主机。
sendmail 没有suid的功能,只监听在本地回环端,默认中继是关闭的,就是拒绝所有用户通过我向别人发邮件。
通过我向别人发邮件叫中继。
如果公司的出差,中继就不现实了,就用身份验证。

m4 sendmail.mc > sendmail.cf
dnl+空格  表示注释。
dnl DAEMON_OPTIONS(`Port=smtp,Addr=0.0.0.0, Name=MTA')
邮件服务器对时间非常敏感,可以用touch来改变文件的时间戳。
vim /etc/sysconfig/network  中的hostname
和vim /etc/hosts  中的   名字要相同,不然下次启动就会很慢。
两进两出,全局的和用户。
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-==-==-=-=-=-=-=-=-=
一、进来的配置:
1、dnl DAEMON_OPTIONS(`Port=smtp,Addr=0.0.0.0, Name=MTA')  监听全网
2、netstat -tulnp |grep sendmail
3、vim /etc/mail/local-host-names  
 station3.example.com
4、telnet 192.168.0.2 25    //在192.168.0.2上做。
   mail from

 rcpt to:redhat@station3.example.com
 data
 .
 quit    //成功
5、telnet 192.168.0.2 25
 mail from

 rcpt to:redhat@example.com
 data
 .
 quit    //失败   就是因为vim /etc/mail/local-host-names上没有写exampel.com的记录
stat=sent  表示邮件已经发送了。
stat=unknown name
dig -t mx mail.example.com
邮件队列的文件:cd /var/spool/mqueue
sendmail -q  强制打队列里的邮件发送出去。
vim /etc/mail/local-host-names  不要忘记了改别名。列出我计算机的主机的所有名字。
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-==-==-=-=-=-=-=-==-=-==-=-=-=-=-=-=-=
一、出去的配置:
1、vim /etc/mail/submit.cf
2、伪装:vim /etc/mail/sendmail.mc
EXPOSED_USER(`root')dnl
FEATURE(masquerade_envelope)dnl
MASQUERADE_AS(`google.com')dnl   只要把想伪装的域在这个改了就行了。
FEATURE(masquerade_entire_domain)dnl
怎么样让它回来是实际发送的用户名呢?
3、telnet 192.168.0.3 25
 mail from:

 rcpt to:
 data
 . 
 quit
4、用户  这个用户收到的邮件的发送都将会是。
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
二、进来的配置:
1、vim /etc/aliases   本地别名,只对于本地用户
伪造的名字       真实的名字
redhat:  redhat1 redhat2 redhat3   redhat   将发送给redhat的邮件,抄送给redhat1 redhat2 redaht3
编辑完后要用:newaliases重新生成一个数据库。
伪装的名字可以是系统中不存在的。
list: redhat,redhat1,redhat3
如果在企业里有很多用户,如果要群发,还支持别名的嵌套。
编辑了/etc/aliases后一定要用newalises生成数据库才行。
2、vim /etc/mail/virtusertable   可以跨域伪装。
@staion2.example.com 
@dom1.org   
把发进来为dom1.org的邮件转向dom2.org时而用户名不变。
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
二、出去本配置:会和全局冲突,冲突以全局的为准。
1、vim /etc/mail/sendmail.mc
 FEATURE(genericstable)
 FEATURE(`always_add_domain')
 GENETRICS_DONMAIN_FILE(`/etc/mail/local-host-names')
2、vim /etc/mail/genericstable
 
 
 
 可以对域进行伪装,也可以对用户名进行伪装。
3、怎么回来真正的用户呢?
 在vim /etc/mail/virtusertable中做进来的伪装。
 前面的必需在vim /etc/mail/local-host-names中有。
=====================================================
实验:
 两个域。

==============================================
vim /etc/mail/access  中继
Connect:192.168.0                   relay
connect:192.168.0.0/255.255.255.0   relay

From:           REJECT    服务器之间的关系
Connect:  服务器和客户端的关系
To:                       也是服务器之间的关系
 
 
阅读(674) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~