Questions tagged «iptables»

iptables允许创建规则以定义数据包过滤行为。


3
传入ACCEPT所有iptables规则仍然出现
我在这里遵循此指南:http : //isalazyadmin.net/2009/07/02/configuring-a-basic-firewall-for-debian-linux/ 而且,我列出了列出的iptables,但是我的服务器似乎仍在接受所有传入的连接(即:即使我不允许这些端口,bittorrent同行仍在连接)。 /etc/iptables.rules *filter # This will allow all loopback (lo0) traffic and drop all traffic to 127/8 # that does not use lo0 -A INPUT -i lo -j ACCEPT -A INPUT ! -i lo -d 127.0.0.0/8 -j REJECT # This accepts all already established connections -A INPUT …

2
如何静默丢弃一些外发数据包?
我正在对正在使用的应用程序进行一些测试,并且需要能够在短时间内静默丢弃传出UDP数据包,以复制可能的故障模式。 有什么办法吗? 注意:iptables DROP 对于传出消息,请保持沉默!当通过send()挂断一个或类似的呼叫时iptables,它EPERM出于某种奇怪的原因而返回(请参阅此处。不幸的是,我无法使用该应答,因为我的目的地在单个跃点之外)。 xtables-addons 曾经有一个STEAL动词,但几年前我就找不到原因将其删除。 我现在已经尝试在路由表中使用虚假路由,但不幸的是,这似乎破坏了两个方向的通信流量。 对于我需要做的测试,我必须允许入站 UDP流量,并且一旦我安装了虚假路由,流进来的数据包就会立即停止,尽管源仍在发送它们。

1
NAT为什么不从计算机的TCP和UDP端口池保留端口?
我做了两个实验。这是他们两个的网络: [private network] [public network] A -------------------- R ----------------- B 192.168.0.5 192.168.0.1|192.0.2.1 192.0.2.8 一个的默认网关[R 。R具有活动的IPv4转发和以下iptables规则: iptables -t nat -A POSTROUTING -p TCP -j MASQUERADE --to-ports 50000 目的是,使用R的端口50000 将A的任何TCP 都屏蔽为192.0.2.1 。 我使用,在B的端口60000上发布了TCP服务nc -4l 192.0.2.8 60000。 然后我从A打开了一个连接:nc -4 192.0.2.8 60000 A开始发送如下所示的数据包: 192.168.0.5:53269 -> 192.0.2.8:60000 R将其翻译成 192.0.2.1:50000 -> 192.0.2.8:60000 到目前为止,一切都很好。 然后我试图打开下面的客户端- [R :nc …

3
在CenOS / RHEL7上重启后,如何使iptables服务自动启动?
我正在准备的新安装的家用服务器有一些问题。我已经在上面安装了CentOS7,我发现默认情况下端口80和443是关闭的。因此,我使用以下命令将它们添加到iptables中: iptables -I INPUT 5 -i eth0 -p tcp --dport 80 -m state --state NEW,ESTABLISHED -j ACCEPT iptables -I INPUT 5 -i eth0 -p tcp --dport 443 -m state --state NEW,ESTABLISHED -j ACCEPT service iptables save 我还安装了不存在的iptable服务。问题是,每次我重新启动计算机时,都会擦除新配置。 我试图将iptable服务添加到chkconfig中,但出现以下错误: [root@CentOS-7]# chkconfig --add iptables error reading information on service iptables: No such …

1
使用iptables转发出站流量端口
我正在尝试使用将所有从端口80传出的流量转发到端口8080,iptables并且尝试了以下规则,尽管它不起作用: iptables -t nat -A OUTPUT -p tcp --dport 80 -j REDIRECT --to-port 8080 另外,对于传入流量,我需要一个规则,即转发同一主机上的端口以不作为代理。

4
dmesg充满防火墙日志
在我的iptables中,我有一条记录被丢弃的数据包的规则: -A INPUT -i eth0 -j LOG --log-prefix "FW: " --log-level 7 -A INPUT -i eth0 -j DROP 在这方面/etc/rsyslog.conf,我还有另一个规则将这些日志发送到专用文件/var/log/firewall.log。 :msg, contains, "FW: " -/var/log/firewall.log & ~ 将& ~立即删除日志,因此它们不会淹没syslog或其他日志文件。 这很好,除了它会泛滥dmesg那些防火墙日志(而不是/var/log/dmesgcommand的输出dmesg)。 有没有办法防止这些日志显示在dmesg?

2
将'-A INPUT -j DROP'添加到规则列表后,IPTABLES变慢
我刚开始使用iptables,偶然发现了一些我不太了解的东西。 仅供参考,我按照Ubuntu Wiki的IptablesHowTo的说明进行操作。 nat和mangle表为空,我现在只使用filter表。 问题 如果我添加以下iptables规则: iptables -A INPUT -p tcp --dport ssh -j ACCEPT iptables -A INPUT -j DROP ...然后我仍然可以通过ssh访问我的机器,但是所有iptables命令需要大约一两分钟才能运行。这不是DNS问题,请-n不要更改它。 解决方案 如果我刷新表并添加这三个规则,则一切工作正常: sudo iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT iptables -A INPUT -p tcp --dport ssh -j ACCEPT iptables -A INPUT -j DROP 有人可以向我解释一下,为什么第一条规则对iptables有如此大的影响?我知道它允许建立的会话接收流量,但是如果ssh打开,为什么我需要它?
8 iptables 

5
将UDP单播数据包转换为广播?
我们需要从Internet唤醒内部局域网上的一些计算机。 我们有一个封闭的路由器,几乎没有配置它的方法。 我想使用netfilter(iptables)来执行此操作,因为它不涉及守护程序或类似程序,但是其他解决方案也可以。 我的想法: 外部计算机向公共IP地址发出WOL(局域网唤醒)数据包(内部带有正确的MAC) 在路由器上打开了正确的端口(例如1234),将数据重定向到Linux机器 Linux盒将UDP单播数据包转换为广播数据包(内容完全相同,只有目标地址被修改为255.255.255.255或192.168.0.255) 多播数据包到达每个NIC,所需的计算机现在处于唤醒状态 为此,一个非常简单的netfilter规则是: iptables --table nat --append PREROUTING --in-interface eth+ --protocol udp --destination-port 1234 --jump DNAT --to-destination 192.168.0.255 las netfilter似乎忽略了广播的转换。192.168.0.255和255.255.255.255没有任何内容。还使用192.168.0.0和0.0.0.0进行了测试, 我使用tcpdump查看发生了什么: tcpdump -n dst port 1234 13:54:28.583556 IP www.xxx.yyy.zzz.43852 > 192.168.0.100.1234: UDP, length 102 仅此而已。我应该有第二行像: 13:54:28.xxxxxx IP www.xxx.yyy.zzz.43852 > 192.168.0.255.1234: UDP, length 102 如果我重定向到非多播地址,则一切正常。我有2条预期线。但是显然,这对WOL不起作用。 …

2
iptables -F是否会永久删除所有iptables规则?
在RHEL培训文档中,作者说: ...运行以下命令以在当前系统上禁用防火墙:iptables -F 他明确使用了“禁用”一词,对我而言,它暗示重新启用将很容易。在阅读iptables的手册页时,我看到以下内容: 冲洗选定的链(如果没有给出表中的所有链)。这等效于删除所有规则。 我可以澄清预期的行为吗?
8 rhel  iptables 

2
iptables端口镜像
我需要能够将在端口8001上接收到的数据包的副本复制到端口8002。我尝试了以下操作,但是我收到一个错误---tee未定义。 sudo iptables -t nat -A PREROUTING -p TCP -s 127.0.0.1 --sport 8001 -j DNAT --to-destination 127.0.0.1:8002 --tee
8 linux  iptables  tcp 

1
iptables / pf规则仅允许XY应用程序/用户使用?
我认为没有iptables / pf解决方案只能在例如:出站tcp端口80,eth0上允许XY应用程序。因此,如果我有一个用户ID:“ 500”,那么如何阻止端口80 / outbound / tcp / eth0上提到的其他通讯?(例如:仅privoxy正在使用eth0上的端口80) 额外:virtualbox也使用端口80?当访客操作系统上的浏览器访问网站时。如何将其删除?-设置普通用户将有太多漏洞
8 iptables  firewall  pf 

1
如何在centos 6中将所有传出流量从默认eth0重定向到eth1
在我的AWS AMI Centos服务器中,我已经通过公共ip部署了具有2个子网eth0 10.0.0.1的VPC和Internet网关,而eth1 10.10.0.1则通过公共IP部署了NAT网关,我的问题是我已经将NAT网关Public ip提供给客户端进行交互,或者我们可以通过该子网推送数据。有几个客户端连接到同一台服务器,我不想添加路由来定义ip shd从哪个子网推送数据,我想更改默认值,或者说我所有来自eth1子网的传出流量。..到目前为止,我已经尝试在网络脚本中尝试iptables和更改网关,以查看下面的详细信息。 /etc/sysctl.conf net.ipv4.ip_forward =1 sysctl net.ipv4.ip_forward = 1 sudo iptables -t nat -A POSTROUTING --out-interface eth1 -j MASQUERADE sudo iptables -A FORWARD --in-interface eth0 -j ACCEPT 由于此im无法ping或telnet到客户端ip,因为客户端已打开eth1子网的连接,但是当我将流量从eth0转发到eth1时,它没有更改源地址,而是使用了客户端网络未知的eth0子网ip。 甚至试图更改默认的eth1 **/etc/sysconfig/network GATEWAY=x.x.x.x GATEWAYDEV=eth1** 在这里所有流量阻塞,即使传入流量也更改为eth1。 我的要求是我的传入流量来自eth0子网10.0.0.1,而我的传出流量来自eth1子网10.10.0.1。添加路由将使我的过程更加繁忙,我想自动添加一些命令或脚本来完成所有工作。
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.