ssh -fN -D 1080 root@ip
解释:
- -f:让 SSH 在认证成功后直接转入后台
- -N:不执行命令,仅转发端口
- -D 1080:启动本地 SOCKS5 监听
pgrep -af ssh
你应该看到类似:
32279 ssh -fN -D 1080 root@47.79.91.205
再配合:
lsof -i :1080
双重确认后,✅ 表示你现在 SOCKS5 代理完美地运行在后台,不占终端,不影响其他工作。
🧪 测试代理是否生效:
在 Mac 终端运行:
curl --socks5 127.0.0.1:1080 https://ipinfo.io/ip
如果返回的是你服务器的公网 IP(47.79.91.205)→ 成功!🎉
✅ 方法一:用 lsof + kill 精确关闭
- 查出监听端口 1080 的 SSH 进程 PID:
lsof -i :1080
输出类似:
ssh 32282 dingfn ... TCP localhost:socks (LISTEN)
记住这个 PID,比如是 32282
- 杀掉这个进程:
kill 32282
如果你想强制杀掉(极少用):
kill -9 32282
✅ 方法二:快速一行搞定
pkill -f "ssh -fN -D 1080"
- 它会匹配你之前用 ssh -fN -D 1080 启动的进程,直接关闭 ✅
brew install autossh
📌 启动命令(自动重连)
autossh -f -M 0 -N -D 1080 root@47.79.91.205
- -f:后台运行
- -M 0:禁用额外监控端口(用 SSH 的 KeepAlive)
- -N -D 1080:启动本地 SOCKS5 代理
- root@47.79.91.205:远程日本服务器地址