Questions tagged «iptables»

iptables允许创建规则以定义数据包过滤行为。




4
IPTables-端口到另一个ip&端口(从内部)
我目前有一个运行在端口80下的NAS盒。要从外部访问NAS,我将端口8080映射到NAS上的端口80,如下所示: iptables -t nat -A PREROUTING -p tcp --dport 8080 -j DNAT --to-destination 10.32.25.2:80 这就像一种魅力。但是,仅当我从网络外部(在工作中,在其他房屋等)访问网站时,此方法才起作用。因此,当我键入时mywebsite.com:8080,IPTables可以正确完成工作,并且一切正常。 现在,我的问题是,如何从网络内部重定向此端口?我的域名mywebsite.com从内部指向我的路由器(Linux服务器)(10.32.25.1),但我想从内部将端口8080重定向到10.32.25.2上的端口80。 有什么线索吗? 编辑#1 为了帮助解决这个问题,我将这张图放在一起。如果您输入的内容有误或有误,请随时进行更新。 iptables | .---------------. .-,( ),-. v port 80 | .-( )-. port 8080________ | | ( internet )------------>[_...__...°]------------->| NAS | '-( ).-' 10.32.25.2 ^ 10.32.25.1 | | '-.( ).-' | | …

3
等效于NetworkManager的“用作热点”选项的终端命令
我正在制作一个gui应用程序,它将控制我的笔记本电脑以使其充当wifi热点。我可能会更改发行版,因此我想找到一种通常适用于所有发行版的解决方案。我目前正在Fedora 17上执行此操作。 使用NetworkManager的“用作热点”按钮可以很好地创建临时热点: 我想使用终端命令重新创建此功能。 以下是我尝试完成此操作的两种方法,但尚未找到解决方案。 方法1:iwconfig 使用来自网络的研究,我尝试了以下命令: # ifconfig wlan0 10.42.0.1 netmask 255.555.255.0 broadcast 10.42.0.255 up # iwconfig wlan0 essid my-lappy mode ad-hoc key 0123456789 # iptables-restore < saved-hotspot-iptables # echo 1 > /proc/sys/net/ipv4/ip_forward # dhclient wlan0 saved-hotspot-iptables我iptables-save > saved-hotspot-iptables使用“用作热点”功能设置的iptables 生成的文件在哪里。 方法1问题 设备可以看到SSID,但无法连接。运行ip a揭示了有关wlan0的以下内容: ... 3: wlan0: <NO-CARRIER,BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 …

1
多个子网之间的路由
假设我要创建一个包含4个子网的内部网络。没有中央路由器或交换机。我有一个“管理子网”可用于链接所有四个子网(192.168.0.0/24)上的网关。一般图如下所示: 10.0.1.0/24 <-> 10.0.2.0/24 <-> 10.0.3.0/24 <-> 10.0.4.0/24 换句话说,我在每个子网上配置了一个Linux框,它具有2个接口:10.0.x.1和192.168.0.x。这些充当每个子网的网关设备。每个10.x / 24子网将有多个主机。其他主机将只有1个接口作为10.0.xx 我希望每个主机都能够在其他任何子网上ping通其他主机。首先我的问题是:这可能吗?其次,如果是这样,我需要一些帮助来配置iptables和/或路由。我一直在尝试,但是只能提出一种允许在一个方向上ping的解决方案(icmp数据包仅是示例,我最终希望主机之间具有完整的网络功能,例如ssh,telnet,f​​tp等) 。

2
是否为iptables中的所有来源接受RELATED,ESTABLISHED是否被视为“过于开放”?
我经常看到该规则-A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT适用。虽然我不是专家,但该行涉及到我。很明显,该规则允许所有流量,唯一的例外是必须已建立连接或与已建立的连接相关。 情境 我将允许22从子网中的服务器LAN 192.168.0.0/16或其他任何端口连接到默认的SSH端口。 SuperInsecureApp®在port上暴露一些东西1337,我将其添加到INPUT链中。 我添加了从所有来源conntrack接受ESTABLISHED和接受的规则RELATED 连锁政策是 DROP 因此,基本上该配置应该只允许来自LAN的SSH连接,同时允许来自世界的端口1337上的入站流量。 这就是我困惑的地方。请问conntrack以任何方式暴露出安全漏洞,将允许人们得到一个已建立的连接上1337(因为它是世界开放的),然后使用该连接来访问SSH端口(或任何其他港口为此事)?
9 security  iptables  ip  tcp 

7
iptables规则顾问脚本
有没有任何iptables防护的服务器:ACCEPT all.. 该服务器上可能有自定义应用程序。 如果我们需要使用严格的iptables规则来加固该服务器(因此拒绝所有,仅让应用程序需要什么),我们必须手工找出哪个应用程序使用了哪个应用程序dst/src port/protocol,然后为该应用程序编写iptables规则他们.. 问题:是否有任何脚本可以帮助从运行中的计算机收集这些信息?(从日志?)-并且自动生成iptables规则? 就像有audit2allow在SELinux。只为iptables! 机器不能有任何故障! 例如:“ MAGIC”脚本应该在机器上运行一周/一个月,收集信息,然后,在一周/一个月之后,该脚本将能够产生一个我们可以使用的iptables规则文件。 许多人可能会遇到这种情况(如何针对iptables强化服务器)。如果有一个脚本/解决方案可以做到这一点,那就太好了:\

1
-j DROP和-j STEAL有什么区别?
我经常看到人们STEAL在iptables规则中设定目标。可以通过在debian上安装xtables-addons-common和获得这个目标xtables-addons-dkms。我很好奇为什么人们会喜欢STEAL它DROP,所以我查看了手册,但是只有以下信息: STEAL Like the DROP target, but does not throw an error like DROP when used in the OUTPUT chain. 有人知道什么错误吗?例如,我们可以采用以下两个规则: -A OUTPUT --protocol tcp --match multiport ! --dports 80,443 --match set --match-set bt_level1 dst --jump STEAL 和: -A OUTPUT --protocol tcp --match multiport ! --dports 80,443 --match set --match-set …
9 iptables 

5
无法使用iptables阻止蛮力SSH
我试图阻止(减慢)我的sshd服务器上的暴力攻击。我正在遵循本指南http://www.rackaid.com/resources/how-to-block-ssh-brute-force-attacks/,该指南基本上说我只需要输入以下2条命令即可。 sudo iptables -I INPUT -p tcp --dport 22 -i eth0 -m state --state NEW -m recent --set sudo iptables -I INPUT -p tcp --dport 22 -i eth0 -m state --state NEW -m recent --update --seconds 60 --hitcount 4 -j DROP 我的sshd端口是6622,因此我将条目从“ 22”更改为“ 6622”,并放入了这些命令。然后,我尝试简单地测试新的iptables。我去了另一台电脑,故意多次输入了错误的登录密码。不幸的是,新规则似乎并没有阻止我尽力而为。下面列出了我当前的规则。我究竟做错了什么? # iptables --list Chain INPUT (policy …
9 ssh  iptables  sshd 

3
撤消iptables修改
我运行以下iptables命令来创建黑名单规则,但使用了错误的端口: iptables -A INPUT -p tcp --dport 22 -m state --state NEW -m recent --set --name SSH iptables -A INPUT -p tcp --dport 22 -m state --state NEW -j SSH_WHITELIST iptables -A INPUT -p tcp --dport 22 -m state --state NEW -m recent --update --seconds 60 --hitcount 4 --rttl --name …
9 linux  iptables 

5
tor出口节点上的iptables
我想运行一个开放的Tor路由器。 我的退出策略将类似于ReducedExitPolicy。 但是我也想使网络变得更加难以滥用我的资源。 我想防止客户通过Tor进行的案例: 用很多数据包锤击一个站点。 整个IP块的综合网络扫描 我不想阻止客户通过Tor进行操作的情况: 将几百个图像文件上传到云 种子洪流 我的问题是,这完全可以做到吗? 我首先想到的是某些防火墙(Linux / iptables或* BSD / ipfw / pf)-但是由于Onion路由器的固有属性,这可能毫无用处。 在这个主题上是否有任何正在进行的torproject团队开发? 我还要求提供有关保护Tor出口节点安全的一般提示。 更新(2012年9月) 从有用的答案和其他一些研究中,我认为这是不可能完成的。 要阻止人们滥用出口节点为DDOS做出贡献,最好的办法就是检测定向到一个IP的非常频繁的数据包。 “非常频繁”的阈值取决于总节点带宽。如果错了,将出现误报,阻止实时TCP应用程序的合法流量以及从许多客户端到一个目标的流量。 更新(2014年12月) 我的预测显然是正确的-我收到了来自互联网提供商的一些网络滥用投诉。 为了避免服务关闭,我必须采用以下iptables规则集(ONEW是用于传出TCP SYN(又名NEW)数据包的链: 我不确定是否足够,但是这里是: -A ONEW -o lo -j ACCEPT -A ONEW -p udp --dport 53 -m limit --limit 2/sec --limit-burst 5 -j ACCEPT -A …

6
iptables阻止https网站
我希望在我的组织中阻止一些也运行基于https的网站,例如facebook,twitter和gmail。根据高级管理层的命令,不应在此处使用Squid。我们可以使用Untangle Lite Package和iptables。 除了Squid以外,还有其他选择吗?还有一些iptables规则可以阻止这种流量。 我找到了这个 iptables -t filter -I INPUT -m string --string facebook.com -j LOG --algo bm iptables -t filter -I INPUT -m string --string facebook.com -j REJECT --algo bm 但是https仍然可以在本地计算机以外的计算机上使用。

1
为什么我的iptables规则不起作用?
我的VPS上有两个接口:eth0和eth0:0。我想eth0:0使用iptables 阻止端口80上的传入数据包。我试过了,但是不起作用: iptables -A INPUT -i "eth0:0" -p tcp --destination-port 80 -j DROP 如果我更改eth0:0为eth0它可以正常工作。问题是什么?

1
双网络连接
我的Ubuntu 10.10机器上有一个USB蜂窝调制解调器和一个家庭局域网连接。 两者都独立工作。 我想知道如何同时连接两个设备,并能够指定哪个应用程序使用哪个设备连接到互联网。 有谁知道如何做到这一点?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.