拒绝除特定 IP 之外的所有连接

拒绝除特定 IP 之外的所有连接

我已经在 Ubuntu 上安装了一个数据库,我将通过端口 27017 从其他服务器远程连接到该数据库。

我只想将此服务器用作其他服务器的存储。我请求主机支持阻止除某个指定 IP 之外的所有连接。

他做到了,但我仍然可以从家里连接。他推断他阻止了所有 IP 访问在所有熟悉的默认端口(如 80、25、21 等)上运行的服务,因此对 27017 执行了相同的操作。

通过这样的设置,我能确定我的数据库不对外开放吗?!谢谢。

答案1

您只需要阻止数据库使用的内容即可。

更有趣的问题可能是如何做到这一点。

iptables -F INPUT # deletes all rules
iptables -A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
: maybe allow other services here
iptables -A INPUT -s $allowed_source_address -p tcp --dport 27017 -j ACCEPT
iptables -A INPUT -j DROP

这将阻止每个新的传入连接,但从允许的 IP 到数据库的连接除外。

仅阻止数据库

iptables -F INPUT # deletes all rules
iptables -A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
iptables -A INPUT -s $allowed_source_address -p tcp --dport 27017 -j ACCEPT
iptables -A INPUT -p tcp --dport 27017 -j DROP

相关内容