据我了解,防火墙(假设默认设置)拒绝所有没有先前对应的传出流量的传入流量。
基于Reversing an ssh connection和SSH Tunneling Made Easy,反向 SSH 隧道可用于绕过烦人的防火墙限制。
我想在远程机器上执行 shell 命令。远程机器有自己的防火墙,并在附加防火墙(路由器)后面。它有一个像 192.168.1.126(或类似的东西)这样的 IP 地址。我不在防火墙后面,我知道从 Internet 上看到的远程机器的 IP 地址(不是 192.168.1.126 地址)。此外,我可以要求某人ssh (something)首先在远程机器上以 root身份执行。
谁能一步一步地向我解释反向 SSH 隧道如何绕过防火墙(本地和远程机器的防火墙以及它们之间的附加防火墙)?
开关 ( -R, -f, -L, -N)的作用是什么?
我很困惑 SNAT 和 Masquerade 之间的实际区别是什么?
如果我想在本地网络上共享我的互联网连接,那么我应该选择 SNAT 还是 Masquerade?
我在 CentOS 7 上安装了 docker 并且我正在运行 firewallD。
从我的容器内部,转到主机(默认 172.17.42.1)
开启防火墙
container# nc -v 172.17.42.1 4243
nc: connect to 172.17.42.1 port 4243 (tcp) failed: No route to host
Run Code Online (Sandbox Code Playgroud)
防火墙关闭
container# nc -v 172.17.42.1 4243
Connection to 172.17.42.1 4243 port [tcp/*] succeeded!
Run Code Online (Sandbox Code Playgroud)
我已经阅读了 firewalld 上的文档,但我并不完全理解它们。有没有办法简单地允许 docker 容器中的所有内容(我猜在 docker0 适配器上)不受限制地访问主机?
我运行了一个 VPS,我想使用 UFW 保护它,只允许连接到端口 80。但是,为了能够远程管理它,我需要保持端口 22 打开并使其可以从家里访问。
我知道可以将 UFW 配置为仅允许从特定 IP 地址连接到端口:
ufw allow proto tcp from 123.123.123.123 to any port 22
Run Code Online (Sandbox Code Playgroud)
但是我的 IP 地址是动态的,所以这还不是解决方案。
问题是:我使用 DynDNS 进行动态 DNS 解析,那么是否可以使用域而不是 IP 创建规则?
我已经试过了:
ufw allow proto tcp from mydomain.dyndns.org to any port 22
Run Code Online (Sandbox Code Playgroud)
但我得到了 ERROR: Bad source address
我有一个带有防火墙的系统。防火墙由 1000 多个 iptables 规则组成。这些规则之一是丢弃我不想丢弃的数据包。(我知道这一点,因为我确实iptables-save遵循了iptables -F并且应用程序开始工作。)有太多规则需要手动排序。我可以做些什么来告诉我哪个规则正在丢弃数据包吗?
我们如何允许某些私有 IP 通过 SSH 登录(RSA 密钥对)进入 Linux 服务器?
archlinux wiki 上有一个 iptables 规则的例子:
# Generated by iptables-save v1.4.18 on Sun Mar 17 14:21:12 2013
*filter
:INPUT DROP [0:0]
:FORWARD DROP [0:0]
:OUTPUT ACCEPT [0:0]
:TCP - [0:0]
:UDP - [0:0]
-A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -m conntrack --ctstate INVALID -j DROP
-A INPUT -p icmp -m icmp --icmp-type 8 -m conntrack --ctstate NEW -j ACCEPT
-A INPUT -p udp -m conntrack --ctstate NEW -j UDP
-A INPUT …Run Code Online (Sandbox Code Playgroud) 我想设置 CentOS 7 防火墙,以便除了我列入白名单的原始 IP 地址之外的所有传入请求都将被阻止。对于白名单 IP 地址,所有端口都应该可以访问。
我能找到几个解决方案(不确定它们是否有效),iptables但 CentOS 7 使用firewalld. 我找不到类似的东西可以用firewall-cmd命令来实现。
接口位于公共区域。我也已经将所有服务移至公共区域。
如何允许某些 ips 并阻止 iptables 中的所有其他连接?
我正在尝试使用 netcat 从一台虚拟机连接到另一台虚拟机的端口 25,但它告诉我,no route to host尽管我可以 ping。我确实将防火墙默认策略设置为丢弃,但我有一个例外,可以接受该特定子网上端口 25 的流量。我可以使用 nc 在端口 25 上从 VM 3 连接到 VM 2,但不能从 VM 2 连接到 3。
这是我的 VM2 防火墙规则的预览
这是我的 VM 3 防火墙规则的预览
当我显示我拥有的侦听服务时*:25,这意味着它正在侦听所有 ipv4 ip 地址和:::25ipv6 地址。我不明白错误在哪里以及为什么不工作两个防火墙规则都接受端口 25 上的流量,因此它应该连接。我尝试比较两者之间的差异以了解为什么我可以从 vm3 连接到 vm2 但配置都是相同的。关于可能是什么问题的任何建议?
更新停止 iptable 服务解决了问题,但我仍然需要存在这些规则。