Articles of iptables

IPTables重新路由2次

有没有办法使用IPTables(Debian Squeeze)完成以下工作:让用户使用普通的ssh命令和端口22连接到“主机”服务器,然后一旦build立连接,将它们重新路由到另一个基于string的地址他们曾经连接在第一位。 例如,如果在托pipe虚拟服务器的云中使用服务器(我们可以使用“虚拟”地址(因此主机服务器有一个公用地址,而来宾服务器都有自己的专用地址)),我们希望用户连接到主机服务器使用通用的外部端口端口,然后使用基于它们使用的原始ssh连接string的单独地址将它们重新路由到虚拟服务器。 要进行初始连接,我们需要使用一个ssh端口…,然后在初始连接完成后将用户重新路由到特定的虚拟服务器。 任何帮助感激!

将websocketsredirect到端口?

所以,我在C ++中有一个WebSocket服务器,它是一个完全独立的实体 – 处理头文件parsing,接收,发送,直接监听端口。 问题是,它需要在Apache服务器上运行,这是一个问题。 现在,有一个类似的问题涉及mod_proxy的解决scheme,但我希望我可以拦截和redirectWebSocket通信之前,Apache甚至知道它,可能与iptables。 所以问题是,是否有可能将通往.mysite.net的聊天stream量定向到8080端口的WebSocket服务器,而任何前往mysite.net的stream量都可以按照预期的方式进入Apache?

重启后iptables为空

在我们的RHEL 6.3系统上,我们已经开始遇到与iptables有关的问题,因为在重启之后,服务启动时,规则不会被加载。 我们得到空的规则集: [msnyder@matt-test ~]$ sudo iptables -L Chain INPUT (policy ACCEPT) target prot opt source destination Chain FORWARD (policy ACCEPT) target prot opt source destination Chain OUTPUT (policy ACCEPT) target prot opt source destination 尽pipe我们已经制定了规则,而且服务确实在运行。 我知道,因为当我运行service iptables start它只是回到提示。 如果我运行service iptables restart它实际上停止,然后重新启动服务。 而且,当然,如果我运行service iptables stop它表明iptables实际上停止。 知道我需要重新启动服务,我这样做,规则加载正常。 他们根本不会在重新启动后加载。 除非在重启过程中它们的加载方式不同,否则我们不会看到我们的规则会出错。 如果是的话,在服务重启时甚至不会加载。 有没有人遇到过这个? 编辑:规则已经保存在/ etc / sysconfig / […]

iptables如何确定哪些数据包是组播的?

数据包是否被假设为仅基于其IP地址的多播? 我一直在看RFC 1112 ,快速扫描似乎并没有指出在ip数据包上的任何其他标志。

iptables – 在eth1上阻止传入,在eth0上阻止所有

我有点卡在iptables做处理两个以太网端口。 用于LAN的eth0端口(192.168.1.50私有IP)。 eth1端口通过电缆调制解调器(80.0.xxx.xxx公共IP)连接到互联网。 eth0 Link encap:Ethernet HWaddr 00:19:99:C1:86:BB inet addr:192.168.1.50 Bcast:192.168.1.255 Mask:255.255.255.0 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:137532 errors:0 dropped:0 overruns:0 frame:0 TX packets:55658 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:99968969 (95.3 MiB) TX bytes:10403525 (9.9 MiB) Interrupt:50 Memory:fe700000-fe720000 eth1 Link encap:Ethernet HWaddr 00:19:99:C1:61:3B inet addr:80.0.xxx.xxx Bcast:255.255.255.255 Mask:255.255.252.0 UP BROADCAST RUNNING MULTICAST […]

如何dynamic生成iptables规则?

美好的一天。 我有一个下面的问题 – 我有很多在我的本地networking(可能大约40,这个数量可能会增加)的电脑,我想远程访问从互联网上的所有人。 所有这些机器通过一个网关/防火墙/ whateverelse与Debian 6.0.7在内部networking连接。 我可以在我的debian网关上用iptables做这样的事情: iptables -t nat -A PREROUTING -p tcp –dst %ip% — dport 43001 -j DNAT –to-destination 192.168.0.1:%remotedesktopport% iptables -t nat -A PREROUTING -p tcp –dst %ip% — dport 43255 -j DNAT –to-destination 192.168.0.255:%remotedesktopport% 那么192.168.0.1机器的主人就会想在家工作,他会很容易的,192.168.0.255等等。 但是,我怎么能为我所有的本地networking制定相同的规则? 可能是有办法做到这一点,只是更优雅的方式,然后手动input255 iptables规则? 可能有一些技巧来dynamic地解决redirect,就像 -A PREROUTING -d %ip% -p tcp –dport 43%three-digits-number-var% -j DNAT […]

无法远程访问CouchDB

请记住,我已经将此安装在运行最新版本的Ubuntu服务器的Amazon EC2实例上。 我已经将bind_address更改为0.0.0.0 。 netstat -an | grep 5984 netstat -an | grep 5984产生以下结果: tcp 0 0 0.0.0.0:5984 0.0.0.0:* LISTEN 从我读到的这个,一切似乎都是按顺序的。 但是,无论什么原因,当我远程导航到蒲团时,它不能解决。 当我尝试发送一个curl请求到数据库,我收到“无法连接到主机…” 当我从服务器本身发送它的时候,我得到了我期望从CouchDB得到的响应,所以我知道它被安装了,只是它或者我的防火墙configuration不正确。 任何帮助是极大的赞赏。 iptables -L返回以下内容: Chain INPUT (policy ACCEPT) target prot opt source destination ACCEPT tcp — anywhere anywhere tcp dpt:5984 Chain FORWARD (policy ACCEPT) target prot opt source destination Chain OUTPUT (policy […]

tcpdump没有收到iptablesredirect的stream量

下面的iptables规则用于redirect从本地主机(接口为lo,IP为127.0.0.1)从eth1进入端口3000的所有Internetstream量: iptables -t nat -A PREROUTING -i eth1 -p tcp –dport 80 -j DNAT –to-destination 127.0.0.1:3000 然后tcpdump被设置为在lo接口上logging所有stream量: tcpdump -i lo -w output.dump 但是,在通过eth1发送了一些互联网stream量(端口80)之后,这个stream量不会被tcpdumplogging下来。 我不知道为什么这样。 有人可以摆脱一些光? 谢谢。

iptables规则顺序

我有下面的脚本,我在互联网上find了一些,我修改了一下,以适应我的需要。 我的问题是:如果我理解iptables的输出 – 保存我的iptables规则是maderight,但我只是想确定。 这是我的.sh文件: #!/bin/bash ISO="af cn th vn in bd pk" ### Set PATH ### IPT=/sbin/iptables WGET=/usr/bin/wget EGREP=/bin/egrep ### No editing below ### SPAMLIST="countrydrop" ZONEROOT="/root/iptables" DLROOT="http://www.ipdeny.com/ipblocks/data/countries" cleanOldRules(){ $IPT -F $IPT -X $IPT -t nat -F $IPT -t nat -X $IPT -t mangle -F $IPT -t mangle -X $IPT -P INPUT ACCEPT $IPT -P […]

iptables:在DNAT之前过滤

iptables -t filter -A OUTPUT -d 1.2.3.4 -j DROP iptables -t nat -A OUTPUT -p tcp -m owner –uid-owner abc -j DNAT –to 127.0.0.1:121 第一条规则不起作用,因为它是在过滤之前处理的。 任何方式绕过它?