SSH隧道:安全调试远程服务端
使用SSH隧道安全调试服务端项目
在服务端开发过程中,直接开放Web端口可能存在安全风险。通过SSH隧道可以在本地安全地调试远程服务,无需暴露端口到公网。
SSH隧道基本命令
执行以下命令建立本地到远程的隧道连接:
ssh -N -L 18789:127.0.0.1:18789 root@服务器IP这个命令将远程服务器的18789端口映射到本地的18789端口。
参数说明
-N表示不执行远程命令,仅建立隧道-L指定本地端口转发18789:127.0.0.1:18789表示将本地18789转发到远程127.0.0.1的18789root@服务器IP是SSH登录凭证
保持隧道连接
为防止隧道意外断开,可以添加-f参数让SSH在后台运行:
ssh -f -N -L 18789:127.0.0.1:18789 root@服务器IP调试配置
本地开发环境配置应指向:
http://127.0.0.1:18789这样所有请求都会通过SSH隧道安全地转发到远程服务器。
安全建议
使用密钥认证而非密码登录:
ssh -i ~/.ssh/id_rsa -N -L 18789:127.0.0.1:18789 root@服务器IP多端口转发
如需转发多个端口,可以添加多个-L参数:
ssh -N -L 18789:127.0.0.1:18789 -L 3306:127.0.0.1:3306 root@服务器IP断开隧道
查找SSH进程并终止:
ps aux | grep ssh kill [进程ID]这种方法既保证了调试便利性,又避免了直接暴露服务端口的安全风险。
