Articles of iptables

stream量通过未知方式路由

我有两台运行CentOS的机器: Machine A has two NICs: 192.168.150.1/255.255.255.0 and 192.168.1.1/255.255.255.0 Machine B has one NIC: 192.168.150.2/255.255.255.0 机器B直接连接到A(NIC到NIC),并且具有定义的路由: Destination Gateway Genmask 192.168.1.0 192.168.150.1 255.255.255.0 在机器A上,sshd绑定到192.168.1.1。 但是可以从机器Blogin到192.168.1.1。为什么会这样呢? 计算机A上未启用TCP转发。另外,计算机B没有定义SSH代理服务器命令。 在192.168.150.1上收到的stream量是否有其他方式被路由到192.168.1.1?

运行openvpn时tun接口的名称?

我有两个OpenVPN客户端设置,由systemd服务openvpn.foo和openvpn.bar 。 他们连接到不同的VPN,可能或不可能在任何时间点活跃。 我想为他们设置不同的iptables防火墙规则。 麻烦的是,第一个OpenVPN进程似乎抢到了tun0接口,无论是否是configurationfoo或bar。 问题是我不能附加iptables规则的接口,因为我不知道它是否现在VPN虚拟或酒吧。 问题: 有没有办法让OpenVPN总是为给定的configuration发出相同的接口名称? 我正在寻找configuration文件中的选项,但找不到一个。 persist-tun似乎不够,因为它似乎不能在重新启动。 有没有一种方法可以确定事实后哪个接口与哪个configuration进行configuration? 考虑到我所获得的IP地址也不是完全可预测的,我也不能将这些规则附加到这些规则上。 任何人都可以想到一个把它们附加在哪里的技巧吗? 谢谢!

以毫秒级别监控stream量

我有几个运行Ubuntu 14.04的Linux服务器,并把它们变成一个Spark集群。 此时,我想要测量服务器之间的networkingstream量,以毫秒为单位,以便进行一些推理和分析任务,供研究之用。 我已经尝试了以下没有成功: 1)我从脚本中反复调用“iptables -nvx -L”并获取其输出,其中包含我想要的信息(数据包数和字节数)。 但是,调用它需要超过1ms,因为我在Python(使用subprocess模块)和Bash脚本中实现。 python: args = ['iptables','-nvx','-L','Log'] raw_traffic = sp.Popen('iptables -nvx -L Log',shell = True,stdout = sp.PIPE).stdout (上面的代码需要运行1.2ms) 击: start_time = $(date+%s%N) std_output = $(iptables -nvx -L Log) echo(($(date +%s%N) – $ start_time)/ 1000000)“| bc -l 与输出: $ sudo sh foo.sh 1.17057700000000000000 2)我试图让iptables从服务器的IP地址logging每个数据包。 这当然是为了达到目的,因为它能够以最细致的方式衡量一切。 但是,这会减慢stream量并造成大的开销。 服务器之间的链接是10G,因此全速大约每秒钟为每个IP地址生成1M行日志,这是不可行的。 我现在需要的信息是服务器之间的毫秒数据包和字节。 是否有任何1毫秒的监测变通办法? 我想这应该可以用iptables来做,也许可以用一些黑客。 任何build议都不胜感激。 […]

如何阻止从我的虚拟机使用iptables的ping?

我有一个运行4个KVM虚拟机的服务器。 这些虚拟机只有一个接口,所有的接口连接到同一个OVS网桥。 我试图使用下面的iptables命令来阻止这些虚拟机上的ping iptables -A OUTPUT -o ${tap_interface} -p icmp -m icmp –icmp-type 8 -j DROP 但是,这不起作用。 然后我说,让我们去基本的东西,并阻止所有的ping消息,甚至从服务器。 所以我执行了: iptables -A OUTPUT -p icmp -m icmp –icmp-type 8 -j DROP 现在的情况是,我的服务器无法ping(我看到数据包击中以前的规则),但我的虚拟机仍然能够ping。 我不明白为什么来自虚拟机的stream量绕过了规则。

Ubuntu 16.04随机发送IP

我有几个IP地址configuration为静态在我的服务器。 我想将一个随机IP路由到任何networking传出请求。 curl,wget,ping等。 如何用iptables或其他解决scheme来实现这个目标?

使用iptables转发非标准端口

我遇到问题转发一个端口(例如:50001)到另一台PC(192.168.1.101)。 端口50001用于远程桌面(客户端PC正在侦听此端口上的新连接)。 服务器是一个带有外部接口(eth0)和内部接口(eth2)的Debian。 EXTIF="eth0" INTIF="eth2" iptables-restore <<-EOF *nat -A POSTROUTING -o "$EXTIF" -j MASQUERADE COMMIT *filter :INPUT ACCEPT [0:0] :FORWARD DROP [0:0] :OUTPUT ACCEPT [0:0] -A FORWARD -i "$EXTIF" -o "$INTIF" -m conntrack –ctstate ESTABLISHED,RELATED -j ACCEPT -A FORWARD -i "$INTIF" -o "$EXTIF" -j ACCEPT -A FORWARD -j LOG COMMIT EOF iptables -t nat -A […]

在安装/升级iptables rpm后,iptables从chkconfig开启

为什么从头开始安装iptables或升级iptables 那么从chkconfig显示iptables呢? 如何避免在安装/升级iptables之后的chkconfig iptables? 我们希望避免在安装iptables后closureschkconfig iptables 从我的红帽机器版本6的真实例子 service iptables status Firewall is stopped. # chkconfig –list | grep iptables iptables 0:off 1:off 2:on 3:on 4:on 5:on 6:off # chkconfig iptables off # chkconfig –list | grep iptables iptables 0:off 1:off 2:off 3:off 4:off 5:off 6:off yum remove iptables . . . chkconfig –list | grep […]

iptables,所有的端口都打开了吗? 我如何删除线?

这是很长一段时间我configuration我的防火墙,现在我看到可能有一个错误,inheritance人的input部分iptables -L Chain INPUT (policy DROP) target prot opt source destination ACCEPT all — anywhere anywhere state RELATED,ESTABLISHED fail2ban-SSH tcp — anywhere anywhere tcp dpt:ssh ACCEPT all — anywhere anywhere state RELATED,ESTABLISHED DROP tcp — anywhere anywhere tcp flags:FIN,SYN,RST,PSH,ACK,URG/NONE DROP tcp — anywhere anywhere tcp flags:!FIN,SYN,RST,ACK/SYN state NEW DROP tcp — anywhere anywhere tcp flags:FIN,SYN,RST,PSH,ACK,URG/FIN,SYN,RST,PSH,ACK,URG […]

如何将所有stream量从特定端口路由到特定networking接口?

我有以下设置: 一台带有两个网卡的计算机连接到两个不同的路由器。 第一台路由器将所有来自5122端口的外部stream量redirect到22端口。这样我就可以使用ssh连接到机器。 我希望只使用第一台路由器进行ssh连接。 没有其他的。 所以我想通过第二个路由器指挥所有其他交通。 我怎样才能做到这一点?

没有networking服务器正在运行,但是回复了端口80和443上的数据包

我从iptables看到,我的Centos 7机器正在接收和发送端口80和443上的数据包。我没有运行Web服务器,并且netstat没有为这些端口返回任何内容。 这是正常的吗?