是否可以将 Windows 防火墙中的 IP 地址“列入白名单”并允许来自该特定地址的所有连接?
我想将 postfix 配置为仅将邮件发送到白名单中的地址。我曾尝试使用smtpd_recipient_restrictions在main.cf像这样:
smtpd_recipient_restrictions =
reject_unauth_destination
check_recipient_access hash:/path/to/whitelist
Run Code Online (Sandbox Code Playgroud)
白名单文件格式为
address@example.com OK
another@example.com OK
Run Code Online (Sandbox Code Playgroud)
然后用postmap命令翻译成散列。
尽管如此,中继仍将邮件发送到非白名单地址。我错过了什么?
编辑:我通过sendmail命令发送这封邮件,这显然绕过了 smptd 限制。有没有办法处理这个问题?
编辑 2/故事的其余部分:我花了很多时间尝试通过 SMTP 发送 sendmail 只是为了发现我使用的命令不是 sendmail,而是 postfix 的 sendmail 兼容接口,它模仿了功能但不能告诉据我所知,使用 SMTP。
不过 84104 的解决方案运行良好。
我的问题可能比其他任何问题都更具原则性,但这是我的困境。
我为一家小公司(大约 20 个电子邮件用户)管理一个电子邮件系统。我们通过 Network Solutions 拥有一个纯字母 .com 域名。我们的电子邮件服务由 Google Apps 托管。
最近(2011 年 2 月),我们一直有客户报告说他们没有收到我们的电子邮件。经过进一步调查,似乎失败的电子邮件都发往一个公共(众所周知的)域。我们没有收到任何退回邮件的邮件。我们还联系了一些目标收件人,他们报告说这些邮件不在他们的垃圾邮件箱中;他们根本没有收到任何东西。在这些情况下,我们将同一封电子邮件重新发送到另一个域的备用地址,该地址已成功接收。
一位客户就该问题联系了他们的电子邮件提供商。提供商建议我们提交一个表单,以便将其域列入白名单。
这就是我的问题开始的地方。我觉得这是一个滑坡。这不会破坏电子邮件的原则吗?如果这是在这些情况下采取的适当行动,它将在哪里结束?理论上(遵循此模型)可能会争论说,在实际发送任何消息之前,最终人们首先需要将自己与电子邮件主机“列入白名单”(或更恰当地称为“身份验证”)。更重要的是,是什么阻止“坏”垃圾邮件发送者做同样的事情......?我们刚刚转了一圈。
我知道避免反垃圾邮件措施是一个很大的猫捉老鼠游戏,但我认为这是“修补”问题的错误方式。电子邮件标准说消息不应该只是默默地消失。我在支持一个模型时遇到问题,该模型表示“您必须执行<此>以确保您的电子邮件不被忽略”。
我有打电话给提供者并表达我的抱怨的想法,尽管我觉得它可能会被置若罔闻。我在这里错过了什么吗?这是解决电子邮件垃圾邮件问题的可接受方法吗?什么应该怎么办?
我的 CDN 提供商给了我一大堆要列入白名单的 IP 列表,我需要将它们添加到 Jail.local 中的ignoreip = 行中。
提供的IP地址列表是一行一行的,一行一个IP地址,但是ignoreip只是一行,并且指令表明可以使用空格分隔符定义多个地址。
应该如何将此列表添加到ignoreip行中?
担忧: 1. 如果我手动将 IP 地址列表转换为空格分隔符,该行会很长,我担心它可能太长而被忽略。第二,手动更改可能会出错并且不易查看。
有没有办法可以将其逐行添加到jail.local文件中的ignoreip字段中?
有没有办法可以将 IP 地址列表放在一个单独的文件中?那会更干净。
请指教。
谢谢-大卫
编辑:
令人惊讶的是,寻找解决方案的冲动有时足以缓慢而稳定地引导人们走向解决方案。此外,我越频繁地重读我的问题以澄清它,我意识到这个“问题”远远超出了“简单”问题的范围或让这个社区回答问题的想法。
随着我对iptables的操作概念越来越了解,我会在接下来的几个小时内重新包装这个问题的结构。理解过程还产生了一些更具体的问题,我将很快提供给这个社区并链接到这个问题。
简而言之: 我的问题是找到一套正确的规则来制定:
在数字上:
歌词版: 我正在努力实现满足我的需求的解决方案:场景如下。我有一个(现在假设是 DNS)服务器。除了绑定ssh,sendmail、https和munin还需要考虑:
这通常很容易实现。此外,我安装了 fail2ban,因为我面临着来自世界各地的一些 (d)dos 攻击。我的主要目标是尽可能地锁定服务器。
我的想法是只将我所在国家/地区的一些 ip 范围列入白名单,这些范围与我可以访问的 ISP 的可能动态 dns 分配相匹配 - 即 DSL 和移动。这样我就不会把自己锁在外面。
我查找了我的 ISP 的所有净范围,这导致了我的以下脚本/规则集:
#ports:
# 22: SSH (#4,#5) (ssh)
# 25: SMTP (#20) (outgoing, sendmail for f2b report)
# 53: DNS (!!#16!! see …Run Code Online (Sandbox Code Playgroud) 我在网站上有一个部分可以阻止对所有 IP 的访问,但列入白名单的 IP 除外。对于 IPv4,这很简单,因为即使使用动态 IP,它们通常几个月甚至几年都不会改变。
但是,对于 IPv6,这些似乎每 24 小时左右交替一次。这意味着我不能简单地将初始 IPv6 IP 列入白名单并称其为良好,因为它会很快再次更改。因此,我需要将整个范围列入白名单。即使在过去几天阅读和测试 IPv6 之后,我仍然不确定我是否掌握了它。
这是我所拥有的:
order deny,allow
allow from 1234:123:4567:ab1::/64
deny from all
Run Code Online (Sandbox Code Playgroud)
IP 地址的前 4 部分永远不会改变,但后 4 部分会不断变化。在这种情况下,这是将个人 IP 列入白名单的正确方法吗?
我刚刚购买了一个自定义域,我想将其用作我的主要电子邮件地址。然而目前我的许多电子邮件都进入了人们的垃圾邮件帐户。有没有解决这个问题的廉价方法(互联网提供商的无垃圾邮件列表或类似的东西)?我不是垃圾邮件发送者,我是一名四年级大学生。
我正在设置一个全新的邮件服务器,我希望将它列入所有邮件公司、aol、yahoo、hotmail、gmail 等的白名单。
有像 mailgun.net 这样的选项,我会考虑但想使用我们自己的
我在尝试运行尝试使用以下命令获取的devstack时遇到问题,我添加了详细参数pip
sudo -H -E python /opt/stack/devstack/files/get-pip.py -c /opt/stack/devstack/tools/cap-pip.txt --verbose
Run Code Online (Sandbox Code Playgroud)
我得到了这个输出,它永远挂在那里,然后再试四次就退出了。
Created temporary directory: /tmp/pip-ephem-wheel-cache-WNf2he
Created temporary directory: /tmp/pip-req-tracker-YNDzMb
Created requirements tracker '/tmp/pip-req-tracker-YNDzMb'
Created temporary directory: /tmp/pip-install-qbbm3e
Setting pip!=8,<10 (from -c /opt/stack/devstack/tools/cap-pip.txt (line 1)) extras to: ()
Collecting pip!=8,<10 (from -c /opt/stack/devstack/tools/cap-pip.txt (line 1))
1 location(s) to search for versions of pip:
* https://pypi.org/simple/pip/
Getting page https://pypi.org/simple/pip/
Looking up "https://pypi.org/simple/pip/" in the cache
No cache entry available
Starting new HTTPS connection (1): pypi.org:443
Run Code Online (Sandbox Code Playgroud)
我的机器坐在一个代理后面,它使用白名单来允许一些域名,这些域名是允许的。
# …Run Code Online (Sandbox Code Playgroud) 我想接受所有通过 RBL 和 SPF 检查(可能还有一些检查,但这些是我的最低要求)的客户,并将那些没有通过的客户列入灰名单。当客户端通过 SPF 检查(存在 SPF 记录,没有失败,没有软失败)时,我们可以非常确定它不是僵尸网络僵尸,而是会重试交付的 MTA,因此将此类客户端列入灰名单毫无意义。
到目前为止,我一直在使用Whitelister,它可以实现这个规则,但它在过去 10 年左右没有得到维护,并且在现代发行版中不可用,所以我正在寻找替代方案。据我了解,Postfix 只能拒绝 RBL 中的客户端,但不能将 RBL 用作更复杂条件的一部分,所以我reject_rbl_client在这里看不到任何使用方法。是否有可以进行此类检查的策略守护程序?
我在 main.cf 中的收件人限制如下。我不知道我可以用什么代替???:
smtpd_recipient_restrictions =
check_sender_access regexp:/etc/postfix/sender_access_regexp,
permit_mynetworks,
permit_sasl_authenticated,
reject_unknown_sender_domain,
reject_unauth_destination,
???,
check_policy_service unix:postgrey/postgrey.sock
Run Code Online (Sandbox Code Playgroud)