如何阻止端口6379在ubuntu上进行外部流量?

我想阻止访问我的服务器上的端口6379,但我仍想在内部连接到它. redis-server应用程序在该端口上运行,我只想在本地连接到它(127.0.0.1).我怎样才能做到这一点?
为此,您需要确保正确配置了IPTables规则.认情况下,Ubuntu通常会将其服务器保持打开状态,这就是为什么我仍然不建议将它们用作服务器,除非您已经非常清楚如何正确地执行此操作.

我想你的iptables -L -nv看起来像这样,是吗?

# iptables -L -nv
Chain INPUT (policy ACCEPT 4M packets,9M bytes)
 pkts bytes target     prot opt in     out     source               destination

Chain FORWARD (policy ACCEPT 0 packets,0 bytes)
 pkts bytes target     prot opt in     out     source               destination

Chain OUTPUT (policy ACCEPT 8M packets,4M bytes)
 pkts bytes target     prot opt in     out     source               destination

它是空的,它是敞开的. Ubuntu IPTables HowTo可能会对此有所帮助. (https://help.ubuntu.com/community/IptablesHowTo)

我推荐这样的东西,它允许任何接口上的SSH和tcp 6379任何接口但你不想要的接口:

*filter
:INPUT DROP [92:16679]
:FORWARD DROP [0:0]
:OUTPUT ACCEPT [203:36556]
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -i lo -p tcp -m tcp --dport 6379 -j ACCEPT
-A INPUT -i lo -p udp -m udp --dport 6379 -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -p tcp -m tcp --dport 22 -j ACCEPT
-A INPUT -i lo -j ACCEPT
COMMIT

然后,您将在/etc/iptables.rules中保存此文件.

显然,应该添加您特别想要打开的任何其他端口.

注意:为了清楚起见,我添加了特定的6379行. COMMIT之前的底部ACCEPT实际上允许这样做,因为必须允许Linux系统上的所有环回连接才能正常运行.

您还需要将规则放在/ etc / network / interfaces文件中,以确保在接口启动时添加它们,而不是在启动过程中添加.建议添加这样的东西:

auto eth0
iface eth0 inet dhcp
  pre-up iptables-restore < /etc/iptables.rules

编辑:要最初加载此配置,您需要运行上面引用的iptables-restore命令:

iptables-restore < /etc/iptables.rules

相关文章

目录前言一、创建Hadoop用户二、更新apt和安装Vim编辑器三、...
原文连接:https://www.cnblogs.com/yasmi/p/5192694.html ...
电脑重启后,打开VirtualBox,发现一直用的虚拟机莫名的消失...
参见:https://blog.csdn.net/weixin_38883338/article/deta...
Ubuntu 18.04 LTS 已切换到 Netplan 来配置网络接口。Netpla...
介绍每个 Web 服务都可以通过特定的 URL 在 Internet 上访问...