Articles of iptables

fail2ban在安装iptables-persistent之后附加到链中

我已经使用了fail2ban了。 今天我想了解更多关于iptables的信息,并发现iptables-persistent。 安装,保存和清理/etc/iptables/rules.v4中的iptables规则看起来像这样 # Generated by iptables-save v1.6.0 on Thu Aug 24 15:18:11 2017 *filter :INPUT DROP [107:22965] :FORWARD ACCEPT [0:0] :OUTPUT ACCEPT [267:46575] -A INPUT -p tcp -m tcp –dport 22 -j ACCEPT -A INPUT -p tcp -m tcp –sport 53 -j ACCEPT -A INPUT -p udp -m udp –sport 53 -j ACCEPT -A […]

DD-WRT Iptables压缩包没有标记

我有一个问题,即使在没有任何错误的情况下应用规则,他们也不起作用 现在我的configuration iptables -A PREROUTING -t mangle -s 192.168.0.113 -p tcp -m multiport –dports 80,443 -j MARK –set-mark 3 现在该表格有以下条目 MARK tcp — 192.168.0.113 0.0.0.0/0 multiport dports 80,443 MARK set 0x3 testingconfiguration,找出IP地址 MacBookCROSP:~ crosp$ ping www.dd-wrt.com PING www.dd-wrt.com (83.141.4.210): 56 data bytes 64 bytes from 83.141.4.210: icmp_seq=0 ttl=55 time=34.097 ms 做一些http请求 root @ CROSP路由器:〜#cat / […]

用iptables设置端口的正确方法

我想优化我的iptables脚本设置来variables端口列表: # allowed services PORTS=21,22,23 iptables -A INPUT -p tcp –match multiport –dports $PORTS -j ACCEPT 这是正确的方法吗?

用iptables限制所有非ipsecstream量

我正在隧道模式下使用IPSEC,并且我需要确保这台计算机上的某个用户的所有stream量都被限制在VPN连接上,如果VPNclosures,数据包将被拒绝。 如此有效,除非用户是“myuser”,否则所有stream量都是允许的。 如果所有者是“myuser”,则必须拒绝所有非IPsec数据包(input和输出)。 我试图这样想,第一个规则将捕获所有的ipsecstream量,并允许它,然后阻止所有非ipsecstream量。 但是,这只会阻止myuser的所有stream量: iptables -A OUTPUT -m owner –uid-owner myuser -m policy –pol ipsec –dir out -j ACCEPT iptables -A OUTPUT -m owner –uid-owner myuser -j REJECT

iptables桥redirect也redirect其他接口

运行一个Ubuntu 14.04LTS家庭服务器机器。 我有一个小的物联网设备,发送HTTPpost到我想redirect到本地进程的远程web服务器(基本上拦截它的post到我自己的本地进程)。 服务器使用eth0(内置以太网端口),IOT设备在eth1上,这是一个USB以太网适配器。 我在/ etc / network / interfaces中创build了一个桥 auto eth0 iface eth0 inet dhcp auto eth1 iface eth1 inet manual auto br0 iface br0 inet dhcp bridge_ports eth0 eth1 我使用下面的iptables规则redirect到本地端口22041桥stream量。这工作正常。 iptables -t nat -A PREROUTING -i br0 -p tcp –dport 80 -j REDIRECT –to-port 22041 问题是,当局域网上的任何东西试图访问网页时,似乎也将端口80的stream量redirect到服务器。 如果我从服务器运行“firefox http://127.0.0.1/page ”,它工作正常。 如果我从LAN上的另一台机器上运行“firefox httpt:// server_ip / […]

针对特定本地盒子的多个外部IP

我有一个托pipe的服务器与4个IP在数据中心。 4个黑匣子和1个linux服务器在本地networking中,在我的工作场所后面的路由器。 而且我需要从我的托pipe服务器分配每个黑匣子中的一个,这也需要是静态的。 这两个服务器运行debian拉伸。 除了设置IP和网关我没有访问黑匣子。 我需要TCP和UDP支持。 什么是最好的方式来实现呢? 我只能想到在我的本地网关作为网关的2台服务器之间的VPN? 但我不真的需要一个VPN开销一个简单的代理就足够了。 而我将如何做到这一点?

转发连接到泊坞亭容器内的虚拟机

我正在努力实现的 在工作中,我们使用一个特定的操作系统,我们(开发人员)在virtualbox中运行。 虚拟化的操作系统正在运行我们用来访问操作系统的Samba服务器和rsh。 此外,虚拟化的操作系统需要访问我们networking上的多台服务器。 我想实现的是有一种方法来快速启动虚拟机作为Docker安装程序的一部分。 这个想法是有一个docker容器,将提供虚拟机的访问,一个容器,在虚拟机上运行testing,并在未来的一些其他容器,将提供例如。 系统的分析。 问题是什么 我有一个docker容器,用桥接networking设置一个VirtualBox机器。 我可以从启动它的容器中使用rsh访问虚拟机,没有任何问题。 但是,我不能从其他容器使用rsh访问虚拟机(呃,我发现了一个解决scheme,我将在下面描述,但我不认为这是一个好的)。 有趣的是,ping工作正常。 现在设置看起来像这样: 虚拟容器 容纳虚拟机的Docker容器 IP地址:172.18.0.5 网关:172.18.0.1 networking掩码:255.255.0.0 VirtualBox机器 在虚拟容器内运行 IP地址:172.18.1.5 网关:172.18.0.1 networking掩码:255.255.0.0 工人容器 一个容器,我想连接到VirtualBox机器 IP地址:172.18.0.6 网关:172.18.0.1 networking掩码:255.255.0.0 到目前为止,我发现只有一个解决scheme如何使用rsh连接到VirtualBox机器,那就是添加一个路由: ip route add 172.18.1.5 via 172.18.0.5 然后rsh到172.18.1.5。 但是,这有一个严重的问题。 因为我需要知道分配给虚拟机的地址,所以我必须将virtualbox地址设置为一个可以容易地从正在运行的容器的地址中猜出的地址。更改容器内的路由也意味着容器需要特权,我想保持特权容器的数量最less。 我想要更多的是能够直接向虚拟容器(172.18.0.5)发送消息。 这样我就不必猜测虚拟机的IP,但是我可以使用docker-compose的虚拟主机名。 我以为我可以使用NAT来实现这一点。 我所做的是: 将虚拟机的网关更改为虚拟机的IP地址 公开虚拟的所有端口 将以下两条规则添加到虚拟容器中: iptables -t nat -A PREROUTING – 目标172.18.0.5 -j DNAT – […]

只能通过VPN路由WLAN

我正在尝试设置我的RP3,使WiFi连接通过L2TP VPN进行路由。 我已经得到了VPN的工作,并通过以下设置,所有通信都通过VPN连接进行路由(ppp0是VPN通道设备): route add VPN_PUBLIC_IP gw 192.168.1.1 route add default dev ppp0 但是,正如我的标题所示,我只想要WLANstream量通过VPN连接路由。 我如何做到这一点? 下面你会发现一些可能有帮助的其他设置。 使用ifconfig: root@raspberrypi:/home/pi# ifconfig eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 192.168.1.110 netmask 255.255.255.0 broadcast 192.168.1.255 inet6 fe80::966b:f8b2:31f3:89c9 prefixlen 64 scopeid 0x20<link> ether b8:27:eb:f0:e4:76 txqueuelen 1000 (Ethernet) RX packets 151 bytes 13560 (13.2 KiB) RX errors 0 dropped 0 overruns 0 frame […]

iptables SNAT返回的stream量没有到达客户端

我有以下devise: client linuxserver destination 192.168.160.34 192.168.163.196 192.168.18.1 我可以从服务器从客户端和客户端ping服务器,他们都在同一个子网, 192.168.160/22 ,我也可以从服务器ping目的地 客户端ip路由列表: default via 192.168.163.196 dev ens192 192.168.160.0/22 dev ens192 proto kernel scope link src 192.168.160.34 客户端的iptables策略在所有链上都可以接受,并且已经刷新。 服务器的iptables在所有链上都可以接受,有一些docker + kvm规则等等。 我继续在服务器上添加以下内容: iptables -t nat -A POSTROUTING -s 192.168.160.34 -j SNAT –to 192.168.163.196 我还添加了net.ipv4.ip_forward=1并将其应用于内核参数。 我仍然无法ping客户端的目的地。 tcpdump的: 00:00:00.000000 IP (tos 0x0, ttl 64, id 3182, offset 0, flags […]

奇怪的AWS EC2可访问性问题 – Ubuntu,nginx,iPad

我不会说我是一个服务器pipe理的新手,但显然我错过了这里的一些关键时刻… 问题:从某个特定设备(运行Safari的Apple iPad(版本8.4.1(12H321)型号:MD515HC / A)访问网站时,连接到服务器的连接丢失(如通过服务器上的防火墙locking) 一段时间的ipad不活动后,连接回来。 如果在locking之前有一个到服务器的主动SSH连接 – 连接保持正常,但是无法build立到服务器的新连接(就好像所有的端口都closures了一样)。 Iptables的input/输出策略设置为ACCEPT。 Amazon EC2已将我的IP地址设置为允许所有stream量。 # iptables -L -n 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 Chain f2b-sshd (0 references) target prot opt source destination 常规的日志文件显示绝对没有相关信息。 # apparmor_status […]