我试图放弃所有端口上的所有传出RST和传入RST。 我正在使用Debian Linux。 我尝试了互联网上列出的命令的所有可能的组合,但似乎没有任何工作。 例如,我试过: iptables -A OUTPUT -o eth0 -p tcp –tcp-flags RST RST -j DROP iptables -A OUTPUT -p tcp –tcp-flags RST RST -j DROP iptables -A INPUT -p tcp –tcp-flags RST RST -m state –state RELATED,ESTABLISHED -j DROP iptables -A INPUT -p tcp –tcp-flags RST RST -j DROP 我仍然看到RST数据包被内核发送,也接收RST数据包。 请尝试解决此问题
有没有一种方法,我们可以通过编程方式查询iptables而无需使用shell脚本? 我没有使用shell脚本运行iptables命令和grep输出的自由。 是否有使用GNU C的本地(API)级别访问iptables? 在最低限度,我想查询iptables的默认策略。 我希望能使用/ proc文件系统,但我不认为它的实现。
我期待从我的服务器阻止所有ips,它的端口除了部分IP 198.55。 * 。 我想限制访问一个ISP地区做我的个人IP不静态与我们的ISP。 我将如何去做这件事? 我们的服务器今天晚上被入侵了,我试图杀死所有其他stream量。 下面的代码似乎允许一个特定的IP,但是它阻止每隔一个IP? 另外,如果我使用x将像通配符那样行事? iptables -A INPUT -s 74.231.64.xx -j ACCEPT
我正在使用netfilter队列库实现用户空间防火墙。 我使用nfq_fd()获得了队列的文件描述符,所以我可以调用recv(fd, recv_buf, BUFFERSIZE, MSG_DONTWAIT)来获取没有阻塞的数据包数据。 但有时recv()每次调用它时都会返回52字节的数据包。 如果我检查iptables -nvL INPUT的输出,数据包数量不会增加,所以它们实际上并不是从networking发送的。 编辑3:nfq_handle_packet()返回-1,当我传递这些奇怪的数据包之一,它从来没有触发callback函数,所以我没有办法得到一个数据包ID或返回一个判决。 为什么recv()给我这些奇怪的数据包? EDIT1: 数据包并不完全相同,但它们具有相似的结构。 也有一些重复。 这里有一些hexdump: 0000 34 00 00 00 02 00 00 00 00 00 00 00 BE 4E 00 00 4…………N.. 0010 FE FF FF FF 20 00 00 00 01 03 01 00 00 00 00 00 …. ……….. 0020 00 00 […]
我正在写一个通用的应用程序代理。 我想用这个透明的代理,我原来的计划是使用带有REDIRECT规则的iptables转发到我的应用程序代理的所有连接。 这里的问题当然是,我的应用程序代理失去了关于预期目的地的信息。 是否有可能查询iptables来检索最初的目标收件人? 任何其他可能的解决scheme,也感谢这个问题!
我有一个4个Linux(CentOS)机器的实验设置: 所有4台机器使用不同的networking进行内部连接,可以直接相互连接。 但是只有PC4才能访问互联网。 我试图设置iptable规则,可以让PC1能够通过PC4访问互联网,但我不知道如何做到这一点。 我尝试在PC2,PC3和PC4的出站接口上添加NAT: iptables -t nat -F POSTROUTING iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE 但是,这是行不通的,你可以给我一些想法如何在这样的设置,我可以使PC1访问10.0.0.1networking?
我想接受数据包并分析它们。 数据包应该到达预期的应用程序,副本也应该在队列中可用
其目的是让一个程序拦截一个IP数据包的集合并读取其原始内容,然后在修改之后将其重新插入networking。 我的方法是build立一个Tuntap接口(Tun,具体),然后让iptables和类似的redirect到这个隧道接口所需的数据包。 出于testing的目的,我已经编写了这个简短的shell脚本来设置Tun界面并添加所需的规则。 现在,我打算对来自本地机器发送的123.123.123.123目的地的任何数据包进行testing。 这里是启动脚本: # Set up the tunnel ip tuntap add dev maintun mode tun ifconfig maintun inet 10.10.10.1 netmask 255.255.255.0 up # Mark packets for forwarding to tun iptables -t mangle -A PREROUTING -d 123.123.123.123 -j MARK –set-mark 2 # Apply ClientRouter table to mark 2 as it's defined in /etc/iproute2/rt_tables # […]
我试图创buildiptable规则,将允许传入和传出的SSH连接,然后允许出站连接到特定的端口,然后最后放下任何不匹配。 这些都是我提出的规则,SSH规则的工作,但是当我隧道进入框,我似乎无法访问HTTP(端口80),即使我已经允许它。 任何人都可以发现错误? #!/bin/bash #clear iptables iptables -F iptables -X #set default policy to drop iptables -P INPUT DROP iptables -P OUTPUT DROP iptables -P FORWARD DROP #accept everything no matter port on localhost iptables -A INPUT -i lo -j ACCEPT #allow established connections iptables -A INPUT -m state –state ESTABLISHED,RELATED -j ACCEPT iptables -A […]
我想产生一个暂停的进程,可能在另一个用户的上下文中(例如通过sudo -u …),为生成的进程设置一些iptables规则,继续运行进程,并在进程中删除iptable规则存在。 有没有任何标准的手段(bash,corutils等)让我达到上述目的? 特别是,我怎么能在暂停状态下产生一个进程并获得它的pid?