Firewall
PPTP Passthrough Centos 7/Firewalld 路由器到 Windows Server
我有一個執行 firewalld 的 Centos 7 伺服器,以允許公共服務訪問單獨 VLAN(雙 NIC)上的內部服務。我導入了一個 Windows 虛擬機,但除了打開 1723 之外,我不知道我需要製定哪些規則才能允許 GRE 通過防火牆。我在網上找到的所有問題和指南都不會在 Centos 7 機器上設置 PPTP,而不是將其傳遞給路由 IP(在本例中為 windows 伺服器)。
在允許訪問 PPTP VPN 的 rhel7 伺服器上,除了打開埠外,我還設置了以下內容:
`sudo firewall-cmd –permanent –zone=public –direct –add-rule ipv4 filter INPUT 0 -p gre -j ACCEPT
sudo firewall-cmd –permanent –zone=public –direct –add-rule ipv6 filter INPUT 0 -p gre -j ACCEPT
sudo firewall-cmd –permanent –zone=public –add-masquerade
sudo firewall-cmd –reload`
在我的 CentOS 8.3 伺服器上,建議用於 rhel7 的命令不起作用。
對我有用的命令是:
firewall-cmd --permanent --new-service=pptp cat >/etc/firewalld/services/pptp.xml<<EOF <?xml version="1.0" encoding="utf-8"?> <service> <port protocol="tcp" port="1723"/> </service> EOF firewall-cmd --permanent --zone=public --add-service=pptp firewall-cmd --permanent --zone=public --add-masquerade firewall-cmd --permanent --zone=public --add-protocol=gre firewall-cmd --reload
這些命令用於打開埠,並允許 gre 協議通過。
請注意,您需要以 root 身份執行這些命令,或者在所有命令前面加上“sudo”。