Articles of iptables

iptables – redirect除了列表MAC地址

我在路由器上使用iptables将所有networkingstream量redirect到我的页面。 但我不知道如何除了我的MAC地址列表。 我做了这样的命令 iptables -t nat -A PREROUTING -m mac! –mac-source xx-xx-xx-xx-xx-xx -p tcp –dport 80 -j DNAT – to 127.0.0.1:8080(Host A) iptables -t nat -A PREROUTING -m mac! –mac-source xx-xx-xx-xx-xx-xx -p tcp –dport 80 -j DNAT – 到127.0.0.1:8080(主机B) 但是它只是执行主机A的命令。这意味着主机A可以正常访问网页,但主机B仍然有redirect。 我怎样才能正常访问两个mac地址?

iptables v1.4.21:无法加载匹配`-d':没有这样的文件或目录

我正在运行kerenl 3.14.18,并使用iptables 1.4.21,使用这些选项–static-enable –disable-shared构build。 当我运行这个命令:/ sbin / iptables -A PREROUTING -m -d 127.3.0.2/24 -j DNAT – 到目的地10.0.0.1 -p udp -dport 69我得到这个错误信息:iptables v1.4.21:无法加载匹配`-d':没有这样的文件或目录 有什么可以帮助解释我失踪? 先谢谢你。

iptables:何时使用input或输出与LAN连接?

在具有LAN的SSH服务器/防火墙(192.168.2.3)(例如192.168.2.1/30)中,192.168.2.1/30networking的内部机器所做的连接尝试将被防火墙解释为传入或传出连接? 如果它们被读取为传入或传出,我必须指定目的地址还是源地址块(192.168.2.1/30)? 或者何时需要-d或-s选项? 我的理解是这样的:如果我想让这些内部机器与外界build立新的联系,那么规则就是这样的。 iptables -A OUTPUT -s 192.168.2.8/30 -m state –state NEW -j ACCEPT 如果SSH服务器想要与外界build立新的SSH连接,则规则就是这样 iptables -A OUTPUT -p tcp –sport 22 -m state –state NEW -j ACCEPT 在这种情况下,我应该省略了ssh服务器的ip地址还是将其包含在规则中? 非常感谢。

SSH端口是不同的连接

好, 所以这是交易。 我设置了一个Iptables规则如下: IPTABLES -A INPUT -p tcp –dport 51722 -j ACCEPT 如果我做systemctl status sshd.service ,我得到以下内容: Server listening on 0.0.0.0 port 51722. 好。 这就是我想要的。 然后,我ssh的ssh -p 51722 [email protected] 一旦我login,我再次检查sshd的状态并注意。 Accepted password for root from MY.IP.ADDRESS port 49344 ssh2 为什么它显示它在端口49344而不是51722?

iptables-save用errno返回1 – 操作未被授权

当我运行命令 iptables-save 它返回errno 1 – 操作不允许 如果我做: iptables -L 接着: iptables-save 然后iptables保存成功 这个错误只发生一次。 成功后失败消失。 我正在写一个脚本,在我的主机上部署iptables,我必须从这个错误自动恢复,有什么build议? 我也注意到,当我这样做的时候: /etc/rc.d/init.d/iptables status 我得到: Firewall is stopped.

“configurationiptables时,”新的“错误的参数

在Debian 7.6服务器上configurationiptables以logging新的TCP连接时,出现以下错误: Bad argument `NEW' Error occurred at line: ## 引发错误的行格式如下: -A INBOUND-ACCEPT -p tcp -m state –state NEW -j LOG –log-prefix ' NEW INBOUND TCP ' –log-level 4 我正在使用'iptables-restore'命令从文件应用防火墙规则。 这里的configuration有什么问题? 任何援助非常感谢。 注意 INBOUND-ACCEPT是为了便于logging已接受的数据包而创build的一个链。 在UDP和ICMP日志logging链中还有一些其他类似的格式化的行,但是修复这个规则的问题将使我能够解决我规则文件中其他行的问题。

如何使用iptables阻止除特定用户以外的每个端口?

我想用iptables阻止除了80,443,1005以外的每个端口到一个特定的用户(所有者)。 我应该使用什么命令?

iptables删除除我的域名之外的所有连接

我试图使用此命令来阻止一个域iptables -I INPUT -p tcp -m string –string "Host: domain.com" –algo bm -j REJECT和它的工作,但是,我想拒绝所有,但接受指定域名是可能的?

不能理解这个例子fail2ban规则

我试图确保我的pipe理员和用户login页面免受暴力攻击。 我已经安装了iptables和我能find的最接近的东西是这样的: 监狱档案: [nginx-login] enabled = true filter = nginx-login action = iptables-multiport[name=NoLoginFailures, port="http,https"] logpath = /var/log/nginx*/*access*.log bantime = 600 # 10 minutes maxretry = 6 /etc/fail2ban/filter.d/nginx-login.conf # Blocks IPs that fail to authenticate using web application's log in page. # Scan access log for HTTP 200 + POST /sessions => failed log in. [Definition] […]

iptables阻止7层DDoS攻击

最近我在我的网站上遇到了很多第7层的ddos攻击。 特别是在索引页上的HTTP GET请求泛滥。 (约20k r / s),我的服务器是在OVH,所以它没有超载pipe道,但有没有办法使用iptables我可以检测IPs谁提出过多的请求,并放弃他们的连接,以避免过载我的networking服务器? 还是有更好的解决scheme来过滤这些数据包,同时不会对合法客户端产生负面影响。 我在Ubuntu 12.04上使用apache。