Linux安装Sendmail

本文详细介绍如何通过RPM安装Sendmail及IMAP,并配置Sendmail服务器,包括基础配置、主机名称设定、权限设定等步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Sendmail (rpm安装 )
1、软件包的安装
sendmail-cf-8.13.8-2.el5 (一些设定文档)
sendmail-8.13.8-2.el5 (主要邮件程序)
m4-1.4.5-3.el5.1
mailx-8.1.1-44.2.2
rpm -ivh 安装(或在安装系统时选择 sendmail 服务)
2、用 RPM 安装 IMAP (提供 IMAP POP2 POP3 的相关功能)
cyrus-imapd-utils-2.3.7-2.el5
cyrus-imapd-2.3.7-2.el5
cyrus-imapd-perl-2.3.7-2.el5
cyrus-imapd-devel-2.3.7-2.el5
db4-devel-4.3.29-9.fc6
db4-4.3.29-9.fc6
db4-utils-4.3.29-9.fc6
lm_sensors-2.10.0-3.1
主要有以上的包,以上包是对应CentOS5 的,可以用 rpm -qa | grep 包名称 来查看对应包是否安装。
启动imap 并设置自动运行:
#service cyrus-imapd start
#chkconfig cyrus-imapd on
使用#lsof -i 110   查看 pop3 是否启动或使用 #ps -ef | grep pop /imap )查看 pop/imap 是否启动。
3、 Sendmail Server 的基础说明
Sendmail的配置文件几乎都在 /etc/mail 下面
设定文件 :
·/etc/mail/sendmail.cf Sendmail主要配置文件
·/etc/mail/local-host-names 处理一个主机同事拥有多个主机名称时的收发信件主机名称问题。如果想同时让两个主机名称都可以接受信件,则这两个hostname 就必须写入 local-host-names 中。一个主机名占一行。
·/etc/mail/access.db 规定谁可以或不可以使用本邮件服务器的数据库。要转成这个数据库需要有makemap 以及 /etc/mail/access 文档的配合
·/etc/aliases.db
·/etc/mail/statistics 记录Sendmail 收发信件的相关信息
执行文件 :
·/usr/sbin/makemap 主要将access 转换成 access.db 的数据库制作执行文件
·/usr/sbin/mailstats 查看到目前为止Sendmail 工作传送、接受多少邮件
邮件目录 :
·/var/spool/mail 邮件接受下来后,每个使用者信件放置的目录
·/var/spool/mqueue 当邮件暂时发布出去的时候暂存的目录
4、 M4程序的执行
如果在/etc/mail/sendmail.mc 中包含这样一句
include(`/usr/share/sendmail-cf/m4/cf.m4')
则可以直接执行#m4 sendmail.mc > sendmail.cf
如果不包含则:
#cd /etc/mail
#m4 /usr/share/sendmail-cf/m4/cf..m4 /
sendmail.mc > redhat.cf
5、 修改配置文件/etc/mail/sendmail.mc
#vi /etc/mail/sendmail.mc
找到:
DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, Name=MTA')
将它改为:
DAEMON_OPTIONS(`Port=smtp,Addr=0.0.0.0, Name=MTA')
保存后离开

重新制作档案
#m4 sendmail.mc > centos.cf
#mv sendmail.cf sendmail.cf.old
#cp centos.cf sendmail.cf
6、 启动mail Server
#/etc/rc.d/init.d/sendmail start
7、 Imap imap pop2 pop3 )的安装、启动


8、 设定主机名称
#cd /etc/mail
#vi local-host-names
test.org
设定主机名称test.org 有收信的资格
如果希望mail.test.org 也有收信资格就在 local-host-names 中添加一行
mail.test.org
9、 设定Mail Server 的使用权限 /etc/mail/access
(在其它机器上使用mail Server 来寄信)
#vi /etc/mail/access
192.168.0 RELAY 容许192.168.0.0/24 这个网段寄信
140.116.44.125 RELAY 允许一个具体的IP 可以寄信
h8h.com DISCARD 直接 丢弃 来自h8h.com 的邮件,不返回任何信息
192.168.1.100 DISCARD 直接 丢弃 192.168.1.100的邮件,不返回任何信息
test@test.domail.name REJECT 退回 这个地址的邮件, 回传一个信息
from:test@test.org REJECT 退回来自test@tesr.org 的信件
to:blah@test.org REJECT 退回发往blah@test.org 的信件
Sendmail 来规定范围,设定来源于目的
RELAY:允许该来源所传送过来的邮件可以被接受
REJECT:不接受对方的邮件信息,“并回传一个错误或警告信息给发信端”
DISCARD:不接受对方的邮件信息,直接将该信件“丢弃”
通常建议使用DISCARD
access中不支持网段的写法即:
192.168.0.0/24
192.168.0.0/255.255.255.0
最后: #makemap hash access.db < access 将配置信息写入到access.db
10、 设定使用者别名/etc/aliases
在邮件上面的收件人: 真实账号1 ,真实账号 2 ,真实账号 3 ……
Test test1 test2 test3
当发邮件给test 时,会自动复制成 4 封寄给 test1 test2 test3

编辑完/etc/aliases 后,一定要用 newaliases 命令将数据编程数据库。

邮箱别名:在/etc/aliases 最后加一行
别名: 真实账号
test1 test
(设置test1 test 的别名)
#newaliases
——————————————————————————————
档案类型的别名设置
/etc/mail/ 下新建一个文件
#vi /etc/mail/test
test1 /
test2 /
test3 /
……
编辑/etc/aliases
test: :include: /etc/mail/test
#newaliases
11、 设定邮件转递(~/.forward
当不是root 用户时设定邮件转递
在要进行转递的账号家目录下建立一个档案,档案名为~/.forward
#cd ~
#vi .forward
test
test1
test2
test@163.com
test@126.com
#chmod 644 .forward
当寄信给test 的时候,就可以将邮件寄给 .forward 中的其他账号。记得修改 .forward 用户的权限。
12、 两个相关命令
mailq:查看信件队列的内容
mailstats:邮件在 Mailer 中的统计状态。
13、 Linux下使用 mail
#mail fengjihu@163.com
Subject:This is a test mail
This is test mail
. #这个。就是结束符号,要正常离开编辑画面就是。!
Cc # 这个是副本

14、 SMTP认证启动流程
#vi /etc/mail/sendmail.mc
#找到
dnl TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
dnl define(`confAUTH_MECHANISMS', `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')
DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, Name=MTA')dnl
#改成
TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
define(`confAUTH_MECHANISMS', `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')
DAEMON_OPTIONS(`Port=smtp,Addr=0.0.0.0, Name=MTA')dnl

制作sendmail.cf 档案

#m4 sendmail.mc > sendmail.cf

重启Sendmail
#/etc/rc.d/init.d/sendmail restart

原文:http://gforce.blog.51cto.com/171824/192800

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值