![OpenVPN - 仅通过 VPN 传递某些端口](https://linux22.com/image/702416/OpenVPN%20-%20%E4%BB%85%E9%80%9A%E8%BF%87%20VPN%20%E4%BC%A0%E9%80%92%E6%9F%90%E4%BA%9B%E7%AB%AF%E5%8F%A3.png)
我在 VPS 上安装了 OpenVPN 服务器,使用 Windows 8.1 操作系统,只想通过 VPN 传递某些端口(例如 3000、3001)。Windows 上可以实现吗?
答案1
OpenVPN 有两种模式:
- 轻敲(网络窃听系统)模拟链路层(开放系统信息系统第 2 层) 设备。在此模式下,两端可以位于同一子网(例如
10.0.0.0/24
),并且信息通过以太网传输框架,创建网桥。 - 隧道(网络TUNnel)模拟网络层(开放系统信息系统网络层,第 3 层) 设备并承载 IP数据包。
两种模式都允许您将 VPN 用于所有流量(0.0.0.0/0
远程端的默认路由)或仅用于同一子网内的流量(TAP)或另一端所有或部分子网的流量(TUN)。
TCP 和 UDP(有端口号)在传输层(/OSI第 4 层)因此,它不是 OpenVPN 或 Windows 都无法拥有的功能,而是一个协议级别限制在所有 VPN 实现上:使用 (Open)VPN 则无法实现,但可以在防火墙处进行配置。
你可以:
- 如果你不通过 VPN 路由所有流量,则可以使用不同端口有不同接口,例如公共http://example.com:80与您的 Nessus 客户端的私有版本相比
172.16.0.30:3001
(?) - 使用SSH 隧道而不是 VPN,(本地端口转发)或
ssh -L 3001:localhost:3001 [email protected]
油灰(连接 > SSH > 隧道:源端口3001
&目的地localhost:3001
,当地的,汽车)。这会将服务绑定到本地计算机上的端口,即您可以连接到localhost:3001
。(也可以使用不同的源端口在本地。)