场景
- 本地的笔记本是没有公网IP的,所以没有办法使用;但是作为一个4核心24G 内存的笔记本来说, 有些浪费; 所以做了下反向代理
- 笔记本
- 一台云服务器
- $ip 公网IP
- root 用户
步骤
- 将服务器的7589端口映射到笔记本的80端口
autossh -M 4444 -NfCR 7589:localhost:80 root@$ip
- 4444是远程服务器的端口, 用来诊断连接是否断开, 如果断开 则重新连接
- -f 后台执行ssh指令
- -C 允许压缩数据
- -N 不执行远程指令
- -R 将远程主机(服务器)的某个端口转发到本地端指定机器的指定端口
- -L 将本地机(客户机)的某个端口转发到远端指定机器的指定端口
- -p 指定远程主机的端口
- 将服务器端口5270转发自身的7589
ssh -NCfL *:5270:localhost:7589 localhost
- 此时访问$ip:5270就会请求到笔记本的80端口上了
- 开机启动脚本
autossh -M 4444 -NfCR 7589:localhost:80 root@$ip 放入/etc/rc.local
将 SSH 密钥添加到 ssh-agent
- 避免频繁的输入密码
- eval $(ssh-agent -s)
- ssh-add ~/.ssh/id_rsa