我想转发来自192.168.99.100:80to 的请求127.0.0.1:8000。这就是我在 linux 中使用的方法iptables:
iptables -t nat -A OUTPUT -p tcp --dport 80 -d 192.168.99.100 -j DNAT --to-destination 127.0.0.1:8000
Run Code Online (Sandbox Code Playgroud)
我如何在 MacOS X 中做同样的事情?我尝试了一些ipfw命令组合,但没有取得多大成功:
ipfw add fwd 127.0.0.1,8000 tcp from any to 192.168.99.100 80
Run Code Online (Sandbox Code Playgroud)
(对我来说,成功是指向浏览器http://192.168.99.100并从我运行的开发服务器获得响应localhost:8000)
我遇到过以下建议的文章:
iptables -A INPUT -p tcp 1000:2000 -j ACCEPT
Run Code Online (Sandbox Code Playgroud)
其他人则表示上述方法不起作用,iptables 仅支持带有该--multiport选项的多个端口声明。
有没有用iptables打开许多端口的正确方法?
非常基本的问题:如何在 IPTABLES 上预置规则而不是 APPEND?
DROP我的规则底部有声明。我有一个添加新规则的软件,但是在DROP语句之后添加规则并不好。每次我想添加新规则时,我都必须刷新表(效率低下)。
有没有办法预先添加规则,即,将规则添加到表格的顶部而不是底部?
非常感谢。
我正在设置 LAMP 服务器,需要阻止 SSH/FTP/等。成功的蛮力登录尝试。我已经看到了许多关于 denyhosts 和 fail2ban 的建议,但很少对两者进行比较。我还读到 IPTables 规则可以填充相同的功能。
为什么我会选择其中一种方法而不是另一种方法?serverfault 上的人如何处理这个问题?
我受到来自中国的黑客攻击的轰炸,所有这些都使用类似的 IP。
我将如何使用 116.10.191.* 等内容阻止 IP 范围?
我正在运行 Ubuntu Server 13.10。
我正在使用的当前行是:
sudo /sbin/iptables -A INPUT -s 116.10.191.207 -j DROP
Run Code Online (Sandbox Code Playgroud)
这只能让我一次阻止每个人,但黑客每次尝试都在更改 IP。
愚蠢的问题:
Windows 上是否有相当于 iptables 的工具?我可以通过 cygwin 安装一个吗?
真正的问题:我如何在 Windows 上完成我可以通过 iptables 完成的任务?只是寻找基本的防火墙功能(例如阻止某些 IP 地址)
我敢肯定 Linux 系统管理员非常熟悉包过滤框架iptables的用户界面netfilter。
现在,这个“问题”旨在成为一个社区维基,用于收集各种iptables智慧。没有什么是太普通或太晦涩的。发布您知道的任何可以帮助他人充分利用iptables.
服务器上防火墙的一部分:
iptables -A INPUT -p tcp --dport 22 -m state NEW --state -m recent --set
iptables -A INPUT -p tcp --dport 22 -m state --state NEW -m recent --update --seconds 100 --hitcount 10 -j DROP
Run Code Online (Sandbox Code Playgroud)
当我在线搜索时,我总是看到该规则中使用了 NEW,但我很难理解为什么没有使用 ESTABLISHED 和 RELATED。
像这样 :
iptables -A INPUT -p tcp --dport 22 -m state NEW,ESTABLISHED,RELATED --state -m recent --set
iptables -A INPUT -p tcp --dport 22 -m state --state NEW,ESTABLISHED,RELATED -m recent --update --seconds 100 --hitcount 10 -j DROP
Run Code Online (Sandbox Code Playgroud)
有人可以向我解释什么时候新数据包完全变为 ESTABLISHED 和 RELATED …
再说一遍,我们都会犯错,而我刚刚犯了一个。
简史:当我注意到一些奇怪的行为时,我正在租用的 VPS (Debian) 上做一些事情。使用该netstat命令,我看到了一个通过 SSH 的非授权连接。我不知道该怎么办,所以我决定使用iptables以下命令关闭他的连接:
iptables -A INPUT -p tcp --dport ssh -s IP -j DROP
Run Code Online (Sandbox Code Playgroud)
但我累了,我写了
iptables -A INPUT -p tcp --dport ssh -j DROP
Run Code Online (Sandbox Code Playgroud)
我把自己(和其他人)踢出去了......
我该如何解决?
我想将所有流量从端口 443 重定向到内部端口 8080。我正在为 iptables 使用此配置:
iptables -t nat -I PREROUTING --source 0/0 --destination 0/0 -p tcp \
--dport 443 -j REDIRECT --to-ports 8080
Run Code Online (Sandbox Code Playgroud)
这适用于所有外部客户。但是如果我试图从同一台机器访问端口 443,我会收到连接被拒绝的错误。
wget https://localhost
Run Code Online (Sandbox Code Playgroud)
如何扩展 iptables 规则以重定向本地流量?