如何在 Ubuntu 22.04 LTS 上安装 Sendmail
admin
2023-07-31 03:36:12
0

Sendmail是一个开源邮件传输代理(MTA),用于使用服务器或使用shell命令路由电子邮件。它包括用于邮件传输和电子邮件传递的SMTP(简单邮件传输协议)。大多数系统管理员更喜欢使用 Sendmail 服务器作为 MTA,而不是其他 MTA。您还可以使用Sendmail服务器通过外部SMTP服务器(如Gmail,Amazon SES,MailChimp等)发送电子邮件。terminal-linux-logo-3terminal-linux-logo-3

在 Ubuntu 22.04 LTS Jammy Jellyfish 上安装 Sendmail

第 1 步。首先,通过在终端中运行以下命令,确保所有系统软件包都是最新的。apt

sudo apt update
sudo apt upgrade
sudo apt install wget apt-transport-https gnupg2 software-properties-common

第 2 步。在 Ubuntu 22.04 上安装 Sendmail。

默认情况下,Sendmail 在 Ubuntu 22.04 基本存储库中可用。现在运行以下命令,将最新版本的 Sendmail 安装到 Ubuntu 系统:

sudo apt install sendmail

第 3 步。配置主机名。

使用以下命令查找主机名:

hostname

接下来,使用您喜欢的文本编辑器打开文件:

nano /etc/hosts

在以 开头的行上,将 添加到末尾,如下所示。这应该在一行上:127.0.0.1hostname

127.0.0.1 localhost your-hostname

第4步。配置 SMTP。

现在我们在目录中创建一个用于 SMTP 配置的新目录:/etc/mail

sudo mkdir /etc/mail/authinfo

为文件设置正确的权限:

sudo chmod -R 700 /etc/mail/authinfo

然后,在新创建的目录中为 SMTP 身份验证创建一个新文件:

cd /etc/mail/authinfo
nano smtp-auth

添加以下行,并将电子邮件地址替换为您的登录电子邮件,将密码替换为您的密码:

AuthInfo: \"U:root\" \"I:your-email-address\" \"P:your-strong-password\"

保存并退出文件,然后,为上述创建的身份验证创建哈希数据库映射:

sudo makemap hash smtp-auth < smtp-auth

第5步。配置 SMTP。

现在我们切换到 Sendmail 配置目录并编辑文件:sendmail.mc

cd /etc/mail
nano sendmail.mc

在该行之后添加以下配置,并替换为您的 SMTP 主机名:MAILER _DEFINITIONSsmtp-host

define(`SMART_HOST\',`[smtp-host]\')dnl
define(`RELAY_MAILER_ARGS\', `TCP $h 587\')dnl
define(`ESMTP_MAILER_ARGS\', `TCP $h 587\')dnl
define(`confAUTH_OPTIONS\', `A p\')dnl
TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN\')dnl
define(`confAUTH_MECHANISMS\', `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN\')dnl
FEATURE(`authinfo\',`hash -o /etc/mail/authinfo/smtp-auth.db\')dnl

第 6 步。重建发送邮件配置。

现在使用以下命令重新构建 Sendmail 配置:

cd /etc/mail
sudo make

完成后,现在我们重新启动 Sendmail 服务:

sudo systemctl restart sendmail

步骤 7.用于发送电子邮件的简单PHP脚本。

现在,我们在Web文档根目录中创建一个PHP文件,其中包含以下内容。更改您的收件人电子邮件地址,并根据需要保持原样以进行测试,l 使用发件人电子邮件地址:send-email.php$to_email$subject$body$from_emai

nano send-email.php

添加以下示例 PHP 代码以发送电子邮件:

保存并关闭文件,然后在 Web 浏览器中通过访问对其进行测试,或者只需从命令行执行它,如下所示:

php send-email.php

输出:

Email successfully sent to recipient@idroot.us

感谢您使用本教程在 Ubuntu 22.04 LTS Jammy Jellyfish 系统上安装 Sendmail。有关其他帮助或有用信息,我们建议您查看 Sendmail 官方网站。

相关内容

热门资讯

Windows 11 和 10... Windows 11/10 文件夹属性中缺少共享选项卡 – 已修复 1.检查共享选项卡是否可用 右键...
Radmin VPN Wind... Radmin VPN 是一款免费且用户友好的软件,旨在牢固地连接计算机以创建一个有凝聚力的虚拟专用网...
如何修复 Steam 内容文件... Steam 内容文件锁定是当您的 Steam 文件无法自行更新时出现的错误。解决此问题的最有效方法之...
事件 ID 7034:如何通过... 点击进入:ChatGPT工具插件导航大全 服务控制管理器 (SCM) 负责管理系统上运行的服务的活动...
Hive OS LOLMine... 目前不清退的交易所推荐: 1、全球第二大交易所OKX欧意 国区邀请链接: https://www.m...
在 Windows 11 中打... 什么是链路状态电源管理? 您可以在系统控制面板的电源选项中看到链接状态电源管理。它是 PCI Exp...
如何在电报Telegram中隐... 点击进入:ChatGPT工具插件导航大全 在Android上的电报中隐藏您的电话号码 您可以通过切换...
如何在 iPhone 14 P... Apple 的 iPhone 14 Pro 是第一款配备 48MP 传感器的 iPhone。所有以前...
在 iCloud 上关闭“查找... 如果您是 Apple 的长期用户,您肯定会遇到过 Find My 应用程序,它本机安装在 iPhon...
Hive OS 部署 PXE ... 目前不清退的交易所推荐: 1、全球第二大交易所OKX欧意 国区邀请链接: https://www.m...