我想知道如何配置 Memcache 服务器以仅接受来自给定 IP 地址的请求。我可以用 iptables 规则来做吗?任何示例代码都非常感谢。
问问题
91 次
1 回答
2
是的,您也可以使用 ip-tables,
使用类似这样的方式启动 memcached:
/usr/bin/memcached -p 11211 -l 0.0.0.0 -d -u www-data -m 12288
在上述命令中,-l
参数设置为0.0.0.0
,这允许来自任何来源的连接。如果你保持标准,127.0.0.1
这是行不通的。
接下来,我们进入 iptables。如果您的 memcached 服务器位于 LAN 上,则以下命令将仅允许来自特定本地服务器的连接。
例如,为了添加192.168.4.25
到允许列表,我们发出命令:
iptables -A INPUT -p tcp -s 192.168.4.24 --dport 11211 -j ACCEPT
例如,如果要将远程服务器列入白名单,25.62.25.62
则发出另一个命令:
iptables -A INPUT -p tcp -s 25.62.25.62 --dport 11211 -j ACCEPT
您可以根据需要将任意数量的 IP 列入白名单,但请务必发出最终命令来阻止该端口上的所有其他连接。
iptables -A INPUT -p tcp --dport 11211 -j REJECT
IPtables 是按照它们输入的顺序读取的,因此如果您在发布任何 ACCEPT 规则之前发布 REJECT ALL 语句,所有连接都将被拒绝(即使是列入白名单的连接)。
于 2013-09-30T05:03:23.977 回答