临时iptables更改


1

我有一个SSH的远程系统。由于我打算让这个系统更容易公开访问,我想改进我的iptables规则,而不是接受任何事情。

我添加了一个“iptables -A INPUT -p tcp --dport 22 -j ACCEPT”规则,但是我真的不想以一种我可能将自己锁定在系统之外的方式更改默认规则(以及我会花一天时间和火车票来解决这个问题。

是否有某种方法我可以对iptables进行更改(比如将默认规则更改为DROP),例如5分钟超时,所以如果我确实改变了错误并将所有人锁定,我可以等一会儿再试一次?


您可以通过规则接受来自公共IP地址的所有流量,然后在该规则之后进行更改。如果您将其他人锁定在外,那么您可以将其锁定并进行更改。是的,有办法超时。必须查阅它。
cybernard 2014年

您还可以使用at命令执行将在一段时间后删除规则的脚本。这种方式即使您的公共IP更改,您仍然可以重新登录。
Boogy 2014年

使用具有此功能的iptables前端。例如Firehol有firehol try功能。
Zoredache 2014年

Answers:


0

在其他iptables规则中,你应该有一个声明:

 sudo iptables -L
 Chain INPUT (policy ACCEPT)
 target     prot opt source               destination
 ACCEPT     all  --  anywhere             anywhere            state RELATED,ESTABLISHED

如果不这样做,您可以按如下方式进行设置:

  sudo iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT

或者,如果这不起作用,

  sudo iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

这样,您修改iptables的会话肯定不会受到影响。

现在您可以根据需要开始修改iptables,当您希望尝试新规则时,只需从您的客户端PC启动一个独特的 ssh会话。ESTABLISHED,RELATED规则不适用于此新会话,因此您可以直观地看到您的新规则是否已将您切断,没有任何风险。


@Will Newbery你将遵守我在下面建议的规则。
cybernard 2014年

0

如果你使用ipset,它可以全部自动化

 ipset create test hash:ip timeout 300

 iptables -A INPUT -p tcp -m tcp -m multiport -m state --state NEW -j SET --add-set test src ! --dports 25,80,993,5900
 iptables -A input_ext -m set -j DROP  --match-set test src

将ports选项更改为您想要的任何内容。

需要在重新启动之间保存列表吗?

   ipset save >backup.txt

需要恢复吗?

   ipset restore <backup.txt

你想要包字节计数器吗?

将关键字计数器添加到ipset create语句的末尾。


0

大多数Linux发行版都附带了已经安装或通过包管理器提供的iptables-apply脚本。它允许您应用一组新的iptables规则,如果您未确认它们在特定时间内工作,则会自动回滚。


-1

只需安装fail2ban并启用ssh和ssd-dos。您可以轻松设置禁止时间。另一方面,安装其他远程访问,例如Webmin,并在非标准端口上运行它。

将这些行添加到过滤器sshd.conf中,并在failregex部分的末尾添加这些行

vi /etc/fail2ban/filter.d/sshd.conf

.... ^%(__ prefix_line)sConnection由[preauth]关闭$ ^%(__ prefix_line)sReceived断开连接:11 :(再见)?[preauth] $ ^%(__ prefix_line)sReceived断开连接:3:\ S +:验证失败$ ^%(__ prefix_line)s(?:错误:)?收到断开​​连接:3:。*:验证失败(?:[preauth ])?$

http://www.garasiku.web.id/web/joomla/index.php/security/90-fail2ban-blocking-preauthentication

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.