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

借助静态IP VPS从动态IP家庭PC远程访问防火墙后工作PC的方案及安全性咨询

借助静态IP VPS从动态IP家庭PC远程访问防火墙后工作PC的方案及安全性咨询

当然可以实现!这种跨防火墙、动态IP场景的远程访问需求,用反向SSH隧道就能完美解决,正好适配你现有三台Linux机器的配置。我给你详细讲实现步骤和安全注意事项:

一、先在工作PC上建立到VPS的持久反向隧道

因为工作PC在公司防火墙后,主动发起出站连接到VPS一般是不受限制的(只要公司没禁SSH出站)。我们要把工作PC的SSH端口转发到VPS上的一个端口,这样后续就能通过VPS间接访问工作PC:

  1. 基础反向隧道命令
    在工作PC上执行这条命令,把工作PC的22端口(默认SSH端口)转发到VPS的2222端口:

    ssh -fN -R 2222:localhost:22 your_vps_username@vps_static_ip
    

    参数解释:

    • -f:让SSH在后台运行
    • -N:不执行远程命令,只建立隧道
    • -R:反向转发,意思是VPS的2222端口收到的请求,会转发到工作PC的本地22端口
  2. 让隧道持久化(避免断连后手动重连)
    普通SSH隧道可能会因为网络波动断开,推荐用autossh工具自动维持隧道:

    • 先在工作PC上安装autossh:sudo apt install autossh(Debian/Ubuntu)或sudo dnf install autossh(RHEL/CentOS)
    • 执行持久化隧道命令:
      autossh -M 20000 -fN -R 2222:localhost:22 your_vps_username@vps_static_ip
      
      -M 20000指定一个用于监测隧道状态的端口(只要VPS上没被占用即可,不用开放给公网),autossh会定期检测,隧道断了就自动重连。

二、回家后从家庭PC访问工作PC的方法

有两种方式,选你觉得方便的:

  1. 两步跳转法

    • 第一步,从家庭PC SSH登录到VPS:
      ssh your_vps_username@vps_static_ip
      
    • 第二步,在VPS上通过反向隧道连接工作PC:
      ssh your_workpc_username@localhost -p 2222
      
      这里的localhost其实指向VPS的2222端口,会自动转发到工作PC的22端口,相当于直接连工作PC。
  2. 一步跳转法(更高效)
    用SSH的-J跳转参数,直接从家庭PC通过VPS连工作PC:

    ssh -J your_vps_username@vps_static_ip your_workpc_username@localhost -p 2222
    

三、安全性关键注意事项

既然涉及远程访问,安全绝对不能马虎,这几点一定要做到:

  • 全机器禁用SSH密码登录:三台机器都改用SSH密钥登录,彻底杜绝暴力破解风险。

    • 生成密钥对:在本地机器执行ssh-keygen(一路回车即可,不用设密码更方便,但如果要更安全可以设密钥密码)
    • 把公钥复制到目标机器:ssh-copy-id username@target_ip
    • 修改/etc/ssh/sshd_config,设置PasswordAuthentication no,然后重启SSHD服务:sudo systemctl restart sshd
  • 限制VPS的SSH暴露面:

    • 如果你知道工作PC的固定出站IP,可以在VPS的防火墙(比如ufw)里只允许这个IP访问SSH端口,减少被扫描的概率;
    • 安装fail2ban工具,它会自动封禁多次登录失败的IP,有效抵御暴力破解:sudo apt install fail2ban,默认配置就够用。
  • 修改默认SSH端口:把三台机器的SSH默认22端口改成非标准端口(比如2200),在/etc/ssh/sshd_config里修改Port 2200,重启SSHD后别忘了在防火墙开放新端口,能大幅降低被自动化扫描的几率。

  • 隧道本身的安全性:SSH隧道全程加密,传输过程中的数据不会被窃听或篡改,这点可以放心。

额外注意点

  • 确认工作PC的本地防火墙允许SSH访问(默认是允许的,但如果改过规则要检查);
  • VPS上的转发端口(比如2222)不需要开放给公网,因为我们是从VPS本地访问这个端口,只要VPS的本地防火墙允许即可;
  • 家庭PC是动态IP没关系,因为是家庭PC主动连VPS,只要能上网就能访问VPS,不受动态IP影响。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.23 07:19:12