通讯是非常重要的。您的计算机可能正试图告诉您一些重要信息。但是,如果您没有正确配置邮件传输代理(MTA),则您可能收不到通知。Postfix是一种易于配置且具有强大安全记录的MTA。按照以下步骤确保从您的本地服务发送的电子邮件通知将通过PostfixMTA路由到您的Internet电子邮件帐户。安装包使用dnf安装一些必需的包(你应该配置了sudo,对吧?):$sudo-i#dnfinstallpostfixmailx如果你之前配置了不同的MTA,你可能需要将Postfix设置为系统默认值。使用alternatives命令设置系统默认MTA:$sudoalternatives--configmta有2个程序提供“mta”。SelectionCommand*+1/usr/sbin/sendmail.sendmail2/usr/sbin/sendmail.postfixEnter保持当前选择[+],或者输入选择编号:2创建一个password_maps文件你需要创建一个Postfixlookuptableentry使用您要用于发送电子邮件的帐户的地址和密码:#MY_EMAIL_ADDRESS=glb@gmail.com#MY_EMAIL_PASSWORD=abcdefghijklmnop#MY_SMTP_SERVER=smtp.gmail.com#MY_SMTP_SERVER_PORT=587#echo"[$MY_SMTP_SERVER]:$MY_SMTP_SERVER_PORT$MY_EMAIL_ADDRESS:$MY_EMAIL_PASSWORD">>/etc/postfix/password_maps#chmod600/etc/postfix/password_maps#unsetMY_EMAIL_PASSWORD#history-c如果您使用的是Gmail帐户,则需要使用“应用程序密码”配置Postfix而不是使用您的Gmail密码。有关配置应用程序密码的说明,请参阅使用应用程序密码登录。接下来,您必须针对Postfix查找表运行postmap命令以创建或更新Postfix实际使用的文件的散列版本:#postmap/etc/postfix/password_maps散列版本将具有相同的文件名,但后缀为.Db。Updatethemain.cffileUpdatePostfix'smain.cfconfigurationfiletoreferencethePostfixlookuptablejustcreated.编辑该文件并添加以下行:relayhost=smtp.gmail.com:587smtp_tls_security_level=verifysmtp_tls_mandatory_ciphers=highsmtp_tls_verify_cert_match=hostnamesmtp_sasl_auth_enable=yessmtp_sasl_security_options=noanonymoussmtp_sasl_password_maps=hash:/etc/postfix/password_maps这里假设您使用Gmail作为中继主机设置,但您可以使用正确的替换系统应向其发送邮件的邮件主机的主机名和端口。有关上述配置选项的最新详细信息,请参阅man帮助:$manpostconf.5启用、启动和测试Postfix更新main.cf文件后,启用并启动Postfix服务:#systemctlenable--现在postfix.service然后,您可以使用exit命令或Ctrl+D以root身份退出sudo会话。您现在应该能够使用邮件命令测试您的配置:$echo'Itworked!'|mail-s"Test:$(date)"glb@gmail.com更新服务,如logwatch、mdadm、fail2ban、已安装的apcupsd或certwatch,您现在可以更新它们的配置,以便它们的电子邮件通知发送到您的Internet电子邮件地址。此外,您可能希望将所有发送到本地系统根帐户的电子邮件转到互联网电子邮件地址,将以下行添加到系统的/etc/alises文件(您需要使用sudo编辑此文件,或切换torootaccount):root:glb+root@gmail.com现在运行这个命令重新读取别名:#newaliases提示:如果你使用的是Gmail,那么你可以在用户名和@符号之间添加字母数字标记,如上所示以便更轻松地识别和过滤从您的计算机收到的电子邮件。查看邮件队列的常用命令:$mailq清除队列中的所有邮件:#postsuper-dALL过滤设置获取感兴趣的值:$postconf|grep"^relayhost\|^smtp_"查看postfix/smtp日志:$journalctl--no-pager-tpostfix/smtp在进行配置更改后重新加载postfix:$systemctlreloadpostfix
