You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过OpenVPN将局域网摄像头的8080端口转发至VPS实现公网访问

如何通过OpenVPN将局域网摄像头的8080端口转发至VPS实现公网访问

当然可以实现!你只需要调整PC端的端口转发设置,配合现有VPS的iptables规则就能搞定。下面是具体步骤:

一、核心原理说明

你当前的VPS规则已经把公网54000端口的流量转发到了OpenVPN客户端(你的PC,内网IP 10.8.0.2)的8080端口。现在要把这个流量进一步导向局域网内的摄像头,只需要让你的PC充当“中转节点”,把VPN接口收到的8080端口流量转发到摄像头的IP和端口上。

二、具体配置步骤

1. 确保PC开启IP转发功能

这是流量能在PC的VPN接口和局域网接口之间转发的前提:

  • Linux/macOS PC:
    临时生效(重启后失效):
    echo 1 | sudo tee /proc/sys/net/ipv4/ip_forward
    
    永久生效:
    编辑 /etc/sysctl.conf 文件,找到 net.ipv4.ip_forward=1 并取消注释,然后执行:
    sudo sysctl -p
    
  • Windows PC:
    以管理员身份打开命令提示符,执行:
    netsh interface ipv4 set interface "OpenVPN" forwarding=enabled
    
    (注意:把 "OpenVPN" 替换成你实际的OpenVPN连接名称)

2. 在PC上添加端口转发规则

把VPN接口(10.8.0.2)收到的8080端口流量转发到摄像头的 192.168.100.165:8080:

  • Linux/macOS PC:
    添加NAT转发规则:
    sudo iptables -t nat -A PREROUTING -i tun0 -p tcp --dport 8080 -j DNAT --to-destination 192.168.100.165:8080
    
    添加FORWARD允许规则:
    sudo iptables -A FORWARD -p tcp -d 192.168.100.165 --dport 8080 -j ACCEPT
    
    (如果你的VPN接口不是tun0,替换成实际接口名)
  • Windows PC:
    以管理员身份执行端口代理命令:
    netsh interface portproxy add v4tov4 listenaddress=10.8.0.2 listenport=8080 connectaddress=192.168.100.165 connectport=8080
    
    同时要确保Windows防火墙允许该流量,可添加一条入站规则允许TCP 8080端口来自VPN接口的连接。

3. (可选)VPS端添加路由规则(如果需要)

如果VPS无法直接访问你的局域网网段 192.168.100.0/24,需要添加一条静态路由,让VPS知道该网段的流量要通过你的PC(10.8.0.2)转发:

sudo ip route add 192.168.100.0/24 via 10.8.0.2 dev tun0

(同样,tun0替换成VPS上的OpenVPN隧道接口名)

三、验证配置

完成以上步骤后:

  1. 确保你的PC已连接OpenVPN,且能正常访问摄像头的 192.168.100.165:8080
  2. 从外部网络访问 51.xx.xx.xx:54000,应该就能打开摄像头的Web界面了

备注:内容来源于stack exchange,提问作者Krop

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.22 08:33:11