热门标签 | HotTags
当前位置:  开发笔记 > 后端 > 正文

fedora系统中配置sendmail邮件服务器

安装必要的软件(1)查询rpm-qasendmailm4有结果显示证明已经安装了必要的软件,没有显示请使用yuminstallsendmail命令进行安装(可以上网的情况下)或者利用系统盘进行安装(有光盘的话,iso文件也可以)(2)安装关联的套件sendmail-dev,sendmai-do
安装必要的软件
(1)查询rpm-qa sendmail m4
有结果显示证明已经安装了必要的软件,没有显示请使用yum install sendmail命令进行安装(可以上网的情况下)或者利用系统盘进行安装(有光盘的话,iso文件也可以)
(2)安装关联的套件
sendmail-dev,sendmai-doc sendmail-cf
推荐使用yum安装(yum install sendmai*或者挂载光盘进行安装rpm-ivh sendmail-*)
(3)配置域名
vi /etc/mail/local-host-names打开这个文件然后在里面加入你想发邮件的时候用到的域名(可以是虚拟的,但不推荐使用现存的,有侵权的嫌疑~也容易发生错误)例如
[root@localhostnamed]#cat /etc/mail/local-host-names
#local-host-names-include all aliases for your machine here.
ltest.com
test.com就是你想要填的~~~
(4)重建sendmail.cf
sendmail.cf是sendmail的配置文件,通过修改sendmail.mc文件进行修改,
DaemOnPortsOptions=Port=smtp,Addr=127.0.0.1,Name=MTA更改为:
DaemOnPortsOptions=Port=smtp,Addr=yourip或者0.0.0.0,Name=MTA
或者把这一行用dnl注释掉(就是在这一行前面加入dnl然后空格dnl的意思,按照linux系统管理手册的解释就是deletetonextlin的意思有位仁兄解释为donotload看上去也正确,倒是是那个意思我就不管了,明白意思就好了)
然后m4/etc/mail/sendmail.mc>/etc/mail/sendmail.cf(重建sendmail.cf或者可以先备份,各人喜欢~~)
(5)修改用户认证
还是上面那个文件vi /etc/mail/sendmail.mc进入到里面以后找到
48行dnlTRUST_AUTH_MECH(`EXTERNALDIGEST-MD5CRAM-MD5LOGINPLAIN")dnl
49行dnldefine(`confAUTH_MECHANISMS",`EXTERNALGSSAPIDIGEST-MD5CRAM-MD5LOGINPLAIN")dnl
#?h掉上面?尚星懊娴?nl
#注意:TRUST_AUTH_METH、define前面不要留有空格
112行dnlDAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1,Name=MTA")dnl
#前面加上dnl,把?行?解起?恚?nl=donotload)
#或改成下面??右部梢?br /> DAEMON_OPTIONS(`Port=smtp,Addr=0.0.0.0,Name=MTA")dnl
注:上面修改用户认证这一段是引用我转载的一篇文章的:
(6)修改端口
  dnlDAEMON_OPTIONS(`Port=submission,Name=MSA,M=Ea")dnl
  去掉行首的注释符,并且将内容修改成Port=25:
  DAEMON_OPTIONS(`Port=25,Name=MSA")dnl
  在smtp的默认端口(25)上进行认证,而不是587端口。这样就强制所有使用该邮件服务器(就是我们现在架设的这个服务器)进行邮件转发的用户在认证后才能发邮件了。
再次运行m4程序 
 #m4 /etc/mail/sendmail.mc > /etc/sendmail.cf
  用m4重新生成sendmail.cf文件
(7)添加邮件用户
建立用户帐号
[root@localhostnamed]#groupaddmailuser
[root@localhostnamed]#adduser-gmailuser-s/sbin/nologinmike
[root@localhostnamed]#adduser-gmailuser-s/sbin/nologinjohn
[root@localhostnamed]#passwdmike
[root@localhostnamed]#passwdjohn密码由你自己喜欢用户也随你喜欢添加几个(这一段引用另一篇转载的文章)
(8)访问控制
5,访问控制设置
更改/etc/mail/accesss文件,增加:
[root@localhostnamed]#cat/etc/mail/access
#Checkthe/usr/share/doc/sendmail/README.cffileforadescription
#oftheformatofthisfile.(searchforaccess_dbinthatfile)
#The/usr/share/doc/sendmail/README.cfispartofthesendmail-doc
#package.
#
#bydefaultweallowrelayingfromlocalhost...
localhost.localdomainRELAY
localhostRELAY
127.0.0.1RELAY
ltest.comRELAY(这个就是你自己填到local-host-names里面的名字,一定要写[其实我也不肯定,不过我是写了因为我最近时间比较紧迫,没有进行验证,希望看了的朋友帮忙验证一下])
完成后makemaphash/etc/mail/access.db (9)重启服务
[root@localhostnamed]#servicesendmailrestart
看到
关闭sm-client:[确定]
关闭sendmail:[确定]
启动sendmail:[确定]
启动sm-client:[确定]
就正确了(后面两个是确定就可以了,因为如果服务还没有启动的华关闭服务会事失败的)
(10)测试服务器
[root@localhostnamed]#telnetlocalhost25
Trying127.0.0.1...
Connectedtolocalhost.localdomain(127.0.0.1).
Escapecharacteris"^]".
220localhost.localdomainESMTPSendmail8.13.1/8.13.1;Sat,17Mar200712:54:47+0800
ehlolocalhost(用户输入)
250-localhost.localdomainHellolocalhost.localdomain[127.0.0.1],pleasedtomeetyou
250-ENHANCEDSTATUSCODES
250-PIPELINING
250-8BITMIME
250-SIZE
250-DSN
250-ETRN
250-AUTHDIGEST-MD5CRAM-MD5LOGINPLAIN---认证应该生效
250-DELIVERBY
250HELP
quit(用户输入退出telnet)
2212.0.0localhost.localdomainclosingconnection
Connectionclosedbyforeignhost.
看见这些信息就代表成功了
然后就可以使用php的邮件类(网上很多,不好意思,没办法传上来,或者有需要的话,过些时候我会把我用的粘贴上来)在server(邮件服务器这个变量)填上"localhost"用户邮箱(本服务器[刚弄好这个])就填刚刚添加上去的用户名+在local-host-names填上的域名就可以在收件人那里显示了(尽管可能是虚拟的)例如mike@test.com密码就是刚刚用户的密码(这是需要验证的smtp邮件程序)port就是25这样你就可以用你刚刚架好的这台服务器进行邮件的发送了!

推荐阅读
  • 本文详细介绍了 SVN 中的 switch 命令及其使用方法,包括如何切换工作副本到新的 URL 和如何处理版本库迁移等情况。 ... [详细]
  • 优化联通光猫DNS服务器设置
    本文详细介绍了如何为联通光猫配置DNS服务器地址,以提高网络解析效率和访问体验。通过智能线路解析功能,域名解析可以根据访问者的IP来源和类型进行差异化处理,从而实现更优的网络性能。 ... [详细]
  • 如何配置Unturned服务器及其消息设置
    本文详细介绍了Unturned服务器的配置方法和消息设置技巧,帮助用户了解并优化服务器管理。同时,提供了关于云服务资源操作记录、远程登录设置以及文件传输的相关补充信息。 ... [详细]
  • 本文深入探讨了Linux系统中网卡绑定(bonding)的七种工作模式。网卡绑定技术通过将多个物理网卡组合成一个逻辑网卡,实现网络冗余、带宽聚合和负载均衡,在生产环境中广泛应用。文章详细介绍了每种模式的特点、适用场景及配置方法。 ... [详细]
  • 掌握远程执行Linux脚本和命令的技巧
    本文将详细介绍如何利用Python的Paramiko库实现远程执行Linux脚本和命令,帮助读者快速掌握这一实用技能。通过具体的示例和详尽的解释,让初学者也能轻松上手。 ... [详细]
  • 本文详细分析了Hive在启动过程中遇到的权限拒绝错误,并提供了多种解决方案,包括调整文件权限、用户组设置以及环境变量配置等。 ... [详细]
  • 使用Vultr云服务器和Namesilo域名搭建个人网站
    本文详细介绍了如何通过Vultr云服务器和Namesilo域名搭建一个功能齐全的个人网站,包括购买、配置服务器以及绑定域名的具体步骤。文章还提供了详细的命令行操作指南,帮助读者顺利完成建站过程。 ... [详细]
  • 在现代网络环境中,两台计算机之间的文件传输需求日益增长。传统的FTP和SSH方式虽然有效,但其配置复杂、步骤繁琐,难以满足快速且安全的传输需求。本文将介绍一种基于Go语言开发的新一代文件传输工具——Croc,它不仅简化了操作流程,还提供了强大的加密和跨平台支持。 ... [详细]
  • 优化局域网SSH连接延迟问题的解决方案
    本文介绍了解决局域网内SSH连接到服务器时出现长时间等待问题的方法。通过调整配置和优化网络设置,可以显著缩短SSH连接的时间。 ... [详细]
  • 本文介绍如何在Linux Mint系统上搭建Rust开发环境,包括安装IntelliJ IDEA、Rust工具链及必要的插件。通过详细步骤,帮助开发者快速上手。 ... [详细]
  • 本文详细介绍了如何正确配置Java环境变量PATH,以确保JDK安装完成后能够正常运行。文章不仅涵盖了基本的环境变量设置步骤,还提供了针对不同操作系统下的具体操作指南。 ... [详细]
  • 本文将详细介绍通过CAS(Central Authentication Service)实现单点登录的原理和步骤。CAS由耶鲁大学开发,旨在为多应用系统提供统一的身份认证服务。文中不仅涵盖了CAS的基本架构,还提供了具体的配置实例,帮助读者更好地理解和应用这一技术。 ... [详细]
  • 请看|间隔时间_Postgresql 主从复制 ... [详细]
  • 本文介绍了如何在 Ubuntu 18.10 Cosmic 停止官方支持后,通过更换软件源来解决 `apt update` 失败的问题。 ... [详细]
  • 部署新的ASP.NET Web应用程序构建(主要涉及DLL文件更改)后,服务器上的CPU使用率每几秒就会飙升至100%,问题似乎源自lsass.exe进程。这一现象与应用程序部署之间是否存在直接关联? ... [详细]
author-avatar
舞倾城2010_217
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有