一、sendmail的简介
二、Sendmail的安装步骤
1.安装需要的软件:sendmail
m4
(自动转换工具)这两个已经默认安装,只需安装sendmail-cf
这个包即可,此包的作用是转换成易懂的配置。
2.rpm
-ivh
sendmail-cf-8.13.8-2.el5.i386.rpm
安装
service
sendmail
status
查看状态
netstat
-tupln
|grep
25
查看端口是否开启
3.ll
/home
查看/home下有哪些用户
4.useradd
user1
创建一个用户
5.echo
”123”
|passwd
–stdin
user1
为此用户创建一个密码
6.用系统的root用户给user1发送一个邮件如下图
7.
Server]#
su
–
user1切换到user1用户,mail查看邮件即可root@localhost
8.此情况监听的地址是本机的回环地址127.0.0.1,而其他的客户机根本无法发送邮件,要想任何客户机都能向它发送邮件,需要改配置文件如图无法连接
9.[root@localhost
~]#
vi
/etc/mail/sendmail.mc
去改变配置文件
文件内容在第116行:
DAEMON_OPTIONS(`Port=smtp,Addr=0.0.0.0,
Name=MTA’)dnl
地址改成0.0.0.0即可,保存,重启。如图连接已经成功
10.这样的情况下任何用户都能发送邮件给服务器,没有身份验证,没有加密,所以造成了很多的垃圾邮件。可以利用第三方软件加密。
三.一个案例mail服务器的配置
1.安装dns及所需要的各种软件包,如何安装略。
2.主要配置的就是重要的三个文件
(1)/etc/mail/mailsendmail.mc
(2)/etc/mail/access
(做中继的文件)
(3)/etc/mail/local-host-names
(本地域)
3.改主机名需要注意的文件
(1)/etc/sysconfig/network
HOSTNAME=mail.163.com(改成这个内容)
(2)/etc/hosts
将原来的名字删掉即可
4.配置dns
(1)cd
/var/named/chroot/etc/
vi
named.conf
全部改成any即可
(2)vi
named.rfc1912.zones
(3)[root@localhost
etc]#
cd
../var/named/
(4)[root@localhost
named]#
cp
-p
localhost.zone
163.com.zone
然后编辑此文件
(5)cp
-p
named.local
192.168.1.local
编辑此文件
(6)vi
/etc/resolv.conf
改dns指向本机服务器
(7)查看一下
(8)vim
/etc/mail/local-host-names
编辑本地域添加下面两行

163.com
mail.163.com
(9)要成功接收邮件还要安装dovecot
用yum安装有依赖关系
(10)[root@localhost
Server]#
yum
install
dovecot-1.0.7-7.el5.i386.rpm
chkconfig
dovecot
on
开机启动
(11)配置客户机的loutlook
如下,测试发送邮箱
(12)现状客户机上测试是否dns正常,需要注意的是客户机的dns指向一定是1.100的服务器才行
(13)切换用户查看发送状态
(14)要实现两台邮箱服务器之间通信,除了基本的配置以外还需要注意一些问题,因为服务器默认状态下不转发,不中继。
(15)假设这两台服务器分别是163.com和sina.com
(16)在163..com服务器上需要修改/var/named/chroot/etc/named.conf
在二十八行添加forwarders
{ip地址(sina.com上的地址)}在sina.com也要修改
(17)还要修改中继文件/etc/mail/access
(18)在163.com添加
163.com
ok
sina.com
RELAY
在sina.com做同样的修改。
sendmail 在linux 中如何启动
遇到启动vmware的linux系统时用很长时间,大部分时间都用来启动sendmail服务。
这种情况有几点需要注意就可以解决,
1. 检查主机名和IP是否正确,
/etc/hosts
/etc/sysconfig/network
2. 停掉sendmail服务,如果不用的话。
1) service sendmail stop
这种方法停止sendmail服务但在下次启动系统时sendmail服务仍然会被启动。
2) chkconfig 停止
# chkconfig –list sendmail
sendmail 0:off 1:off 2:on 3:on 4:on 5:on 6:off
可以看到2,3,4,5都是on状态
# chkconfig –level 2 sendmail off
# chkconfig –level 3 sendmail off
# chkconfig –level 4 sendmail off
# chkconfig –level 5 sendmail off
将2,3,4,5 level都关闭后,下次启动系统sendmail服务将不会自动启动。
3. ntsysv
该命令将打开一个列表,选择sendmail然后取消表示选中的星号保存退出。下次启动系统时就不会启动sendmail
sendmail的配置文件需要配置正确,由于sendmail的配置十分复杂。通常它的配置文件是sendmail.cf,位于/etc/mail目录下。由于sendmail.cf的语法深奥难懂,很少有人会直接去修改该文件来对Sendmail服务器进行配置。一般通过m4宏处理程序来生成所需的sendmail.cf文件。创建的过程中还需要一个模板文件,系统默认在/etc/mail目录下有一个sendmail.mc模板文件。
可以根据简单、直观的sendmail.mc模板来生成sendmail.cf文件,而无需直接编辑sendmail.cf文件。可以直接通过修改sendmail.mc模板来达到定制sendmail.cf文件的目的。这里介绍创建sendmail.cf文件的步骤:
(1)备份原有sendmail.cf文件
在终端命令窗口运行以下命令:
cp /etc/mial/sendmail.cf /etc/mail/sendmail.cf.BAK
(2)生成sendmail.cf文件
根据sendmail.mc模板文件产生sendmail.cf配置文件,并导出到/etc/mail/目录下:
m4 /etc/mail/sendmail.mc >/etc/mail/sendmail.cf
(3)重启sendmail服务
[root@ahpeng root] /etc/rc.d/init.d/sendmail restart
很明显在用m4宏编译工具创建sendmail.cf文件比较方便,而且不容易出错,更可以避免某些带有安全漏洞或者过时的宏所造成的破坏。一个sendmail.mc模板的大致内容如下:
divert(-1)dnl
……
include(’/usr/share/sendmail-cf/m4/cf.m4’)dnl
VERSIONID(’setup for Red Hat Linux’)dnl
OSTYPE(’linux’)dnl
……
dnl #
dnl define(’SMART_HOST’,’smtp.your.provider’)
dnl #
define(’confDEF_USER_ID’,’’8:12’’)dnl
define(’confTRUSTED_USER’, ’smmsp’)dnl
dnl define(′confAUTO_REBUILD′)dnl
……
这里介绍sendmail.mc模板的语法组成:
dnl:用来注释各项,同时dnl命令还用来标识一个命令的结束。
divert(-1):位于mc模板文件的顶部,目的是让m4程序输出时更加精简一些。
OSTYPE (’OperationSystemType’):定义使用的操作系统类型,显然这里应该用linux代替OperationSystemType,注意要用一个反引号和一个正引号把对应的操作系统类型括起来。
define:定义一些全局设置,对于Linux系统,设置了OSTYPE之后,可以定义下面的一些全局参数,如果不定义,就使用默认值。这里举两个简单例子:define(’ALIAS_FILE’,’/etc/aliases’)
定义别名文件(alia file)的保存路径,默认是/etc/aliases
define(’STATUS_FILE’, ’/etc/mail/statistics’)
sendmail的状态信息文件。
以上只是sendmai.mc的一些简单的语法解释,更多的参数含义及其配置信息可以参见http://www.sendmail.org/m4/tweaking_config.html。
3. 为新用户开电子邮件账号
在Linux里为新用户开设电子邮件账户比较简单,只需在Linux系统里新增一个用户即可。单击”主菜单→系统设置→用户和组群”菜单项,打开”Red Hat用户管理器”对话框,单击”添加用户”按钮,在出现的”创建新用户”对话框里指定用户名、登录口令即可,如图3所示。
假设我们添加了一个用户Peter(密码为peter),这样该用户就有了一个邮件地址Peter@YourDomain.com(此处的YourDomain.com用你自己域名代替)。
以上过程也可以在终端命令窗口运行以下命令来实现:
[root@ahpeng root]#adduser peter -p peter
其实,它是利用磁盘配额功能来实现的。电子邮件的暂存空间是在/var/spool/mail目录下,只要通过磁盘配额设定每一个用户在这个目录下能使用的最大空间即可。
[root@ahpeng root]#/etc/rc.d/init.d/xinetd reload
设置好以后,就可以在Outlook Express里面设置好邮件账号,以后就可以直接利用Sendmail服务器进行收发邮件了,由于邮件服务器就在本地局域网,所以速度很快。
以上就是关于sendmail邮箱服务器的配置全部的内容,如果了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!