邮件系统 设为首页
加入收藏
总编信箱
| 第一邮局 | 免费邮箱 | 邮箱评测 | 企业邮局 | 移动邮件 | 邮件系统 | 邮件营销 | 反垃圾邮件 | 邮件客户端 | 邮件安全 |
当前位置:第一邮局>邮件系统>SendMail>文章内容

SendMail上手指南

来源:Mail1.com.cn 编辑:Mail 发布时间:2007-05-21 [收藏] [推荐] [评论(0条)]

为了能从网络上接收SMTP电子邮件,我们必须在Linux系统上运行Sendmail守护进程。命令是;
# /etc/rc.d/init.d/sendmail start
为了方便起见,我们应该使用ntsysv命令把Sendmail守护进程加到引导程序中,在多数情况下,安装时Linux就已经自动将Sendmail包含在引导程序中了。这样每次开机时,Linux都会启动Sendmail守护进程并侦听端口25,处理进入的邮件。
Sendmail的配置文件是/etc/sendmail.cf文件,它包含大部分的Sendmail配置的信息,包括在用户邮件程序和邮件传输程序之间为邮件选择路由所需的信息。Sendmail.cf文件有三个主要功能:
·定义Sendmail环境。
·按照接收邮件程序的语法重写地址。
·将地址映射成传送邮件所需的指令。
执行所有这些功能需要若干命令。一些宏定义和可选用的命令可定义其环境,一些重写规则可以重写电子邮件的地址,一些邮件程序定义可定义传送邮件所必需的指令。
sendmail.cf文件很大,看上去可复杂,但我们需要改动的地方很少。主要在local info中做文章。请在文件中寻找“Cw”,原来产生的cf 文件,Cw应是:
Cwlocalhost
# file containing names of hosts for which we receive email
# Fw/etc/sendmail.cw
请在localhost之后加上我们那一台机器所有可能用来当收信地址的主机的名字。例如,在局域网络Virtual Brewery中的一台机器叫:vlager.vbrew.com,而且也叫gopher.vbrew.com,而该网络的管理员希望这一台机器的这两个名字都能收信,那么他需要这样修改sendmail.cf文件:
Cwlocalhost vlager.vbrew.com gopher.vbrew.com
上面只是一种简便的方法,如果系统中运行着DNS,我们可以通过DNS来解析主机别名(如下所示),而不用加上主机别名gopher.vbrew.com。如果没有运行DNS,那么必须将本机器的所有名字都写上。
如果用作邮件服务器的主机有多个名字(hostname),例如:
vlager IN A 191.72.1.1
gopher IN CNAME vlager
那么我们可以不必在Cw上标明,系统会透过DNS 找到它的别名
如果一台机器有多个名字,但是每一个别名是用A record 建立的,例如:
vlager IN A 191.72.1.1
gopher IN A 191.72.1.1
在这种情况下【一定】要记得在Cw后写上所要收信主机的名字。如果忘记了,那么从外面寄来的以别名为地址的信件将无法正常接收,机器会抱怨:
“Local configuration error”
例如,如果在sendmail.cf中的Cw这行是Cw vlager.vbrew.com,那么局域网Virtual Brewery中的用户将无法使用邮件地址username@gopher.vbrew.com而只能用username@ vlager.vbrew.com,否则将出现上述错误。
如果一台机器有多interface,各interface有其本身的名字,而且要收信。这种情况也要在Cw之後写明所有要收信的hostname。
在我们的例子中F命令是作为注释处理的,如果去掉它前面的“#”号,那么sendmail将从/etc/sendmail.cw中读取主机的别名,并将别名储存在类w中。将F命令做注释处理,并让sendmail在内部定义别名这是一种最常用的方法。
打开/etc/mail/access文件时,会看到(注意一些系统的access文件不再/etc/mail下,如找不到请用whereis查找或检查是否安装正常):
# Check the /usr/doc/sendmail-8.9.3/README.cf file for a description
# of the format of this file. (search for access_db in that file)
# The /usr/doc/sendmail-8.9.3/README.cf is part of the sendmail-doc
# package.
#
# by default we allow relaying from localhost...
localhost.localdomain RELAY
localhost RELAY
如果我们主机的IP地址是191.72.1.1的话,就应该在最后一行加上它的记录项,这样,我们修改后的文件的最后三行应是:
localhost.localdomain RELAY
localhost RELAY
191.72.1.1 RELAY
加上这句话我们就可以用sendmail发送接收mail了。但是如果我们想让别人也可以使用sendmail的话,而他的IP是202.168.25.22,这样就在在最后一行加入他的主机的记录项,这时文件的最后四行应是:
localhost.localdomain RELAY
localhost RELAY
191.72.1.1 RELAY
202.168.25.22 RELAY
当我们考虑到多用户的时候,sendmail允许我们添入整个B类或C类地址,其格式如下:
localhost.localdomain RELAY
localhost RELAY
191.72 RELAY
202.168.25 RELAY
这样,我们就是把整个网络都加入的sendmail中,这个地址中的用户,如果在我们的系统里有账号的话,可以使用sendmail收发信件了。
Linux还允许我们设置邮局协议(POP)邮件服务器,POP协议分两个版本POP2和POP3,很显然POP3是新版本的邮局协议,现在Internet网上主要是POP3协议。POP3并不需要我们来配置,RedHat已经为我们做好了这一工作。我们只需要修改一下 /etc/inetd.conf文件,确保POP3能正常工作即可:
# vi /etc/inetd.conf
查找到:
# pop-3 stream tcp nowait root /usr/sbin/tcpd ipop3d
把这一行前面的“#”号删掉。然后修改/etc/services文件:
# vi /etc/services
在该文件中查找到
#pop-3 110/tcp # POP version 3
同样,将这一行前面的注释符“#”号删掉。之后使用下面的命令重新启动inetd和sendmail守护进程:
# /etc/rc.d/init.d/sendmail restart
# /etc/rc.d/init.d/inetd restart

在我们配置完sendmail后,可以运行以下的命令来检查目录的读写权限以检查潜在的安全漏洞。
# sendmail –b –vi
这时,sendmail将开始初始化alias数据,如果在屏幕上回显:
WARNING: writable directory /etc
WARNING: writable directory /usr/spool/mqueue
那么这个目录列出了不适当的写特权,应该使用chmod和 chown命令以避免多方面的的安全攻击。一般我们需要对如下目录运行chmod和chown命令:
# chmod go-w / /etc /etc/mail /usr /var /var/spool /var/spool/mqueue
# chown root / /etc /etc/mail /usr /var /var/spool /var/spool/mqueue
sendmail 的有一些参数可以用于验证地址处理的结果,以确保其新配置的合理性。一旦认为配置可以正常工作了,我们就可以选择各个站点上的朋友,并将邮件发送给他们。发送时使用-v参数就可以显示邮件传输的各个细节和两个站点之间进行SMTP交换的全过程。下面是一个测试的例子,使用的文件是test.cf,一旦测试成功,我们就可以将这个文件拷贝到/etc下并可以改名为sendmail.cf。
# sendmail –Ctest.cf –t –v
To:lack@vlager.vbrew.com
From:janet
Subject:Test for sendmail

Lack,please reply if you see this,Thanks.

^D
lark@ vlager.vbrew.com…..Connecting to vlager.vbrew.com via tcp…
Trying 191.72.1.1 ….connected.
220 VLAGER.VBREW.COM on Web, 30 Sep 99 16:23:23 CST
>>> HELLO maths.groucho.edu
250 VLAGER.VBREW.COM is my domain name
>>> MAIL From:< gauss.maths.groucho.edu.>
250 OK
>>> DATE
354 Enter mail body, End by new line with just a ‘.’
>>>.
250 Mail Delivered
>>> QUIT
221 VLAGER.VBREW.COM closing connection
lack@vlager.vbrew.com…sent
我们在CTRL-D之前输入所有的内容,而sendmail则显示^D之后的内容。通过对sendmail的测试,我们就可以发现潜在的配置问题,并使用sendmail提供的一些附加查错工具解决这些问题。


,
上一篇:企业Sendmail邮件服务器的创建   下一篇:Sendmail的邮件用户与系统用户分离
[365Key收藏] [雅虎收藏+] [返回顶部] [打印本页] [关闭窗口]  
邮箱   相关文章
·企业Sendmail邮件服务器的创建
·Sendmail的邮件用户与系统用户分
·sendmail文件相关说明
·关于sendmail.cf的简单解释
·配置高效的Sendmail服务器
·SendMail上手指南
·用Sendmail配置你的第一台e-mail
·Sendmail的relay用法汇总
·Sendmail中的SASL SMTP认证
·如何用solaris自带sendmail实现
·Sendmail 554 错误的解决
·监控你E-mail用户的邮件(sendma
免费邮箱 163邮箱  21CN邮箱  Gmail  Hotmail  QQ邮箱  SoGou邮箱  新浪邮箱  雅虎邮箱  
邮箱评测 企业邮箱评测  
企业邮局 企业邮箱  企业邮箱资讯  
移动邮件 技术前沿  手机邮件  
邮件系统 CMail Server  WinMail  SendMail  Qmail  Postfix  MDaemon Server  Lotus Notes  IMail Server  Foxmail Server  Exchange Server  Domino  Winwebmail  
邮件营销 网络营销  营销案例  营销技巧  邮件营销  
反垃圾邮件 Anti-Spam技术产品  新闻资讯  
邮件客户端 DreamMail  Foxmail  IncrediMail  KooMail  Outlook  The Bat!  
邮件安全
用户名: 新注册) 密码: 匿名评论
评论内容:(不能超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规。
 §最新评论
  热点文章
·Redhat8下Sendmail(邮件)的配
·配置高效的Sendmail服务器
·中小企业服务器配置-邮件服务器
·如何监控sendmail邮件系统中的用
·为 Sendmail 建立虚拟邮件域
·Sendmail MailScanner ClamA
·Linux 架设 sendmail MAIL
·在Linux系统下面架设Sendmail服
·部分sendmail中的高级设置
·Sendmail的安全解决方案
·FreeBSD Virtual Mail How-To
·十分钟快速架设Linux系统下WebMa
网站首页 -  网站地图 -  域名注册 -  虚拟主机 -  企业邮箱  -  网站投稿  -  广告联系 -  帮助中心  -  

Copyright 2007-2008 Mail1.com.cn All Rights Reserved
本站内容均来自网络,如果侵犯版权请来信告知,核实后我们会在24小时删除 联系方式:
第一邮局QQ群:14743955 E-mail:www@onlinex.com.cn