Articles of iptables

如何为仅接受来自特定IP的telnet的机器编写iptables规则?

我知道如何拒绝一个特定的IP(S),但如何拒绝所有除了一个IP? 仅拒绝1:iptables -A FORWARD -s 1.2.3.4 -d 2.2.2.2 -i eth0 -p tcp -m tcp -dport 23 -j REJECT。 在这种情况下,我拒绝1.2.3.4从telneting到2.2.2.2

阻止未解决的IP地址是一个好主意?

我有一个网站在哪里: 我们目前有很多机器人试图抓住来自中国,乌克兰等的我们的内容(这是一个商业目录)。 根据AWStats,5%的IP地址是“未解决”的 所以我的想法是限制每个IP的HTTP请求的数量(除了知名的机器人,例如Google Bot): 这将解决我的第一个问题(机器人) 但是,这也将阻止所有“未解决的IP”stream量 – >阻止所有这些“未解决”的IP是一个好主意? 我会阻止一些合法的stream量?

如何使用iptables在centos中打开10011端口

我需要打开一个名为Teamspeak 3的应用程序的端口10011才能工作。 我正在使用CentOS,我尝试了以下命令: sudo iptables -I INPUT -p tcp –dport 10011 -j ACCEPT 我按下input,控制台去了一个新的行,没有错误,没有输出。 仍然,当我使用一个网站来检查,如果该端口是打开的,它不会打开。 有什么我做错了,或者我可能忽略了? 谢谢。 编辑:这是什么iptables -L给我(我已经删除了一些行安全的原因。) Chain INPUT (policy ACCEPT 0 packets, 0 bytes) pkts bytes target prot opt in out source destination 0 0 ACCEPT tcp — any any anywhere anywhere tcp dpt:10011

DROP与REJECT DDoS

我问了别的地方,我得到了这个回应: 使用DROP可将任何types的DDoS攻击转换为SYN泛洪,因为您的服务器预期不会得到ACK响应。 即使你可以微调你的TCP超时选项,一些设置硬编码到内核中。 REJECT非常快,占用的带宽很小。 欲了解更多信息Google“下降与拒绝”。 我研究了他所说的话,他似乎是正确的,但我只是想确认一下。

如何将外部TCP端口80路由到环回(127.0.0.1)端口8080?

我有一个真正的IPtestingVDS盒。 如果我在物理接口端口80上启动Web服务器,可以通过它的IP地址(和默认端口80)从另一台计算机打开: python -m SimpleHTTPServer 80 但是,如果我尝试重新从物理接口eth0端口80到环回127.0.0.1端口8080我可以连接从另一台计算机端口8080,但不能连接在端口80,它只是无尽的“连接”。 似乎没有发生redirect: iptables -t nat -A PREROUTING -i eth0 -p tcp –dport 80 -j DNAT –to-destination 127.0.0.1:8080 python -m SimpleHTTPServer 8080 我做错了什么? 🙁 在“127.0.0.1:8080”上的PS绑定服务器产生相同的结果,但是这并不重要,因为运行在“0.0.0.0:8080”上的服务器将接受redirect到“127.0.0.1:8080”的连接。 据我所知。 🙁 iptables -L结果: Chain INPUT (policy ACCEPT) target prot opt source destination Chain FORWARD (policy ACCEPT) target prot opt source destination Chain OUTPUT (policy […]

是否有必要在iptables规则的目标选项中指定服务器ip?

我使用iptables来logging所有传入的连接。 在通过loginvar/log/messages ,我注意到有一些从另一台计算机到未分配的LAN IP地址的传入连接,例如: 1月7日23:31:28某些内核IPTABLES IN = wlan0 OUT = MAC = ff:ff:ff:ff:ff:ff:00:12:34:56:e1:e1:08:00 SRC = 192.168.1.12 DST = 192.168.1.255 LEN = 239 TOS = 0x00 PREC = 0x00 TTL = 128 ID = 37 PROTO = UDP SPT = 138 DPT = 138 LEN = 219 我的问题是,如果这些连接不是注定我的服务器,为什么他们loginINPUT? 如果他们正在被logging,这是否意味着我的服务器正在接受他们,如果我没有明确地过滤这些? 我目前的iptablesconfiguration是: *filter :INPUT DROP [0:0] :FORWARD DROP […]

iptables只允许来自某个端口的某些ip

当我编辑iptables时,我总是感到紧张,因为我知道当服务器坐在云端时,阻止所有到服务器的stream量是一个很大的问题。 这些会是正确的一系列命令吗? iptables -A INPUT -p tcp –dport 123 -s 1.2.3.4 -j ACCEPT iptables -A INPUT -p tcp –dport 123 -s 5.6.7.8 -j ACCEPT iptables -A INPUT -p tcp –dport 123 -j DROP iptables-save

与阻塞的端口build立连接,这是什么意思?

我对系统pipe理相当陌生,而且我一直在努力熟悉像netsat这样的工具。 如果我在我的服务器上运行netstat -n ,我看到这一行: tcp 0 0 xxx.xxx.xxx.xxx:44573 xxx.xxx.xxx.xxx:443 ESTABLISHED 但是,我使用默认策略为DROP的iptables,44573不是我允许stream量的端口之一。 我的规则在iptables中看起来像这样: Chain INPUT (policy DROP) target prot opt source destination ACCEPT tcp — anywhere anywhere tcp dpt:pcsync-https state NEW,ESTABLISHED ACCEPT tcp — anywhere anywhere tcp dpt:21022 state NEW,ESTABLISHED ACCEPT tcp — anywhere anywhere tcp dpt:http state NEW,ESTABLISHED ACCEPT tcp — anywhere anywhere tcp dpt:https […]

iptables阻止nginx成为node.js的反向代理

有一些麻烦,我的限制性的iptables设置。 我有nginx(端口80)设置为node.js(端口8080)前面的反向代理。 当iptables服务停止时,一切正常。 当它重新打开,我得到来自nginx的代理超时错误。 不工作的部分是“INCOMING”部分中的“HTTP(node.js)”块 ; 请参阅下面的实际configuration文件内容。 这是相当混乱的,因为我覆盖了我的系统中唯一的两个以太网“适配器”: eth0和lo 。 这个问题是否与nginx在eth0和lo上与node.js交谈的事实? 这是我的iptablesconfiguration: # Remove all existing rules iptables -F # Set default chain policies iptables -P INPUT DROP iptables -P FORWARD DROP iptables -P OUTPUT DROP ##### BEGIN: INCOMING ##### # HTTP (nginx) iptables -A INPUT -i eth0 -p tcp –dport 80 -m state –state […]

打开一个端口centos

我试图第一次打开一个centos框上的一些端口,我已经编辑了iptables文件,但是当我在主机上运行nmap或者从另一台机器上运行nmap时,这些端口似乎并没有打开。 这是我的iptables文件: *filter :INPUT ACCEPT [0:0] :FORWARD ACCEPT [0:0] :OUTPUT ACCEPT [2349:130522] -A INPUT -m state –state RELATED,ESTABLISHED -j ACCEPT -A INPUT -p icmp -j ACCEPT -A INPUT -i lo -j ACCEPT -A INPUT -m state –state NEW -m tcp -p tcp –dport 22 -j ACCEPT -A INPUT -m state –state NEW -m tcp -p […]