我想仅通过 VPN 连接允许 3389 端口(RDP),通常不行。我该怎么做?
我已经在 Mikrotik 中配置了 VPN 服务器。我已经通过防火墙过滤器阻止了除 http 和 https 之外的所有流量。我通过过滤规则允许 3389,现在其他系统(我们网络之外)能够通过 RDP 连接到我们的内联网系统,而不管 VPN 是否可用。我的意思是笔记本电脑(我们网络之外的客户端)可以使用/不使用 VPN 客户端来执行 RDP。我需要客户端连接到 Mikrotik 的 VPN 服务器,然后通过 RDP 连接到内联网系统,否则会断开连接。
如何阻止除 VPN 上的 RDP 之外的其他 RDP 连接?
Right Now:
-------- pptp tunnel ------------ ----------
| | ============ | | | |
|laptop | -------------- | Mikrotik |-------| system A |
| | ============ | | | |
| | -------------- | router |-------| |
-------- | | ----------
------------
I want :
-------- pptp tunnel ------------ ----------
| | ============ | | | |
|laptop | -------------- | Mikrotik |-------| system A |
| | ============ | | | |
| | | router | | |
-------- | | ----------
------------
答案1
这是我需要添加的规则,以仅允许通过 vpn 进行 rdp 并阻止所有其他连接。
add chain=forward action=accept protocol=tcp dst-port 3389 in-interface=VPN comment="Allow RDP via VPN"
答案2
你有没有尝试过
iptables -A INPUT -p gre --dport 3389 -j ACCEPT
iptables -A INPUT --dport 3389 -j DROP
按此顺序?第一条规则应让 GRE 协议数据包通过,而第二条规则应阻止所有其他数据包。
答案3
niren 给出了一个正确的想法。但是匹配静态 WAN 接口可能比匹配可能的动态 VPN 更简单。
add chain=forward action=drop protocol=tcp dst-port 3389 in-interface=WAN comment="Deny RDP via WAN directly"