nom*_*cME 5 gmail iptables firewall dns ufw
我目前使用以下规则:
ufw allow out from my_local_ip to any port 587
这对我来说有点太松懈了。我想收紧它并将其限制为仅 gmail 的 smtp 服务器 IP 地址,但它们总是在变化。我曾经只是等到外发电子邮件没有到达目的地,然后检查系统日志中被阻止的 IP 地址,然后将其添加到 ufw 配置脚本中。但是,现在我需要更高的可靠性。
有没有办法在 ufw 中使用 smtp.gmail.com?我不这么认为,但我想我会问。还有其他想法吗?谢谢。
更新
根据izx的建议,我从whois获得了以下(缩写)信息:
$ whois 74.125.53.108
...
网络范围:74.125.0.0 - 74.125.255.255
CIDR:74.125.0.0/16
...
使用此信息,我在 ufw 配置脚本中创建了以下命令(我意识到还有其他范围要打开,这只是一个示例):
ufw allow out from 192.168.2.5 to 74.125.0/24.0/24 port 587
Run Code Online (Sandbox Code Playgroud)
但 ufw 不喜欢那样。所以我把它改成:
ufw allow out from 192.168.2.5 to 74.125.0.0/24 port 587
Run Code Online (Sandbox Code Playgroud)
这个 ufw 被接受,但显然这只会阻止这个范围内的任何地址,0 作为第三个八位字节。那么我如何从 0-255 获得第三个八位字节呢?
您需要一个脚本来定期解析域并使用最新的 IP 更新防火墙规则。相反,试试这个方法:
像这样的域通常有多个关联的 IP。使用host domain.tld以获取列表:
$ 主机 smtp.gmail.com smtp.gmail.com 是 gmail-smtp-msa.l.google.com 的别名。 gmail-smtp-msa.l.google.com 的地址为 74.125.127.108 gmail-smtp-msa.l.google.com 的地址为 74.125.127.109
但是根据您的问题,这两个也可能会不断变化。因此,最好将整个网络块列入白名单——whois 与 IP一起使用:
$ whois 74.125.127.108 网络范围:74.125.0.0 - 74.125.255.255 CIDR:74.125.0.0/16 起源AS: 网络名称:GOOGLE 网络句柄:NET-74-125-0-0-1 父级:NET-74-0-0-0-0 网络类型:直接分配 注册日期:2007-03-13 更新:2012-02-24 参考:http://whois.arin.net/rest/net/NET-74-125-0-0-1 ...
该NetRange/CIDR告诉你怎么白名单- 74.125.0.0/16。Google 可以将此范围内的任何 IP 分配给 smtp.gmail.com
小智 5
以下命令将返回几个域:
nslookup -q=TXT _spf.google.com 8.8.8.8
Run Code Online (Sandbox Code Playgroud)
为每个运行 nslookup:
nslookup -q=TXT _netblocks.google.com 8.8.8.8
nslookup -q=TXT _netblocks2.google.com 8.8.8.8
nslookup -q=TXT _netblocks3.google.com 8.8.8.8
Run Code Online (Sandbox Code Playgroud)
来自:http : //support.google.com/a/bin/answer.py?hl=zh-CN&answer=60764