You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

关于Zabbix所使用邮件发送工具的技术咨询

关于Zabbix所使用邮件发送工具的技术咨询

提问内容:

我在Ubuntu LTS 22.04上部署的最新版Zabbix(v6.4)邮件通知功能运行得很顺畅。为了避免重复部署邮件服务,我想直接复用Zabbix的这套邮件发送能力,给同一服务器上的其他非Zabbix自定义脚本发邮件。不过我用sudo apt list --installed命令查看已安装包时,并没有找到postfix、sendmail这类我熟悉的邮件程序。

有没有大佬知道Zabbix到底是用什么来发送邮件的呀?


解答:

兄弟,这事儿我门儿清!Zabbix 6.x(包括你用的6.4版本)的邮件发送逻辑其实很灵活,不一定依赖本地的MTA(邮件传输代理,比如postfix、sendmail),这就是你查不到那些包的原因,具体分两种情况:

  • 直接对接外部SMTP服务器:这是Zabbix 6.x最常用的配置方式。你可以登录Zabbix前端,进入【管理】->【媒介类型】,看看是不是配置了Email (SMTP)类型。如果是,那Zabbix就是直接通过你填写的外部SMTP地址、端口、账号密码等参数发送邮件,完全绕开了本地的邮件服务程序,自然本地不需要装postfix这类包。
  • 调用系统兼容sendmail的命令:如果配置的是普通的Email媒介类型,Zabbix会调用系统的sendmail命令发邮件,但这个命令不一定来自sendmail包——很多轻量工具(比如ssmtp、msmtp)会提供和sendmail兼容的命令,你可以用which sendmail找到命令路径,再用dpkg -S $(which sendmail)命令查询它属于哪个包,说不定就能找到你没注意到的轻量邮件工具。

要是你想给自定义脚本复用这个能力,也有对应思路:

  • 要是用的是SMTP配置:直接在脚本里写逻辑对接同一台外部SMTP服务器就行,比如Shell里用curl发SMTP请求,或者Python用smtplib库,参数和Zabbix里填的保持一致就行。
  • 要是用的是本地sendmail兼容命令:直接在脚本里调用同一个sendmail命令,用法和普通sendmail一样,比如echo "邮件内容" | sendmail 收件人邮箱。

你先去Zabbix前端确认下媒介类型的配置,就能精准定位啦!

备注:内容来源于stack exchange,提问作者mindithere

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.17 10:54:43