修改ssh配置文件
vi /etc/ssh/sshd_config
#连接相关配置
GatewayPorts yes # 是否允许远程主机连接本地的转发端口
TcpKeepAlive yes # 是否保持连接
ClientAliveInterval 30 # 心跳发送间隔
ClientAliveCountMax 5 # 心跳发送最大失败次数
1、配置免密登录公网的服务器
用ssh-keygen生成密钥
ssh-keygen
# 这里填写的路径是最终生成密钥的路径,一般用括号给出的
Enter file in which to save the key (/root/.ssh/id_rsa):
# 一般为空,直接回车即可
Enter passphrase (empty for no passphrase):
same passphrase again:
用ssh-copy-id将公钥复制到远程机器中
# 路径填写上面生成密钥的路径
ssh-copy-id -i ./root/ssh/id_rsa.pub 用户名@公网机子ip
测试是否可以免密登录
ssh 用户名@公网机子ip
2、安装autossh
yum -y install autossh
sudo yum install wget gcc make
wget http://www.harding.motd.ca/autossh/autossh-1.4e.tgz
tar -xf autossh-1.4e.tgz
cd autossh-1.4e
./configure
make
sudo make install
3、配置公网服务器远程代理
# 用公网机器(比如:123.123.123.123)的80端口代理本地的8080端口
autossh -M 8888 -fCNR 80:localhost:8080 root@123.123.123.123
4、测试
拿本例来说,访问公网服务器的80端口,即可反向代理到内网机器的8080端口