mailx邮件服务器的配置

mailx 是一个 Linux 和 Unix 系统上常用的命令行邮件客户端,主要用于发送和接收邮件。可以通过 mailx 配置 SMTP 服务器来发送邮件。

自己的服务器在邮件发送过程中起什么作用?

在使用第三方邮件服务器(如 smtp.163.com)发送邮件时,你的服务器充当了一个客户端,主要的作用是:

  • 发起请求 :你的服务器通过 mailx 或其他邮件发送工具将邮件发送请求发给 163 的 SMTP 服务器。
  • 邮件内容生成:邮件内容和格式(如主题、正文、附件等)由你的服务器生成,然后通过 SMTP 协议传递给外部的 163 邮箱服务器。
  • 认证和安全传输:你在配置中提供的邮箱账户、授权码等信息会用于在服务器之间进行身份验证,确保只有经过授权的用户才能通过 163 的 SMTP 服务器发送邮件。

3. 邮件发送的详细过程

邮件发送过程大致分为以下步骤:

  1. 本地生成邮件 :你在自己的服务器上通过 mailx 等工具生成邮件内容,包括发件人、收件人、主题、正文等信息。

  2. 发起 SMTP 连接 :你服务器通过 SMTP 协议连接到 163 邮箱的 SMTP 服务器(smtp.163.com),并进行身份认证(使用邮箱账号和授权码)。

  3. 传输邮件:经过认证后,你的服务器将邮件内容(包括标题、正文、附件等)发送给 163 的 SMTP 服务器。

  4. SMTP 服务器处理邮件 :163 的 SMTP 服务器会根据邮件中的收件人地址,决定将邮件投递到哪个目标邮件服务器(如 gmail.com 的邮件服务器)。

  5. 目标邮件服务器投递:目标邮件服务器接收到邮件后,将邮件投递到收件人邮箱。如果目标邮件服务器不信任发件服务器(如缺乏 SPF、DKIM 或邮件看似来自恶意源),邮件可能会被拒绝或标记为垃圾邮件。

Centos安装:

bash 复制代码
sudo yum install mailx

Ubuntu安装:

bash 复制代码
sudo apt-get install mailutils

修改配置文件/etc/mail.rc:

bash 复制代码
set bsdcompat
set from="jack372245928@163.com"          # 发送者邮箱地址
set smtp="smtp.163.com"                    # SMTP 服务器地址
set smtp-auth-user="jack372245928@163.com"  # SMTP 认证用户名(邮箱地址)
set smtp-auth-password="你的邮箱授权码"   # SMTP 认证密码(授权码)
set smtp-auth=login                       # SMTP 认证方式

测试:

bash 复制代码
echo "测试邮件内容" | mailx -s "测试邮件" recipient@example.com
相关推荐
历程里程碑3 小时前
4 Git远程协作:从零开始,玩转仓库关联与代码同步(带实操代码讲解)
大数据·c++·git·elasticsearch·搜索引擎·gitee·github
天若有情6734 小时前
自己开发一款极简 Vanilla 原生前端框架,已开源上架 NPM & GitHub
前端框架·npm·github
fthux5 小时前
用了 GitZip 这么多年,我动手做了一个「Pro」版
人工智能·开源·github
yuanyuan2o28 小时前
Git merge 的几种不同模式
git·github
AC赳赳老秦10 小时前
财务报销自动化:用 OpenClaw 自动识别发票信息、填写报销单、校验报销规则,减少手工操作
运维·网络·eclipse·github·visual studio·deepseek·openclaw
无限进步_10 小时前
二叉搜索树完全解析:从概念到实现与应用场景
c语言·开发语言·数据结构·c++·算法·github·visual studio
@_@ prince @_@15 小时前
Git 命令大全(带详细说明)
git·gitee·github·visual studio
zhangfeng113316 小时前
平替 Claude Code 类似的开源项目 — GitHub Star 前十排名
开源·github·claude code
DogDaoDao17 小时前
【GitHub】Warp 终端深度解析:Rust + GPU 加速的 AI 原生终端开源架构
人工智能·程序员·rust·开源·github·ai编程·warp