热门标签 | 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 数据库的迁移,包括从一个硬盘迁移到另一个硬盘、从一台计算机迁移到另一台计算机,以及解决迁移过程中可能遇到的问题。 ... [详细]
  • 本文介绍了一个基于 Java SpringMVC 和 SSM 框架的综合系统,涵盖了操作日志记录、文件管理、头像编辑、权限控制、以及多种技术集成如 Shiro、Redis 等,旨在提供一个高效且功能丰富的开发平台。 ... [详细]
  • PHP 编程疑难解析与知识点汇总
    本文详细解答了 PHP 编程中的常见问题,并提供了丰富的代码示例和解决方案,帮助开发者更好地理解和应用 PHP 知识。 ... [详细]
  • 本文介绍如何解决在 IIS 环境下 PHP 页面无法找到的问题。主要步骤包括配置 Internet 信息服务管理器中的 ISAPI 扩展和 Active Server Pages 设置,确保 PHP 脚本能够正常运行。 ... [详细]
  • 本文详细介绍了如何使用PHP检测AJAX请求,通过分析预定义服务器变量来判断请求是否来自XMLHttpRequest。此方法简单实用,适用于各种Web开发场景。 ... [详细]
  • 深入理解Cookie与Session会话管理
    本文详细介绍了如何通过HTTP响应和请求处理浏览器的Cookie信息,以及如何创建、设置和管理Cookie。同时探讨了会话跟踪技术中的Session机制,解释其原理及应用场景。 ... [详细]
  • 使用C#开发SQL Server存储过程的指南
    本文介绍如何利用C#在SQL Server中创建存储过程,涵盖背景、步骤和应用场景,旨在帮助开发者更好地理解和应用这一技术。 ... [详细]
  • 在使用SQL Server进行动态SQL查询时,如果遇到LIKE语句无法正确返回预期结果的情况,通常是因为参数传递方式不当。本文将详细探讨这一问题,并提供解决方案及相关的技术背景。 ... [详细]
  • 本文介绍了如何使用PHP代码实现微信平台的媒体素材上传功能,详细解释了API接口的使用方法和注意事项,确保文件路径正确以避免常见的错误。 ... [详细]
  • MySQL缓存机制深度解析
    本文详细探讨了MySQL的缓存机制,包括主从复制、读写分离以及缓存同步策略等内容。通过理解这些概念和技术,读者可以更好地优化数据库性能。 ... [详细]
  • 网络运维工程师负责确保企业IT基础设施的稳定运行,保障业务连续性和数据安全。他们需要具备多种技能,包括搭建和维护网络环境、监控系统性能、处理突发事件等。本文将探讨网络运维工程师的职业前景及其平均薪酬水平。 ... [详细]
  • 本文探讨了如何在Classic ASP中实现与PHP的hash_hmac('SHA256', $message, pack('H*', $secret))函数等效的哈希生成方法。通过分析不同实现方式及其产生的差异,提供了一种使用Microsoft .NET Framework的解决方案。 ... [详细]
  • 优化后的摘要:本文详细分析了当前面临的挑战和机遇,结合具体实例探讨了如何通过创新和改革来推动长期可持续发展。文中还介绍了多种可行的解决方案,并强调了在不同阶段实施这些方案的重要性。 ... [详细]
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社区 版权所有