如何根据收件人地址将(或代理)邮件转发到不同的 smtp 服务器?
我有一台带有 SMTP(后缀)服务器侦听端口 25 的机器。我想使用 Lamson(http://lamsonproject.org/)来处理一些传入的邮件和一些我想让 postfix 来处理的邮件。
我的想法是设置 Lamson 以侦听不同的端口,假设 localhost:10025。然后我设置 postfix 通过侦听端口 25 来捕获所有邮件。
如何配置 Postfix 以将某些邮件代理到 10025 上的 Lamson 并自行处理所有其他邮件?
以下问题只是我遇到问题的更大解决方案的一部分。到目前为止,所有其他元素似乎都在工作,所以我将尝试描述我有问题的非常小的部分。
我有一台 linux 机器,带有tun0(隧道接口)和eth0(witch 是我默认的互联网网关)。
目标:我的目标是接收从 tun0 传入的数据包,并将它们转发到默认网关。所以实际上非常简单的 NAT 案例,我想与伪造物理接口的 tun0“共享”互联网。
Tun 是使用创建的
sudo openvpn --mktun --dev tun0 --user USER
sudo ip addr add 10.2.0.1/24 dev tun0
sudo ip link set tun0 up
Run Code Online (Sandbox Code Playgroud)
所以我让它启动并运行,我可以 ping 它等等。此外,我有 C++ 应用程序,它连接到这个 TUN 设备,可以读取和写入它。(fti:这是我遵循的教程:http : //backreference.org/2010/03/26/tuntap-interface-tutorial/)
我将一些对 8.8.8.8 发出的正确 ICMP(ping)请求转储到 C++ 中的字节数组中。现在,使用我的程序将它写入 tun0 设备。ICMP 请求有
然后,我有以下路线:
iptables -F # flush
iptables …Run Code Online (Sandbox Code Playgroud) 我想要做的就是安装 postfix,并转发电子邮件。我不需要任何东西留在我的服务器上。这让我见鬼去吧。我尽了最大努力,但 postfix 拒绝所有中继。
我想要的是这个。说我的服务器在example.com.我想要这个:
邮件转发:
user1@example.com -> user1@gmail.com
user2@example.com -> user2@yahoo.com
user3@example.com -> user3@hotmail.com
Run Code Online (Sandbox Code Playgroud)
我所需要的只是一个转发箱,它可以重定向收到的电子邮件。因为我的配置显然有问题,我真的可以只使用一个示例 main.cf 来满足我的目的,我会继续的。
编辑:日志
奇怪的是日志没有给我任何错误。
main.cf:
mreiley@Omega-14:/var/log$ cat /etc/postfix/main.cf
# See /usr/share/postfix/main.cf.dist for a commented, more complete version
# Debian specific: Specifying a file name will cause the first
# line of that file to be used as the name. The Debian default
# is /etc/mailname.
#myorigin = /etc/mailname
smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu)
biff = no
# appending .domain is …Run Code Online (Sandbox Code Playgroud) 我的 BIND9 为我的域设置了适当的记录器example.com,something.example.com实际上正在工作......
当我的 DHCP 服务器指向这个 DNS 服务器时,我可以访问它指向的服务器的webmin ( https://something.example.com:10000 )。但是我无法访问任何外部网站(google.ca、serverfault.com 等)
我在named.conf.options文件中设置了我的转发器
options {
directory "/etc/bind/";
allow-query-cache { none; };
allow-query { any; };
recursion yes;
forwarders {
8.8.8.8; // Google's DNS Server
8.8.4.4; // ''
};
};
//zones here for example.com and reverse dns
Run Code Online (Sandbox Code Playgroud)
但它似乎没有将请求转发到他们的服务器。我哪里错了?我能做些什么来探查以获取更多信息吗?
我在尝试使用自定义日志日志在 Windows 2008 R2 服务器上存储转发的事件(通过订阅)时遇到问题,自定义日志被描述为不是“有效的目标日志”。
我目前正在使用内置的事件转发和收集功能(通过 WS-management 和 wecutil)建立一个用于集中 Windows 事件的架构。
我的要求之一是能够在收集器机器上创建多个订阅并将转发的事件存储在不同的日志文件中。为此,我测试了创建自定义日志(称为 CustomLog)。此日志出现在“应用程序和服务日志”类别下的事件查看器中。
但是,我无法将转发的事件重定向到此 CustomLog。在事件查看器用户界面中创建订阅时,CustomLog 不会出现在可能的目的地列表中。
为了尝试可能出错的地方,我将默认的 ForwardedEvents 作为目的地,并尝试通过 Powershell 更改它。我运行了以下命令,该命令应该将目标日志设置为 CustomLog:
wecutil ss "Collect from both sources" /lf:CustomLog
Run Code Online (Sandbox Code Playgroud)
它运行没有错误。但是,CustomLog 中没有记录任何事件,当我返回 GUI 创建/修改订阅并尝试打开我设置的订阅时,我会收到一个弹出窗口,说明以下内容:
在此计算机上的有效目标日志列表中找不到此订阅中定义的目标日志。验证此日志是否存在于计算机上并且作为转发事件的目的地有效。请注意,经典日志、分析和调试日志以及安全日志不能用作目标。
有谁知道什么是“有效的目标日志”以及如何将我的 CustomLog 变成这样一个有效的目标?
我阅读了DNS 和正向查找区域,但我没有在那里找到答案。
我有带活动目录服务器的 Microsoft 域和供内部使用的 DNS 服务器。我的本地域名为 example.local,由该服务器管理。我需要能够在本地添加 example.com(由像 GoDaddy 这样的外部公共 DNS 服务器管理),但我需要本地 DNS 服务器在记录不存在的情况下转发查找。
例如:在公共 DNS 服务器上,我有www.example.com -> 1.2.3.4
在本地 DNS 上,我有 mail.example.com -> 2.3.4.5
现在,我需要能够从内部查找 www 和 mail.example.com(当然可以只从外部查找 www),但我不想覆盖它;相反,我只想将 mail.example.com 放在本地,并且 DNS 服务器会将其转发到 ISP DNS。
是否可以?
所以我的网络中有一个客户端通过我的电脑使用 arpspoof 连接到路由器。当我知道要停止数据包转发时,我执行:
iptables -A FORWARD -j REJECT
Run Code Online (Sandbox Code Playgroud)
这就是我预期的工作方式。但是当我尝试做类似的事情时:
iptables -A FORWARD -j ACCEPT
Run Code Online (Sandbox Code Playgroud)
我无法像一开始那样让数据包通过。
我做错了什么还是我应该使用与“接受”不同的任何其他论点?
我们计划将所有公司电子邮件移至 Google Apps,但我无法在任何地方找到以下问题的答案。希望有人会帮忙。
目前,我们有10个真实的电子邮件地址(也就是,每个人都在我们的组织),加上行政措施(如极少数的support@,registrationrequest@等等)。转移到 Google Apps 后,我只打算保留这 10 个“真实”地址,并留下support@唯一的“管理”地址:每年支付 50 美元购买一个每年会收到十几封电子邮件的地址是没有好处的。
所以这是我的问题:是否可以告诉 Google Apps 将所有发送到未知(未注册)地址的电子邮件转发到特定的邮箱,以便所有发送到的电子邮件registrationrequest@最终都以support@?
我正在使用最新的 debian relese,我需要做一些端口转发,但我不知道怎么做。我有 2 个流源从 2 个不同的 ip-s 在同一个 udp 端口上进入我的服务器
192.168.1.2:1003 via udp to 192.168.1.4 (server)
192.168.1.3:1003 via udp to 192.168.1.4 (server)
Run Code Online (Sandbox Code Playgroud)
我的问题是:例如,如何将此来自 1.2 的端口 1003 转发到其他端口 1004?