问题标签 [exim4]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
debian - 向通过 exim4 发送的邮件添加标头
我有一个运行 Exim4-daemon-heavy 的 Debian Etch 系统。
该系统对互联网开放,但其目的是只接收来自垃圾邮件过滤服务的合法邮件,该服务作为其前面的代理运行。(不过,我不能只限制对这些 IP 的访问,因为我确实有一些授权用户通过我的服务器在端口 25 上进行中继。我知道我应该使用 587 - 但目前我不是。)
这个工作的一般方式是:
[Internet] -> [SMTP 代理] -> [我的服务器]
不幸的是,我让垃圾邮件发送者直接向邮件服务器发送邮件,而忽略了 MX 记录。所以看起来我明显的解决方案是:
- 在 SMTP 代理上为每条已处理的邮件添加一个标头。
- 除非邮件来自授权的中继器,否则在我的服务器上为每条传入消息添加一个标头。(即完成 SMTP AUTH 的人。)
这样我就可以使用 procmail 来处理直接发送的垃圾邮件,这些邮件是通过忽略我的 MX 记录的发件人发送的。
我很确定 Exim4 可能会被强制添加诸如“X-Submitter: $ip”之类的标头 - 以记录提交消息的远程 IP,但我不确定应该如何完成。
debian - 通过 exim4 指定用于邮件的远程端口
我有一个使用 Exim4 的股票 Debian Etch 系统。这些域大多是本地的,但也有一些是远程的。为了处理远程邮件的传递,我使用了 Debian 配置文件:
该文件列出了域名和要传送到的远程 MX 机器。例如:
查看 exim4 配置文件,我看到它的用法如下:
我遇到的问题是我使用的一些主机需要将他们的邮件传递到非标准端口。不幸的是,如果我尝试将 Debian hubbed_hosts 文件更改为包含端口,则该文件不起作用:
是否可以动态允许指定端口?
gmail - 在 Debian exim4 中添加 gmail 作为 smarthost
我想知道如何在 Debian 上设置我的 exim4,以便它可以使用 gmail 作为智能主机,而不是我的 ISP。似乎需要设置 TLS,当然还有 gmail 用户名和密码。Debian 中 exim4 附带的“标准”智能主机示例没有这些。
email - Ubuntu exim4 - 配置设置和垃圾邮件过滤器
我最近用 exim4 设置了我的 Ubuntu 网络服务器,这样我的 PHP 网站应用程序就可以发送电子邮件,例如“谢谢”和“确认”通知。
我已经完成了设置和工作,这样我就可以将电子邮件发送到 gmail、Yahoo!和我的工作地址。但是,我的工作电子邮件被我们的垃圾邮件过滤器捕获。我是设置邮件服务器的新手,所以我不确定我可能需要寻找什么来使这个邮件服务器更受信任,同时保持安全。
以下是一些细节:
- 服务器在防火墙后面进行 NAT。
- 防火墙为传出 SMTP 流量(从服务器到任何地方)打开了端口 25。
- 服务器是我们的几个不同网站的虚拟主机
- 服务器正在运行以下 exim4 配置:
dc_eximconfig_configtype='internet'
dc_other_hostnames='web-serv.example1.com;example2.com'
dc_local_interfacees='127.0.0.1'
dc_readhost=''
dc_relay_domains=''
dc_minimaldns='false'
dc_relay_nets='' dc_smarthost=''
CFILEMODE= '644'
dc_use_split_config='假'
问题:
我需要打开端口 25 来接收 SMTP 邮件(到服务器的任何地方)吗?我想知道其他邮件服务器是否需要通过握手尝试与我的邮件服务器通信以验证自己。
我没有创建任何 MX 记录,主要是因为服务器上有不同的网站,邮件服务器应该为所有网站发送邮件。我是否需要选择/创建域地址并为其创建 MX 记录?
值得注意的是,邮件标题如下所示:
“web-serv”是服务器的主机名,如果你在命令行中输入它就会得到这个:
“www-data”是 Ubuntu 默认提供的 Apache2 服务器的帐户名。
任何其他一般性建议将不胜感激。这对我来说都是新的。
干杯!
smtp - exim4 和我的代码出现 554 SMTP 同步错误
我首先遇到了来自 exim4 的拒绝错误:
2010-02-15 01:46:05 SMTP 协议同步错误(不等待问候就发送输入):拒绝来自 H=ender [192.168.20.49] 的连接 input="HELO 192.168.20.49\r\n"
我已修改我的 exim4 配置以不强制同步,如下所示:
但这似乎无关紧要。对我来说不太有意义的是为什么我首先要获得 554。我发送了一个 HELO,我等待响应,不知何故,我设法生成了“554 错误”
我在下面的代码中做错了什么,这使得 99% 的时间都失败了(是的,它已经工作了两次)。是的,套接字阻塞了,我在 recv 中挂起约 5 秒等待拒绝。在它工作的 2 次中,它根本没有暂停。
我试过发送 EHLO 而不是 HELO,运气不好。我什至很难过通过远程登录会话来连接并说 HELO。但是,我可以使用 python smtp(来自另一台机器)向同一台服务器发送电子邮件!
email - CodeIgniter 邮件 + Exim4
我已经在我的 Ubuntu 机器上设置了 Exim4。
我已经开始学习 CodeIgniter,当我通过那里的电子邮件库发送电子邮件时,如果我询问调试状态,我会得到以下信息。我想看起来不错,但我从未在 jandante@telenet.be 上收到电子邮件。也不适用于 jandante.meulemeester@gmail.com,有人知道吗?
exim - 如何理解 Exim 日志文件?
有人可以帮我理解 Exim 日志文件,还可以为我指出一个关于它的日志的很好的文档。
另外,如何解析 Exim 日志文件以了解哪个 ISP(例如 hotmail.com、gmail.com)正在阻止我的服务器 IP?
smtp - exim4 vs gmail FROM 字段
我已经在我的服务器上将 exim 配置为 MTA 以使用 gmail。这是一个配置:
配置没问题,我可以使用 php 脚本发送邮件:
但是我遇到了一个问题:
gmail 在 FROM 字段中显示 myaccount1@gmail.com,而不是在我的脚本 (myaccount2@gmail.com) 的 FROM 字段中指定的实际电子邮件。回复字段是好的。
请帮忙解决问题。
perl - exim4 mta 的 perl 日志解析器
我要为 exim4 MTA 编写日志解析器,我有几个问题。(我知道有一个 exilog 程序)
问题:1.解析一行的更好方法是什么?(其大约 5Gb 的此类行 :D )我得到了这条 $line:
2011-12-24 12:32:12 MeSSag3-Id-Ye <hostname> (from@some.email) <to@some.email> => H=[321.123.321.123] T="Hello this is a test"
并希望将所有这些字段放入变量中。我现在正在使用类似的东西($var,[var2])=($line =~ /somecoolregexp/ )
;它是快/好还是我应该使用别的东西?
mysql - Exim4 - mysql 查找
我试过exim4 start
了,但现在我得到这个错误:
lookup type "mysql" is not available
。我用apt-get install exim4
. 我怎样才能解决这个问题?
问候,凯文
更多信息:
2011-05-23 15:34:14 1QOVGr-0002k2-5D failed to expand "${lookup mysql{SELECT DISTINCT transport FROM mail_transports WHERE transport = '${quote_mysql:$domain}'}}" while checking a list: lookup type "mysql" is not available (not in the binary - check buildtime LOOKUP configuration)
2011-05-23 15:34:14 1QOVGr-0002k2-5D failed to expand "${lookup mysql{SELECT DISTINCT transport FROM mail_transports WHERE transport = '${quote_mysql:$domain}'}}" while checking a list: lookup type "mysql" is not available (not in the binary - check buildtime LOOKUP configuration)