REDHAT 5.5 X64
---------------------------
配置简单说明:
1。默认sendmail将25端口绑定到了127.0.0.1,致使无法通过其它主机来发邮件,因此,需要将其改为0.0.0.0
2。定义本地域名,这样,收到该域名的邮件后,sendmail就会将邮件投递到用户的指定邮箱中,否则,用户邮件可以到达邮件服务器,永远无法递送到用户的邮箱内
3。默认EMAIL只能发给该主机(即MTA)的用户,用户是无法向外发送邮件的。故,需要定义用户的邮件可以被转发到外部其它MTA(该方式有两种方法实现)
4。安装POP3客户端
Sendmail的安装:
1)安装包 sendmail 及sendmail-cf
2) /etc/mail/sendmail.mc 将127.0.0.1改为0.0.0.0,以允许其它主机通过这台MTA发邮件 将MC文件转换成CF文件:m4 sendmail.mc > sendmail.cf 这样完成后,一台客户端可以将邮件发送到该MTA的某个用户的邮箱内,但不能发送给其它MTA用户
3)/etc/mail/local-host-names 将 xxxxx.cn 域名写入,这样才能保证投递到此MTA的邮件可以正确的送达用户的邮箱 配完这个东西,外面的用户就应该可以发送邮件给某个用户了,否则,邮件送达不到每个人的邮箱
以上步聚以后,通过Outlook express/foxmail之类的客户端,可以彼此发送邮件了,但还不可以发送给外部邮箱。
要允许哪些人的邮件可以由MTA进行转发,有两种办法,一种是以某种形式定义具有该功能的用户,比如,按照客户端的IP地址,按照其EMAIL地址后缀。下面是就是采用这种方式,但这种方式极不灵活,而且极易造成OPEN RELAY的情况。(实际工作中,实际并未采用该方法,而是采用了下面介绍的用户验证法。)
A方式)/etc/mail/access,定义哪些发送者的邮件,可以通过该MTA送达到其它的MTA, 例:
Connect: 192.168.1 relay
nicetop.cn relay
生成.db文件 makemap hash access.db < access
可以将邮件发送给其它MTA用户了。
B方式)由于采用access.db的方法不太灵活,容易被人利用做为open relay,因此,采用用户验证的方式:即,如果用户要采用此MAIL SERVER做为MTA发送邮件,则必须首先通过用户验证。验证了的用户是可以进行邮件的RELAY的。
对于用户验证,RHEL 5采用的是sasl,我的系统rpm了下列模块
cyrus-sasl-plain-2.1.22-5.el5_4.3
cyrus-sasl-lib-2.1.22-5.el5_4.3
cyrus-sasl-2.1.22-5.el5_4.3
采用这种方式,需要更改sendmail.mc文件,以便enable该功能。
配置POP3
perl-DBI-1.52-2.el5.x86_64.rpm
mysql-5.0.77-4.el5_4.2.x86_64.rpm
postgresql-libs-8.1.18-2.el5_4.1.x86_64.rpm
dovecot-1.0.7-7.el5.x86_64.rpm (前面三个都是因为这个的相关性依赖)
起服务并配置service dovecot startchkconfig --level 35 dovecot on
貌似不用动配置文件,网上有文档说应该改动某个地方,将其它指定以POP3协议收取,实际中rpm完成以后就可以了。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
· 25岁的心里话