热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

redhatLinux系统配置sendmail服务过程详解

1.检查SendMail的安装包[root@sqlroot]#rpm-qa|grepsendmailsendmail-8.12.8-4sendmail-cf-8.12.8-4[root@sqlroot]#rpm-qa|grepm4m4-1.4.1-13[root@sqlroot]#rpm-qmailxmailx-8.1

1.检查Send Mail 的安装包

 

[root@sql root]# rpm -qa | grep sendmail

sendmail-8.12.8-4

sendmail-cf-8.12.8-4

 

[root@sql root]# rpm -qa | grep m4

m4-1.4.1-13

 

[root@sql root]# rpm -q mailx

mailx-8.1.1-28

 

2.IMAP 组件

[root@sql root]# rpm -qa | grep imap

php-imap-4.2.2-17

imap-2001a-18

 

如果有用DNS 那么DNS 的MX 要把mail加上

 

3.安装好上面的部分,就可以开始做一些sendmail 的相关设置

 1) 用M4 转换sendmail 所需的snedmail.cf

       #cd /etc/mail

       #m4 /usr/share/sendmail-cf/m4/cf.m4 /
>  sendmail.mc > redhat.cf

 

上面这一步是在sendmial.mc 文件中不包含有include(`/usr/share/sendmail-cf/m4/cf.m4') 时才需要做的一个转换动作。一般情况下不需要做。

2)已包含了直接做下面的动作(redhat.cf 就是sendmail.cf 的内容)

# m4 sendmail.mc > redhat.cf

 

3)备份sendmail.cf

#mv /etc/sendmail.cf /etc/sendmail.cf.old

# cp redhat.cf  /etc/mail/sendmail.cf

 

4.修改sendmail.mc 内的设定

1)修改

#cd /etc/mail

#vi sendmail.mc

 

找到下面这一段

DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, Name=MTA')
改成 (将Addr=设成你自已的IP)
DAEMON_OPTIONS(`Port=smtp,Addr=Your IP, Name=MTA')

保存离开

 

2)重新制定文档

#m4 sendmail.mc > redhat.cf

#mv sendmail.cf sendmail.cf.old

#cp redhat.cf sendmail.cf

 

5. 启动 Mail Server

1)启动sendmail

# /etc/rc.d/init.d/sendmail start

 

2)启动POP3协议

# cd /etc/xinetd.d

# vi ipop3

修改下面一行

disable = yes

将其改成

disable = no

保存离开

 

#/etc/rc.d/init.d/xinetd restart

 

查看监听和端口

#netstat  -tl

 

 

# /usr/sbin/sendmail -bd -q30m
参数说明:
-bd :表示将sendmail以daemon (可以想成常驻记忆体的类型)的类型启动!
-q : queue的意思,后面接的是时间参数,时间参数有:
s (秒) m(分) h(小时)及d(天)
-q30m表示每隔三十分钟,会将放置在邮件队列(一般是在/var/spool/mqueue )
的邮件尝试寄出一次!所以,上面的例子当中,说的是将sendmail以daemon
的类型启动之后,并且每30分钟去将邮件队列(为寄出的邮件)尝试寄出一次!

 

6. 设定主机名称

# cd /etc/mail
# vi local-host-names
sql.dba.com

 

7.设定邮件服务器的权限 /etc/mail/access

# vi /etc/mail/access

 

#预设情况下有启用的IP
localhost.localdomain RELAY
localhost RELAY
127.0.0.1 RELAY
#想要开放权限的IP与网域
192.168.6  RELAY
140.116.44.125 RELAY

#挡掉的IP、主机名称与E-mail
h8h.com DISCARD
192.168.1.100 DISCARD
xxx@xxx.domain.name REJECT
#储存后离开

 

 

8.设定使用者别名/etc/aliases

。。。

 

9.创建帐号,可以用useradd 添加,然后加到mail 组里面

或都用#init 5 进入图形下界面 更容易添加用户和组

 

10. 测试发送邮件

# telnet localhost 25

Trying 127.0.0.1...
Connected to localhost (127.0.0.1).
Escape character is '^]'.
220 vbird.adsldns.org ESMTP Sendmail 8.12.7/8.12.7; Sat, 22 Feb 2003 13:52:52 +0800
ehlo sql.dba.com <==跟主机打招呼!
250-vbird.adsldns.org Hello sql.dba.com [192.168.6.1], pleased to meet you
250-ENHANCEDSTATUSCODES
250-PIPELINING
250-8BITMIME
250-SIZE
250-DSN
250-ETRN
250-AUTH LOGIN PLAIN    <= 成功
250-DELIVERBY
250 HELP

 

 

11. 可以找另一台windows 的主机用outlook 来测试sendmail server

Smtp 和 pop3 都真linxu 的机器机名或IP

如: sql.dba.com 或 192.168.6.1


推荐阅读
  • 1:有如下一段程序:packagea.b.c;publicclassTest{privatestaticinti0;publicintgetNext(){return ... [详细]
  • 深入理解 SQL 视图、存储过程与事务
    本文详细介绍了SQL中的视图、存储过程和事务的概念及应用。视图为用户提供了一种灵活的数据查询方式,存储过程则封装了复杂的SQL逻辑,而事务确保了数据库操作的完整性和一致性。 ... [详细]
  • MySQL 数据库迁移指南:从本地到远程及磁盘间迁移
    本文详细介绍了如何在不同场景下进行 MySQL 数据库的迁移,包括从一个硬盘迁移到另一个硬盘、从一台计算机迁移到另一台计算机,以及解决迁移过程中可能遇到的问题。 ... [详细]
  • 本文详细介绍了 MySQL 中 LAST_INSERT_ID() 函数的使用方法及其工作原理,包括如何获取最后一个插入记录的自增 ID、多行插入时的行为以及在不同客户端环境下的表现。 ... [详细]
  • 本文详细介绍了IBM DB2数据库在大型应用系统中的应用,强调其卓越的可扩展性和多环境支持能力。文章深入分析了DB2在数据利用性、完整性、安全性和恢复性方面的优势,并提供了优化建议以提升其在不同规模应用程序中的表现。 ... [详细]
  • PHP 编程疑难解析与知识点汇总
    本文详细解答了 PHP 编程中的常见问题,并提供了丰富的代码示例和解决方案,帮助开发者更好地理解和应用 PHP 知识。 ... [详细]
  • 本文介绍如何解决在 IIS 环境下 PHP 页面无法找到的问题。主要步骤包括配置 Internet 信息服务管理器中的 ISAPI 扩展和 Active Server Pages 设置,确保 PHP 脚本能够正常运行。 ... [详细]
  • Windows服务与数据库交互问题解析
    本文探讨了在Windows 10(64位)环境下开发的Windows服务,旨在定期向本地MS SQL Server (v.11)插入记录。尽管服务已成功安装并运行,但记录并未正确插入。我们将详细分析可能的原因及解决方案。 ... [详细]
  • 本文详细介绍了如何使用PHP检测AJAX请求,通过分析预定义服务器变量来判断请求是否来自XMLHttpRequest。此方法简单实用,适用于各种Web开发场景。 ... [详细]
  • PHP 5.2.5 安装与配置指南
    本文详细介绍了 PHP 5.2.5 的安装和配置步骤,帮助开发者解决常见的环境配置问题,特别是上传图片时遇到的错误。通过本教程,您可以顺利搭建并优化 PHP 运行环境。 ... [详细]
  • 本文详细介绍了如何通过多种编程语言(如PHP、JSP)实现网站与MySQL数据库的连接,包括创建数据库、表的基本操作,以及数据的读取和写入方法。 ... [详细]
  • UNP 第9章:主机名与地址转换
    本章探讨了用于在主机名和数值地址之间进行转换的函数,如gethostbyname和gethostbyaddr。此外,还介绍了getservbyname和getservbyport函数,用于在服务器名和端口号之间进行转换。 ... [详细]
  • 在使用SQL Server进行动态SQL查询时,如果遇到LIKE语句无法正确返回预期结果的情况,通常是因为参数传递方式不当。本文将详细探讨这一问题,并提供解决方案及相关的技术背景。 ... [详细]
  • MySQL缓存机制深度解析
    本文详细探讨了MySQL的缓存机制,包括主从复制、读写分离以及缓存同步策略等内容。通过理解这些概念和技术,读者可以更好地优化数据库性能。 ... [详细]
  • 根据最新发布的《互联网人才趋势报告》,尽管大量IT从业者已转向Python开发,但随着人工智能和大数据领域的迅猛发展,仍存在巨大的人才缺口。本文将详细介绍如何使用Python编写一个简单的爬虫程序,并提供完整的代码示例。 ... [详细]
author-avatar
路路
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有