标签: iptables

查看所有 iptables 规则

有没有办法iptables更详细地查看规则?

我最近在一系列 IP 中添加了伪装:

iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE
service iptables save
service iptables restart
Run Code Online (Sandbox Code Playgroud)

这已经完成了我想要的,但是当我使用:

iptables -L
Run Code Online (Sandbox Code Playgroud)

我得到的输出与我通常得到的输出相同:

Chain INPUT (policy ACCEPT)
target    prot opt source        destination

Chain FORWARD (policy ACCEPT)
target    prot opt source        destination

Chain OUTPUT (policy ACCEPT)
target    prot opt source        destination
Run Code Online (Sandbox Code Playgroud)

如何查看规则,包括我添加的规则?(系统为 CentOS 6)

iptables

171
推荐指数
5
解决办法
47万
查看次数

-m conntrack --ctstate 和 -m state --state 有什么区别

我正在阅读这个howto,并且有这样的东西:

我们可以允许已建立的会话接收流量:

$ sudo iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
Run Code Online (Sandbox Code Playgroud)

上述规则在 ESTABLISHED,RELATED 中的逗号两侧没有空格

如果上面的行不起作用,您可能在一个阉割的 VPS 上,其提供商没有提供扩展,在这种情况下,可以使用劣质版本作为最后的手段:

$ sudo iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
Run Code Online (Sandbox Code Playgroud)

是否有之间的工作一个显著差异-m conntrack --ctstate-m state --state?他们说一个可能行不通,但他们没有说为什么。为什么我应该更喜欢一个?

iptables

105
推荐指数
2
解决办法
10万
查看次数

阻止进程的网络访问?

是否可以阻止单个进程的(传出)网络访问?

linux networking process iptables

90
推荐指数
7
解决办法
6万
查看次数

为什么重新启动我的 Debian 系统时 iptables 规则消失了?

我添加了这个规则:

sudo iptables -t nat -A OUTPUT -d a.b.c.d -p tcp \
       --dport 1723 -j DNAT --to-destination a.b.c.d:10000
Run Code Online (Sandbox Code Playgroud)
  1. 当重新启动计算机规则被删除。为什么?
  2. 我能做些什么来使规则持续存在?

boot debian iptables

75
推荐指数
2
解决办法
14万
查看次数

在与传入相同的接口上回复?

我有一个有两个接口的系统。两个接口都连接到互联网。其中之一设置为默认路由;这样做的副作用是,如果数据包进入非默认路由接口,则回复将通过默认路由接口发回。有没有办法使用 iptables(或其他东西)来跟踪连接并通过它来自的接口发回回复?

linux routing iptables

71
推荐指数
4
解决办法
8万
查看次数

SNAT 和 Masquerade 的区别

我很困惑 SNAT 和 Masquerade 之间的实际区别是什么?

如果我想在本地网络上共享我的互联网连接,那么我应该选择 SNAT 还是 Masquerade?

firewall iptables

55
推荐指数
2
解决办法
7万
查看次数

iptables 将外部请求重定向到 127.0.0.1

我有一个服务在 127.0.0.1 上运行,端口为 2222。我需要将所有请求转发到 192.168.2.2:2222(外部 IP),仅从子网 192.168.1.0/24 到 127.0.0.1:2222。

我正在尝试使用它,但它不起作用。

$ iptables -t nat -I PREROUTING -p tcp -d 192.168.1.0/24 --dport 2222 -j DNAT --to-destination 127.0.0.1:2222
Run Code Online (Sandbox Code Playgroud)

我怎样才能让它发挥作用?

UPD:编辑地址方案。

iptables port-forwarding network-interface

54
推荐指数
3
解决办法
10万
查看次数

为什么 nmap 报告的某些端口被过滤而不是其他端口?

我正在使用iptables扫描一个应该有一个非常简单的防火墙的服务器:默认情况下,除了数据包之外RELATED,所有东西都被删除ESTABLISHED。唯一NEW允许的数据包类型是端口 22 和 80 上的 TCP 数据包,仅此而已(该服务器上没有 HTTPS)。

如我所料,nmap在前 2048 个端口上的结果显示22 和 80 是开放的。然而,一些端口显示为“已过滤”。

我的问题是:为什么端口 21、25 和 1863 显示为“已过滤”而 2043 其他端口未显示为已过滤?

我预计只会看到 22 和 80 为“开放”。

如果将 21,25 和 1863 视为“已过滤”是正常的,那么为什么所有其他端口也不是“已过滤”!?

这是nmap输出:

# nmap -PN 94.xx.yy.zz -p1-2048

Starting Nmap 6.00 ( http://nmap.org ) at 2014-06-12 ...
Nmap scan report for ksXXXXXX.kimsufi.com (94.xx.yy.zz)
Host is up (0.0023s latency).
Not shown: 2043 closed ports
PORT     STATE    SERVICE
21/tcp   filtered ftp …
Run Code Online (Sandbox Code Playgroud)

iptables nmap

50
推荐指数
2
解决办法
16万
查看次数

如何确保SSH端口只对特定IP地址开放?

这是我的/etc/sysconfig/iptables

它有两个端口,80 apache 和 22 ssh。

# Firewall configuration written by system-config-firewall
# Manual customization of this file is not recommended.
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state ESTABLISHED,RELATED -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 80 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j …
Run Code Online (Sandbox Code Playgroud)

security ssh iptables

46
推荐指数
3
解决办法
22万
查看次数

有没有办法找到哪个 iptables 规则负责丢弃数据包?

我有一个带有防火墙的系统。防火墙由 1000 多个 iptables 规则组成。这些规则之一是丢弃我不想丢弃的数据包。(我知道这一点,因为我确实iptables-save遵循了iptables -F并且应用程序开始工作。)有太多规则需要手动排序。我可以做些什么来告诉我哪个规则正在丢弃数据包吗?

firewall iptables

41
推荐指数
5
解决办法
8万
查看次数