电信主站 网通分站
购买流程 付款方式 常见问题 在线提问 续租服务 购物车
用户名: 密 码: 忘记密码?
首 页
域名注册
虚拟主机
双线主机
服务器租用
VPS主机
企业邮局
代理专区
客服中心
虚拟主机行业资讯 虚拟主机评测对比 互联网最新动态 技术学院 站长资讯 在线教程 网站运营
搜索优化 服务器 网络编程 图形图象 站长之家 网页制作 操作系统
冲浪宝典 软件教学 视频通信 办公软件 邮件系统 网络安全 认证考试
您当前位置:西部数码->资讯中心-> 在线教程-> 网管专栏
SendMail上手指南-网管专栏,邮件服务
作者:网友供稿 点击:19
  西部数码-全国虚拟主机10强!20余项虚拟主机管理功能,全国领先!第6代双线路虚拟主机,南北访问畅通无阻!虚拟主机可在线rar解压,自动数据恢复设置虚拟目录等.虚拟主机免费赠送访问统计,企业邮局.Cn域名注册10元/年,自助建站480元起,免费试用7天,满意再付款!P4主机租用799元/月.月付免压金!
文章页数:[1] 

为了能从网络上接收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提供的一些附加查错工具解决这些问题。


文章整理:西部数码--专业提供域名注册虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!
相关主题
文章页数:[1] 
Google
热门文章
·如何查看本机打开的端口是被哪个程序使用的-网管专栏,操作系统
·如何在多台电脑上同时安装Windows-网管专栏,操作系统
·网管人员必备的网络命令(转贴)-数据库专栏,SQL Server
·Postfix + Courier-IMAP + Cyrus-SASL + MySQL + IMP完全指南(新版)-网管专栏,邮件服务
·一个IP建多个Web站点--主机头名法-网管专栏,WEB服务
·WinXP/2003网络服务详解-网管专栏,操作系统
·电信网管中的Java客户端(二)-JSP教程,Java技巧及代码
·Resin在Windows系统下的安装-网管专栏,WEB服务
·在Win2k3下配置Apache+php+mysql-网管专栏,WEB服务
·服务器配置SSL-网管专栏,操作系统

最新文章
·如何查看本机打开的端口是被哪个程序使用的-网管专栏,操作系统
·服务器配置SSL-网管专栏,操作系统
·一个IP建多个Web站点--主机头名法-网管专栏,WEB服务
·如何在多台电脑上同时安装Windows-网管专栏,操作系统
·Linux内核技术分析-网管专栏,操作系统
·在Win2k3下配置Apache+php+mysql-网管专栏,WEB服务
·在Redhat Enterprise AS 3 下源码安装配置 MONO-网管专栏,WEB服务
·网管人员必备的网络命令(转贴)-数据库专栏,SQL Server
·WinXP/2003网络服务详解-网管专栏,操作系统
·Apache安装设置-网管专栏,WEB服务




版权申明:本站文章均来自网络,如有侵权,请联系我们,我们收到后立即删除,谢谢!

特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有。
  打印  刷新  关闭
返回首页 |关于我们 | 联系我们 | 付款方式 | 创业联盟 | 虚拟主机 | 资讯中心 | 友情链接 | 网站地图

版权所有 西部数码(www.west263.com)
CopyRight (c) 2002~2006 west263.com all right reserved.
公司地址:四川成都市万和路90号天象大厦4楼 邮编:610031
电话总机:028-86262244 86263048 86263408 86263960 86264018 86267838
售前咨询:总机转201 202 203 204 206 208
售后服务:总机转211 212 213 214
财务咨询:总机转224 223 传真:028-86264041 财务QQ:点击发送消息给对方635483282
售前咨询QQ:点击发送消息给对方2182518 点击发送消息给对方241975952 点击发送消息给对方275026793 点击发送消息给对方408235859
售后服务QQ:点击发送消息给对方17708515 点击发送消息给对方307742704 点击发送消息给对方287976517 点击发送消息给对方363783715
《中华人民共和国增值电信业务经营许可证》编号:川B2-20030065号