postfix入门学习_开源邮件传输代理Postfix入门

postfix入门学习

Postfix是一个很棒的程序,可以路由电子邮件并将其传递到系统外部的帐户。 目前,约有33%的Internet邮件服务器使用它 。 在本文中,我将说明如何使用启用了双重身份验证的Gmail使用Postfix发送邮件。

但是,在启动并运行Postfix之前,您需要先排列一些项目。 以下是有关如何使其在多个发行版上运行的说明。

先决条件

  • 已安装的操作系统(Ubuntu / Debian / Fedora / Centos / Arch / FreeBSD / OpenSUSE)
  • 具有双重身份验证的Google帐户
  • 正常的互联网连接

步骤1:准备Google

打开网络浏览器并登录到您的Google帐户。 进入网站后,通过单击图片并选择“ Google帐户”来进行设置。 点击“登录和安全”,然后向下滚动到“应用密码”。 使用您的密码登录。然后您可以创建一个新的应用程序密码(我将其命名为“ postfix Setup”)。

Postfix - Google_setup_1_app_passwords.png

请注意疯狂的密码(如下所示),我将在本文中使用该密码。

Postfix - Google_setup_2_generated_password.png

步骤2:安装Postfix

在配置邮件客户端之前,需要先安装它。 您还必须安装mailutilsmailx实用程序,具体取决于所使用的操作系统。 以下是为每个操作系统安装它的方法:

Debian / Ubuntu

 apt-get update && apt-get install postfix mailutils 

软呢帽

 dnf update && dnf install postfix mailx 

Centos

 yum update && yum install postfix mailx cyrus-sasl cyrus-sasl-plain 

拱门

 pacman -Sy postfix mailutils 

FreeBSD


   
   
portsnap fetch extract update
cd /usr/ports/mail/postfix
make config

在配置对话框中,选择“ SASL支持”。 所有其他选项可以保持不变。

从那里: make install clean

安装mailx从二进制包: pkg install mailx

OpenSUSE

 zypper update && zypper install postfix mailx cyrus-sasl 

步骤3:设定Gmail验证

安装Postfix后,您可以设置Gmail身份验证。 由于您已经创建了应用密码,因此需要将其放在配置文件中并锁定下来,这样其他人都看不到它。 幸运的是,这很容易做到:

Ubuntu / Debian / Fedora / Centos / Arch / OpenSUSE

 vim /etc/postfix/sasl_passwd 

添加此行:

 [smtp.gmail.com]:587   ben.heffron@gmail.com:thgcaypbpslnvgce 

保存并关闭文件。 由于您的Gmail密码是以纯文本形式存储的,因此请确保只有root用户才能访问该文件,从而更加安全。

 chmod 600 /etc/postfix/sasl_passwd 

FreeBSD

 vim /usr/local/etc/postfix/sasl_passwd 

添加此行:

 [smtp.gmail.com]:587    ben.heffron@gmail.com:thgcaypbpslnvgce 

保存并关闭文件。 由于您的Gmail密码是以纯文本形式存储的,因此请确保只有root用户才能访问该文件,从而更加安全。

 chmod 600 /usr/local/etc/postfix/sasl_passwd 
Postfix - Google_setup_3_vim_config.png

步骤4:移动Postfix

这一步是“肉和土豆”-到目前为止,您所做的一切都是准备工作。

Postfix从main.cf文件获取其配置,因此此文件中的设置很关键。 对于Google,必须启用正确的SSL设置。

以下是您要在main.cf上输入或更新以使其能够与Gmail一起使用的六个选项(来自SASL自述文件 ):

  • smtp_sasl_auth_enable设置启用客户端身份验证。 我们将在示例的第二部分中配置客户端的用户名和密码信息。
  • relayhost设置强制Postfix SMTP将所有远程邮件发送到指定的邮件服务器,而不是尝试将其直接传递到目的地。
  • 使用smtp_sasl_password_maps参数,我们将Postfix SMTP客户端配置为将用户名和密码信息发送到邮件网关服务器。
  • Postfix SMTP客户端SASL安全选项是使用smtp_sasl_security_options设置的,具有很多选项。 在这种情况下,它将什么都没有。 否则,Gmail无法与Postfix完美配合。
  • smtp_tls_CAfile是包含受信任的根CA的CA证书的文件,该根CA可用来对远程SMTP服务器证书或中间CA证书进行签名。
  • 在“ 配置设置”页面上:当远程SMTP服务器宣布支持STARTTLS时, stmp_use_tls使用TLS,默认情况下不使用TLS。

Ubuntu / Debian / Arch

这三个操作系统将它们的文件(certificates和main.cf )保存在同一位置,所以这就是您需要在其中放置的所有内容:

 vim /etc/postfix/main.cf 

如果以下值不存在,请添加它们:


   
   
relayhost = [smtp.gmail.com]:587
smtp_use_tls = yes
smtp_sasl_auth_enable = yes
smtp_sasl_security_options =
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_tls_CAfile = /etc/ssl/certs/ca-certificates.crt

保存并关闭文件。

Fedora / CentOS

这两个操作系统基于相同的基础,因此它们共享相同的更新。

 vim /etc/postfix/main.cf 

如果以下值不存在,请添加它们:


   
   
relayhost = [smtp.gmail.com]:587
smtp_use_tls = yes
smtp_sasl_auth_enable = yes
smtp_sasl_security_options =
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_tls_CAfile = /etc/ssl/certs/ca-bundle.crt

保存并关闭文件。

OpenSUSE

 vim /etc/postfix/main.cf 

如果以下值不存在,请添加它们:


   
   
relayhost = [smtp.gmail.com]:587
smtp_use_tls = yes
smtp_sasl_auth_enable = yes
smtp_sasl_security_options =
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_tls_CAfile = /etc/ssl/ca-bundle.pem

保存并关闭文件。

OpenSUSE还要求您修改Postfix主进程配置文件master.cf 。 打开它进行编辑:

 vim /etc/postfix/master.cf 

取消注释以下行:

 #tlsmgr unix - - n 1000? 1 tlsmg 

它看起来应该像这样:

 tlsmgr unix - - n 1000? 1 tlsmg 

保存并关闭文件。

FreeBSD

 vim /usr/local/etc/postfix/main.cf 

如果以下值不存在,请添加它们:


   
   
relayhost = [smtp.gmail.com]:587
smtp_use_tls = yes
smtp_sasl_auth_enable = yes
smtp_sasl_security_options =
smtp_sasl_password_maps = hash:/usr/local/etc/postfix/sasl_passwd
smtp_tls_CAfile = /etc/mail/certs/cacert.pem

保存并关闭文件。

步骤5:设置密码文件

还记得您创建的密码文件吗? 现在,您需要使用postmap将其输入到Postfix中。 这是mailutilsmailx实用程序的一部分。

Debian,Ubuntu,Fedora,CentOS,OpenSUSE,Arch Linux

 postmap /etc/postfix/sasl_passwd 

FreeBSD

 postmap /usr/local/etc/postfix/sasl_passwd  

步骤6:获取Postfix槽

要使所有设置和配置正常工作,必须重新启动Postfix。

Debian,Ubuntu,Fedora,CentOS,OpenSUSE,Arch Linux

这些家伙使重新启动变得简单:

 systemctl restart postfix.service 

FreeBSD

要在启动时启动Postfix,请编辑/etc/rc.conf

 vim /etc/rc.conf 

添加行:

 postfix_enable=YES 

保存并关闭文件。 然后通过运行以下命令启动Postfix:

 service postfix start 

步骤7:测试

现在进行大结局-是时间对其进行测试以查看其是否有效。 mail命令是与mailutilsmailx一起安装的另一个工具。

 echo    Just testing my sendmail gmail relay" | mail -s "Sendmail gmail Relay" ben.heffron@gmail.com 

这就是我用来测试设置的内容,然后它出现在我的Gmail中。

Postfix - Google_setup_4_gmail.png

现在,您可以在Postfix设置中使用具有双重身份验证的Gmail。

翻译自: https://opensource.com/article/18/8/postfix-open-source-mail-transfer-agent

postfix入门学习

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,我可以帮你解答关于UbuntuPostfix +Dovecot邮件服务器搭建的问题。以下是大致的步骤: 1. 安装Postfix和Dovecot 在Ubuntu终端输入以下命令安装Postfix和Dovecot: ``` sudo apt-get update sudo apt-get install postfix dovecot-core dovecot-imapd dovecot-pop3d ``` 2. 配置Postfix 在终端中输入以下命令打开Postfix的主配置文件: ``` sudo nano /etc/postfix/main.cf ``` 在文件中搜索以下两行内容并进行修改: ``` myhostname = your_domain_name mydestination = your_domain_name, localhost.localdomain, localhost ``` 将“your_domain_name”替换为您的域名。 接下来,找到以下行并更改以允许邮件的发送和接收: ``` inet_interfaces = all ``` 最后,添加以下内容使Postfix能够与Dovecot一起工作: ``` home_mailbox = Maildir/ mailbox_command = ``` 保存并关闭文件。 3. 配置Dovecot 打开Dovecot的主配置文件: ``` sudo nano /etc/dovecot/dovecot.conf ``` 找到以下行并进行修改: ``` protocols = imap pop3 ``` 将其更改为: ``` protocols = imap pop3 lmtp ``` 然后,找到以下行并进行修改: ``` mail_location = mbox:~/mail:INBOX=/var/mail/%u ``` 将其更改为: ``` mail_location = maildir:~/Maildir ``` 保存并关闭文件。 4. 配置MySQL 如果您想要使用MySQL存储邮件,可以按照以下步骤进行配置: - 安装MySQL: ``` sudo apt-get install mysql-server ``` - 创建数据库和用户: ``` sudo mysql -u root -p ``` ``` CREATE DATABASE mailserver; CREATE USER 'mailuser'@'localhost' IDENTIFIED BY 'password'; GRANT ALL PRIVILEGES ON mailserver.* TO 'mailuser'@'localhost'; FLUSH PRIVILEGES; ``` - 创建表格: ``` sudo mysql -u mailuser -p mailserver < /etc/postfix/mysql_virtual_mailbox_domains.sql sudo mysql -u mailuser -p mailserver < /etc/postfix/mysql_virtual_mailbox_maps.sql sudo mysql -u mailuser -p mailserver < /etc/postfix/mysql_virtual_alias_maps.sql ``` 5. 重启服务 在终端中输入以下命令以重启Postfix和Dovecot: ``` sudo systemctl restart postfix sudo systemctl restart dovecot ``` 完成以上步骤后,您的Ubuntu邮件服务器将已经搭建完成。您可以测试是否正常工作,例如发送和接收一封电子邮件

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值