文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

如何在CentOS 8上安装和配置Postfix邮件服务器

2023-06-28 16:42

关注

如何在CentOS 8上安装和配置Postfix邮件服务器,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。

Postfix是一个开源的电子邮件服务器,。Postfix试图更快、更容易管理、更安全,同时还与sendmail保持足够的兼容性。

系统:CentOS 8 服务器

IP 地址:192.168.1.13

主机名:server1.crazytechgeek.info(确保域名指向服务器的 IP)

步骤 1)更新系统

第一步是确保系统软件包是最新的。为此,请按如下所示更新系统:

  1. # dnf update

继续之前,还请确保不存在其他 MTA(如 Sendmail),因为这将导致与 Postfix 配置冲突。例如,要删除 Sendmail,请运行以下命令:

  1. # dnf remove sendmail

步骤 2)设置主机名并更新 /etc/hosts

使用下面的 hostnamectl 命令在系统上设置主机名:

  1. # hostnamectl set-hostname server1.crazytechgeek.info

  2. # exec bash

此外,你需要在 /etc/hosts 中添加系统的主机名和 IP:

  1. # vim /etc/hosts

  2. 192.168.1.13   server1.crazytechgeek.info

保存并退出文件。

步骤 3)安装 Postfix 邮件服务器

验证系统上没有其他 MTA 在运行后,运行以下命令安装 Postfix:

  1. # dnf install postfix

如何在CentOS 8上安装和配置Postfix邮件服务器

Install-Postfix-Centos8

步骤 4)启动并启用 Postfix 服务

成功安装 Postfix 后,运行以下命令启动并启用 Postfix 服务:

  1. # systemctl start postfix

  2. # systemctl enable postfix

要检查 Postfix 状态,请运行以下 systemctl 命令:

  1. # systemctl status postfix

如何在CentOS 8上安装和配置Postfix邮件服务器

Start-Postfix-check-status-centos8

太好了,我们已经验证了 Postfix 已启动并正在运行。接下来,我们将配置 Postfix 从本地发送邮件到我们的服务器。

步骤 5)安装 mailx 邮件客户端

在配置 Postfix 服务器之前,我们需要安装 mailx,要安装它,请运行以下命令:

  1. # dnf install mailx

如何在CentOS 8上安装和配置Postfix邮件服务器

Install-Mailx-CentOS8

步骤 6)配置 Postfix 邮件服务器

Postfix 的配置文件位于 /etc/postfix/main.cf 中。我们需要对配置文件进行一些修改,因此请使用你喜欢的文本编辑器将其打开:

  1. # vi /etc/postfix/main.cf

更改以下几行:

  1. myhostname = server1.crazytechgeek.info

  2. mydomain = crazytechgeek.info

  3. myorigin = $mydomain

  4. ## 取消注释并将 inet_interfaces 设置为 all##

  5. inet_interfaces = all

  6. ## 更改为 all ##

  7. inet_protocols = all

  8. ## 注释 ##

  9. #mydestination = $myhostname, localhost.$mydomain, localhost

  10. ## 取消注释 ##

  11. mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain

  12. ## 取消注释并添加 IP 范围 ##

  13. mynetworks = 192.168.1.0/24, 127.0.0.0/8

  14. ## 取消注释 ##

  15. home_mailbox = Maildir/

完成后,保存并退出配置文件。重新启动 postfix 服务以使更改生效:

  1. # systemctl restart postfix

步骤 7)测试 Postfix 邮件服务器

测试我们的配置是否有效,首先,创建一个测试用户。

  1. # useradd postfixuser

  2. # passwd postfixuser

接下来,运行以下命令,从本地用户 pkumar 发送邮件到另一个用户 postfixuser。

  1. # telnet localhost smtp

  2. 或者

  3. # telnet localhost 25

如果未安装 telnet 服务,那么可以使用以下命令进行安装:

  1. # dnf install telnet -y

如前所述运行命令时,应获得如下输出:

  1. [root@linuxtechi ~]# telnet localhost 25

  2. Trying 127.0.0.1...

  3. Connected to localhost.

  4. Escape character is '^]'.

  5. 220 server1.crazytechgeek.info ESMTP Postfix

上面的结果确认与 postfix 邮件服务器的连接正常。接下来,输入命令:

  1. # ehlo localhost

输出看上去像这样:

  1. 250-server1.crazytechgeek.info

  2. 250-PIPELINING

  3. 250-SIZE 10240000

  4. 250-VRFY

  5. 250-ETRN

  6. 250-STARTTLS

  7. 250-ENHANCEDSTATUSCODES

  8. 250-8BITMIME

  9. 250-DSN

  10. 250 SMTPUTF8

接下来,运行橙色高亮的命令,例如 mail from、rcpt to、data,最后输入 quit:

  1. mail from:pkumar>

  2. 250 2.1.0 Ok

  3. rcpt to:postfixuser>

  4. 250 2.1.5 Ok

  5. data

  6. 354 End data with CR>LF>.CR>LF>

  7. Hello, Welcome to my mailserver (Postfix)

  8. .

  9. 250 2.0.0 Ok: queued as B56BF1189BEC

  10. quit

  11. 221 2.0.0 Bye

  12. Connection closed by foreign host

完成 telnet 命令可从本地用户 pkumar 发送邮件到另一个本地用户 postfixuser,如下所示:

如何在CentOS 8上安装和配置Postfix邮件服务器

Send-email-with-telnet-centos8

如果一切都按计划进行,那么你应该可以在新用户的家目录中查看发送的邮件:

  1. # ls /home/postfixuser/Maildir/new

  2. 1573580091.Vfd02I20050b8M635437.server1.crazytechgeek.info

  3. #

要阅读邮件,只需使用 cat 命令,如下所示:

  1. # cat /home/postfixuser/Maildir/new/1573580091.Vfd02I20050b8M635437.server1.crazytechgeek.info

如何在CentOS 8上安装和配置Postfix邮件服务器

Read-postfix-email-linux

Postfix 邮件服务器日志

Postfix 邮件服务器邮件日志保存在文件 /var/log/maillog 中,使用以下命令查看实时日志,

  1. # tail -f /var/log/maillog

如何在CentOS 8上安装和配置Postfix邮件服务器

postfix-maillogs-centos8

保护 Postfix 邮件服务器

建议始终确保客户端和 Postfix 服务器之间的通信安全,这可以使用 SSL 证书来实现,它们可以来自受信任的权威机构或自签名证书。在本教程中,我们将使用 openssl 命令生成用于 Postfix 的自签名证书,

我假设 openssl 已经安装在你的系统上,如果未安装,请使用以下 dnf 命令:

  1. # dnf install openssl -y

使用下面的 openssl 命令生成私钥和 CSR(证书签名请求):

  1. # openssl req -nodes -newkey rsa:2048 -keyout mail.key -out mail.csr

如何在CentOS 8上安装和配置Postfix邮件服务器

Postfix-Key-CSR-CentOS8

现在,使用以下 openssl 命令生成自签名证书:

  1. # openssl x509 -req -days 365 -in mail.csr -signkey mail.key -out mail.crt

  2. Signature ok

  3. subject=C = IN, ST = New Delhi, L = New Delhi, O = IT, OU = IT, CN = server1.crazytechgeek.info, emailAddress = root@linuxtechi

  4. Getting Private key

  5. #

现在将私钥和证书文件复制到 /etc/postfix 目录下:

  1. # cp mail.key mail.crt /etc/postfix

在 Postfix 配置文件中更新私钥和证书文件的路径:

  1. # vi /etc/postfix/main.cf

  2. ………

  3. smtpd_use_tls = yes

  4. smtpd_tls_cert_file = /etc/postfix/mail.crt

  5. smtpd_tls_key_file = /etc/postfix/mail.key

  6. smtpd_tls_security_level = may

  7. ………

重启 Postfix 服务以使上述更改生效:

  1. # systemctl restart postfix

让我们尝试使用 mailx 客户端将邮件发送到内部本地域和外部域。

从 pkumar 发送内部本地邮件到 postfixuser 中:

  1. # echo "test email" | mailx -s "Test email from Postfix MailServer" -r root@linuxtechi root@linuxtechi

使用以下命令检查并阅读邮件:

  1. # cd /home/postfixuser/Maildir/new/

  2. # ll

  3. total 8

  4. -rw-------. 1 postfixuser postfixuser 476 Nov 12 17:34 1573580091.Vfd02I20050b8M635437.server1.crazytechgeek.info

  5. -rw-------. 1 postfixuser postfixuser 612 Nov 13 02:40 1573612845.Vfd02I20050bbM466643.server1.crazytechgeek.info

  6. # cat 1573612845.Vfd02I20050bbM466643.server1.crazytechgeek.info

如何在CentOS 8上安装和配置Postfix邮件服务器

Read-Postfixuser-Email-CentOS8

从 postfixuser 发送邮件到外部域(root@linuxtechi.com):

  1. # echo "External Test email" | mailx -s "Postfix MailServer" -r root@linuxtechi root@linuxtechi

注意:如果你的 IP 没有被任何地方列入黑名单,那么你发送到外部域的邮件将被发送,否则它将被退回,并提示你的 IP 被 spamhaus 之类的数据库列入黑名单。

检查 Postfix 邮件队列

使用 mailq 命令列出队列中的邮件:

  1. # mailq

  2. Mail queue is empty

  3. #

ok!我们的 Postfix 配置可以工作了!

看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注编程网行业资讯频道,感谢您对编程网的支持。

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-服务器
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯