Articles of iptables

将一个公共IPredirect到另一个公有IP,不同的子网和服务器

这是我的第一个问题,所以我希望我的结构是正确的。 由于这是一个朋友的情况下,我会感谢适当的设置的指导,因为我将无法访问该环境。 简而言之 – 在eth0上有一个公共ip(31.xxx)的服务器A. 它在特定端口上运行服务,侦听udp连接。 公共服务已经被转移到了服务器B,它再次拥有公有IP,但是在完全不同的子网上。 (93.xxx)。 目标是将所有到达服务器A上的旧IP的连接redirect到服务器b上的新IP。 服务器B需要知道报文的原始源IP地址。 我们已经在服务器A上使用了iptables的一些configuration,使用dnat进行prerouting和snat / masquerade进行后台处理,它可以工作,但是服务器B上的服务看到数据包从服务器A上的公共ip进行访问。 我已经读过,应该删除postrouting,而服务器b在返回这样的数据包时应该使用server a作为默认的gw,但是我不认为这是可能的,因为它们在完全不同的networking上。 任何帮助我们如何实现目标是值得赞赏的。 先谢谢你!

如何仅将MySQL端口打开到Amazon RDS进行复制?

我在专用服务器上有一个MySQL数据库,我想要复制到Amazon RDS以始终拥有最新的备份。 为此,Amazon RDS需要能够连接到我的主MySQL服务器。 我不想将MySQL端口3306打开到全世界,因为即使MySQL有自己的权限,如果在MySQL中发现安全问题,我认为这是额外的安全风险。 所以我想添加一个规则到iptables允许来自*.rds.amazonaws.com所有连接。 但据我所知,即使iptables允许指定一个主机名而不是一个IP地址,它会在创build规则时解决,而不是在检查数据包时解决。 而由于RDS的devise方式,RDS实例主机名背后的IP地址可能会在其生命周期中发生变化,所以这不是一个好的解决scheme。 我有什么替代品只能打开我的MySQL服务器到RDS?

如何防止Linux丢弃具有错误的MAC地址的传入数据包(混杂不起作用)

我以类似的方式在一个静态proxy_arp中configuration了三台机器: ———————- + + ————————– ——————— + + ———————- 机器A | | 机器B | | 机器C ———————- + + ————————– ——————— + + ———————- eth0 | — | tap0 tap1 | — | eth0 mac:52:54:00:12:34:56 | | mac:b6:e0:11:97:fd:5f mac:36:46:74:b1:92:71 | | mac:52:54:00:22:22:22 ip:192.168.12.2/24 | | ip:0.0.0.0 ip:0.0.0.0 | | ip:192.168.12.4/24 | | promisc up promisc […]

让SSL在Django项目上工作

我试图让我的Django网站完全移动到https (目前它只是http )。 networking服务器是nginx(反向代理)和gunicorn。 但是,即使正确安装SSL,打开端口443并调整我的nginx虚拟主机文件,我无法连接到我的网站通过https://example.com ( http://example.com工作正常)。 有人可以指导我如何解决这个问题? 以下是详细信息: 在/etc/iptables/rules.v4 (我使用iptables-persistent软件包)中,我有这个代码片段: # Acceptable TCP traffic -A TCP -p tcp –dport 22 -j ACCEPT -A TCP -p tcp –dport 80 -j ACCEPT -A TCP -p tcp –dport 443 -j ACCEPT 如果我写了sudo netstat -4plunt ,输出显示端口443正在监听: Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 […]

在dd-wrt路由器上configurationiptables

我试图设置dd-wrt路由器作为一些定制的arduino设备的子网。 这个想法是让路由器LAN / WIFI向Arduino设备开放,并且只允许交换机将WAN端口留给公司LAN(如果是控制服务器的话)。 我试图应用以下规则: 回声“允许所有路由器连接” iptables -A INPUT -s 127.0.0.1 -j ACCEPT iptables -A OUTPUT -d 127.0.0.1 -j ACCEPT 回声“允许所有ping” iptables -A OUTPUT -p icmp -m状态 – 状态NEW,ESTABLISHED,RELATED -j ACCEPT iptables -A INPUT -p icmp -m state –state ESTABLISHED,RELATED -j ACCEPT 回声“允许所有ntp(时间)” iptables -A OUTPUT -p udp -dport 123 -m state –state NEW,ESTABLISHED -j […]

如何通过端口映射来pipe理Docker容器?

我安装了ELK Docker容器 。 我用这些参数运行它: sudo docker run -p 5601:5601 -p 9200:9200 -p 5044:5044 -p 5000:5000 -it –name elk sebp/elk 检查检查: sudo docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 4f42137c954d sebp/elk:latest "/usr/local/bin/star 22 hours ago Up 22 hours 0.0.0.0:5000->5000/tcp, 0.0.0.0:5044->5044/tcp, 0.0.0.0:5601->5601/tcp, 0.0.0.0:9200->9200/tcp, 9300/tcp elk 乔,看起来不错。 以下是Docker容器驻留的KVM guest虚拟机的外部接口: marius @ elk:〜$ ifconfig eth0 eth0 […]

在iptables规则中的–tcp-flags中使用ALL的实用程序

我想知道以下两个–tcp-flags规则有什么区别: 1) -p tcp –tcp-flags SYN,FIN,RST SYN,FIN,RST 2) -p tcp –tcp-flags ALL SYN,FIN,RST

在nftables中丢弃碎片包

使用iptables可以用这个规则来阻塞分片数据包: iptables -A INPUT -f -j DROP 但是在nftables中没有相同的东西。 有什么办法呢?

使用clone和clusterip启动pacemaker虚拟ip负载平衡

我正在尝试为一组natted机器制作一个负载均衡的网关。 我有3个centos节点。 最初只有一个节点应该有内部网关IP,并且运行良好。 交通stream量。 然后,我尝试通过clusterip_hash / clone选项来平衡网关。 在底部有一个资源创build与个人电脑,我的小地点限制(不要移动IP到一台没有“互联网”的机器),最后是克隆命令。 一旦我克隆资源,我可以看到他们在两个主机上正确运行,并且每个都添加了iptables规则: Chain INPUT (policy DROP) target prot opt source destination CLUSTERIP all — anywhere gateway CLUSTERIP hashmode=sourceip-sourceport clustermac=81:48:85:71:7F:47 total_nodes=2 local_node=2 hash_init=0 问题是,只要arp条目从当前的任一网关机器的真实物理mac改变到iptables中显示的clustermac,所有的natted机器就会松动互联网连接。 我添加iptableslogging丢弃的数据包,但似乎没有丢弃。 同时,似乎没有任何事情可以通过。 (10.10.0.52是一个随机挑选的natted主机,试图ping谷歌,如果虚拟IP克隆被删除,并改变为单个浮动IP,然后stream量再次stream动) [root@three ~]# tcpdump -nni enp1s0 icmp tcpdump: verbose output suppressed, use -v or -vv for full protocol decode listening on enp1s0, link-type […]

错误:无法打开目录/lib/modules/4.2.0-25-generic:没有这样的文件或目录

我升级了Ubuntu 15.10到16.04,并且在那里发生了我的麻烦。 我第一次意识到我的麻烦,当我想做sudo iptables -A INPUT -m state –state NEW -p tcp –dport 80 -j ACCEPT 。 我得到了: modprobe: ERROR: ../libkmod/libkmod.c:586 kmod_search_moddep() could not open moddep file '/lib/modules/4.2.0-25-generic/modules.dep.bin' modprobe: FATAL: Module ip_tables not found in directory /lib/modules/4.2.0-25-generic iptables v1.6.0: can't initialize iptables table `filter': Table does not exist (do you need to insmod?) Perhaps iptables […]