[云服务/Centos] 使用autossh+阿里云做反向代理

一. 外网设置

1.1 配置ssh
  • 打开/etc/ssh/sshd_config, 将GatewayPorts设为yes
  • 执行sudo service sshd restart重启sshd服务
1.2 配置防火墙

登录阿里云服务器的控制台, 将要映射的外网端口(如8080)加入安全组

二. 内网设置

2.1 设置防火墙

首先开放要映射的外网端口

# 检查端口是否已开放
sudo firewall-cmd --query-port=80/tcp
# 开放端口
sudo firewall-cmd --permanent --add-port=80/tcp
2.2 设置免密登录

在做完映射之后, 为了保证连接不会中断, 两台服务器间需要经常相互通信, 所以免密登录时必须的

# 在内网服务器上生成公钥私钥对
ssh-keygen
# 将内网服务器的公钥复制到外网服务器
ssh-copy-id -i ~/.ssh/id_rsa.pub user@remote_ip
2.3 端口映射

将两台的服务器的端口映射起来, 下面的命令可以让用户通过上面设置的外网服务器IP来访问访问内网服务器

# autossh -M [内网端口] -fCNR [外网IP或省略]:[外网端口]:[内网IP]:[内网端口] [外网用户]@[外网IP]
autossh -M 4000 -fCNR 8080:192.168.123.101:8888 bxz@101.200.177.119

参数说明

-M 指定一个内网端口来监视ssh连接状态,连接中断时自动重连
-f 后台执行ssh指令
-C 允许压缩数据
-N 不执行远程指令
-R 将远程主机(服务器)的某个端口转发到本地端指定机器的指定端口
-L 将本地机(客户机)的某个端口转发到远端指定机器的指定端口
2.4 设置开机自启
  • 将上面的命令写入文件/etc/rc.d/rc.local
  • 执行sudo chmod +x /etc/rc.d/rc.local
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值