问题标签 [firewalld]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2332 浏览

centos7 - 端口打开时 telnet 超时

我买了一个 VPS 并在上面构建了一个 shadowsocks 服务器。它运行了大约 2 个月,但突然无法工作,即我无法使用它克服 GFW。所以我检查了服务器,重新安装了所有东西,检查了防火墙,但仍然无法解决问题。请帮我解决这个难题!

首先,我可以 ssh 到服务器。我使用的是mac,服务器操作系统是CentOS7。

我试图从 mac ping 服务器,它可以连接。

然后我使用我在 shadowsocks 中定义的特定端口远程登录它,但它无法连接。

所以从服务器我检查netstat:

端口是 8754,PID3652 是我的 shadowsocks 服务。

我还检查了我的防火墙设置,并且端口 8754 是打开的,

我还检查了 iptables,这是返回的内容:

我不知道该检查什么或现在该做什么...请指教...非常感谢!

0 投票
1 回答
57 浏览

docker - 部署和保护 Docker 容器和服务器操作系统

我正在运行 CENTOS 服务器,并将在其之上安装 Docker 引擎,不用说,我将设置我的容器。我将首先设置两个容器:(1) 提供我的网页 (2) 运行我的数据库。

我的想法是在 CentOS 上安装 FirewallD。我的问题如下:

  1. 我是否需要在容器本身内安装某种防火墙?如果是这样,高层可以告诉我这是如何完成的,以及我将在容器级别安装什么防火墙?

  2. 我是否需要在 CENTOS 上运行的 FirewallD 中打开一些端口才能访问 Docker 引擎/容器?

  3. 如您所知,这将是我第一次使用容器进行开发,所以我是否需要先在服务器上创建容器,然后从我的开发机器将容器推送到已识别的容器?

如果我能在这里得到一些指导,我将不胜感激,因为我的任务是这样做,但不确定正确的路径。

再次感谢。

我真的没有尝试太多,因为我不知道从哪里开始。目前我刚刚对我的用例进行了一些研究。

0 投票
1 回答
59 浏览

docker - RHEL7 dockerd 远程连接

我正在探索创建一个可以在 rhel7 系统上启动和停止 docker 容器的网关。我已经对我的 /usr/lib/systemd/system/docker.service 进行了更改,以在具有以下内容的接口上启动 docker。

除非我禁用防火墙,否则我无法连接到 dockerd 以获取容器的状态。但是如果我禁用防火墙,我就无法启动容器。

我意识到为 dockerd 运行开放的 tcp 端口会产生后果。之前,我得到了一切安全,我想了解网关如何做这样的事情。

有没有其他人有做这样的事情的经验?

0 投票
2 回答
876 浏览

python - 使用 python 从 dbus 获取“状态”

我想在 python 中做一件非常简单的事情——通过 dbus 从 firewalld 读取状态——“org.freedesktop.DBus.Properties”。

根据https://firewalld.org/documentation/man-pages/firewalld.dbus.html

我找到了如何使用来自 linux 的 dbus-send 来做到这一点,但我无法在 python 中正确使用它。

这是对我的问题最接近的答案,但我仍然无法弄清楚。[ dbus_to_python() 正好需要 1 个参数?

这是我从 python 得到的错误信息:

0 投票
1 回答
71 浏览

oracle - 我们如何将oracle 1521端口转移到另一台机器的9800端口

我想用firewalld将oracle A的1521端口转移到B 9800,在这里我可以使用B:9800访问A的oracle。我设置了一个新的 tnsnames.ora 有 B:9800

这是我测试的代码,但它不起作用

我试过了,用tnsping测试新的tnsname,得到“ORA-12569:TNS:包和失败”</p>

0 投票
1 回答
13015 浏览

loops - 该任务包括一个带有未定义变量的选项

我有以下 vars 文件和 Ansible 任务,它允许防火墙上特定源 IP 的某些端口。

但由于某种原因,每当我运行任务时,我都会收到此错误:

FAILED! => {"msg": "The task includes an option with an undefined variable.

即使我能够使用debugAnsible 模块回显这些变量,所以基本上我只是无法在此任务中专门使用这些变量。

Ansible 任务:

变量文件:

0 投票
1 回答
200 浏览

logging - 我如何阻止所有 ssh 连接,除了来自 firewalld 中特定来源的连接,还记录被拒绝的 ssh 连接

如何在 firewalld 中阻止除来自 192.168.1.1 的所有 ssh 连接,同时记录被拒绝的 ssh 连接?

我试过了:

这会阻止它们,但不会记录被拒绝的 ssh 连接。

0 投票
1 回答
127 浏览

docker - Docker 主机和 check_mk 代理为什么无法寻址端口 6556?

我有 Ubuntu 16.04 主机并安装check_mk agent在上面,一切正常。然后我安装docker了它,现在我无法访问端口 6556 并且check_mk checks也失败了。我尝试了每个 docker KB 但没有运气 - 在 Docker 规则之前添加 iptables 策略。如何解决这个问题?

信息:

Docker 的所有 iptables 规则都添加到 DOCKER 链中。不要手动操作此表。如果您需要添加在 Docker 规则之前加载的规则,请将它们添加到 DOCKER-USER 链中。这些规则在 Docker 自动创建的任何规则之前加载。

我试过了:

0 投票
1 回答
2527 浏览

fail2ban - 在 Centos 7 中将 fail2ban 行为与 firewallD 混淆

我在 Centos 6 服务器中使用了 fail2ban/iptables。
我搬到了 Centos 7,现在我正在使用 fail2ban/firewallD(由 Webmin/Virtualmin 安装,默认设置)

这些是 仅显示 的cat /var/log/maillog | grep "disconnect from unknown"屏幕截图 在此处输入图像描述 在此处输入图像描述 在此处输入图像描述
cat /var/log/fail2ban.log | grep Ban

2019-10-27 16:52:22,975 fail2ban.actions [8792]:通知 [proftpd] Ban 111.225.204.32

此外tailf /var/log/fail2ban.log显示多个“已被禁止”的同一 IP。在这种情况下,fail2ban,在maxretry达到后它会尝试禁止 IP。 在此处输入图像描述

这是我的配置(部分),我将它们保留为默认设置,但更改了bantimes。

监狱本地

[后缀]
enabled = true
端口 = smtp,465,submission
bantime = -1

[postfix-sasl]
启用 = true
端口 = smtp,465,submission,imap3,imaps,pop3,pop3s
bantime = -1

[dovecot]
启用 = true
端口 = pop3、pop3s、imap、imaps、submission、465、sieve
bantime = -1

监狱.conf

[默认]
findtime = 600
maxretry = 5
backend = auto
filter = %(__name__)s
port = 0:65535
banaction = iptables-multiport
banaction_allports = iptables-allports
action_ = %(banaction)s[name=%(__name__)s, bantime="%(bantime)s", port="% > (port)s", protocol="%(protocol)s", chain="%(chain)s"]
action = %(action_)s

jail.d/00-firewalld.conf

[默认]
banaction = firewallcmd-ipset

这些文件存在:action.d/firewallcmd-ipset.conffilter.d/postfix.conf

firewall-cmd --direct --get-all-rules

ipv4 filter INPUT_direct 0 -p tcp -m multiport --dports ssh -m set --match-set fail2ban-default src -j REJECT --reject-with icmp-port-unreachable
ipv4 filter INPUT 0 -p tcp -m multiport - -dports ssh -m set --match-set fail2ban-sshd src -j REJECT --reject-with icmp-port-unreachable
ipv4 filter INPUT 0 -p tcp -m multiport --dports 10000 -m set --match-set fail2ban-webmin-auth src -j REJECT --reject-with icmp-port-unreachable
ipv4 filter INPUT 0 -p tcp -m multiport --dports ssh,sftp -m set --match-set fail2ban-ssh-ddos src - j REJECT --reject-with icmp-port-unreachable

手动运行后
firewall-cmd --permanent --add-rich-rule="rule family='ipv4' source address='193.56.28.0/24' reject"

firewall-cmd --reload 此输出 停止。 tailf /var/log/fail2ban.log 在此处输入图像描述

我怎样才能让所有这些 IP 在它们达到maxretry价值后被禁止?尽管服务重新启动或重新加载,它们会被永远禁止吗?

编辑 1: 从 fail2ban.log 与 action=firewalld-cmd ipset
在此处输入图像描述

从带有 action=iptables-allports 的 fail2ban.log
在此处输入图像描述

编辑2:
似乎(我猜)有些东西正在刷新配置(我猜它会是Webmin),因为过了一段时间我开始收到错误日志,failed to execute ban jail 'dovecot' action iptables-allports所以我正在尝试这个:在actions.d中创建banning.conf

在 jail.local

但我Error in action definition banning
知道这不是解决方案。
在移动服务器之前,我多年来一直在使用 fail2ban/iptables(不是 firewalld),而无需注意默认设置。

0 投票
1 回答
122 浏览

tcp - Firewalld - 将 eth1:0 上收到的流量转发到与 eth1 不同的 IP

我在firewalld中有以下两个区域:

eth1 是 172.16.1.1 的真实网卡 eth1:0 是 172.16.1.2 的虚拟网卡

在一台物理机器上。

它们由

我需要的是当我用网络浏览器点击 172.16.1.1 时能够看到 192.168.0.1 上的网站,当我用网络浏览器点击 172.16.1.2 时能够看到 192.168.0.2 上的网站。

例如。我想通过端口 80 和 443 将流量转发到 eth1 (172.16.1.1) 上的 192.168.0.1 和 eth1:0 (172.16.1.2) 上的 192.168.0.2。

使用上述配置,firewalld / iptables IGNORES eth1:0 - 例如,如果我点击 172.16.1.1,我会在 192.168.0.1 上获得网站。但是如果我点击 172.16.1.2 我仍然会在 192.168.0.1 上获得网站,而不是 192.168.0.2

例如。虚拟网卡 eth1:0 似乎等同于 firewalld,因为 eth1 - 端口 80 上到 172.16.1.1 (eth1) 或 172.16.1.2 (eth1:0) 的 HTTP 流量都被发送到 192.168.0.1,忽略转发规则集在 eth1:0 上。

如何获得由 firewalld 控制的 firewalld / iptables 到

将 172.16.1.1 (eth1) 上 :80 和 :443 接收到的流量转发到 192.168.0.1

将 :80 和 :443 上 172.16.1.2 (eth1:0) 接收到的流量转发到 192.168.0.2

而不仅仅是将 172.16.1.1 和 172.16.1.2 上的所有流量转发到 192.168.0.1?

谢谢!