通过阿里云服务器实现在学校访问宿舍的linux设备[ssh 反向隧道]

通过阿里云服务器实现在学校访问宿舍的linux设备

背景

需求背景,之前了解了ssh的反向隧道,想要通过ssh反向隧道实现跨越两个不同内网的设备互通。
在宿舍里有个闲置的树莓派,想在学校上课的时候使用它,奈何坑爹的校园网花了钱只能连接一个设备,正好有空闲阿里云服务器,所以想要借此实现通过阿里云服务器中转,来使用ssh连接宿舍的树莓派。

原理

原理就是,无论是宿舍的宽带,还是手机流量,都能够访问阿里云服务器。但是电脑连接手机的热点访问不了宿舍的树莓派。
实现原理大致就是这个样子
原理图

实现

首先我们需要做一些准备工作。我的树莓派安装的是ubuntu server 20.04,在后面就用ubuntu指代。
先要确保ubuntu中安装了openssh-server,一般默认是没有安装的,默认只安装了openssh-client。

  1. 安装openssh-server:sudo apt install openssh-server
  2. ubuntu的ssh默认没有开启root登录,也就是说不能使用root用户通过ssh连接的,开启root登录
    修改ssh的配置文件:/etc/ssh/sshd_config
sudo vim /etc/ssh/sshd_config

通过vim中的查找功能找到PermitRootLogin (方法就是先按 / 然后输入PermitRootLogin,然后通过上下左右找到要修改的位置,按回车确定,再按i进行编辑)
修改如下:

33 #LoginGraceTime 2m
34 #PermitRootLogin prohibit-password
35 #StrictModes yes
36 #MaxAuthTries 6
37 #MaxSessions 10

改为

LoginGraceTime 2m
 PermitRootLogin yes
 StrictModes yes
 #MaxAuthTries 6
 #MaxSessions 10

重启ssh服务

service ssh restart
  1. 选择一个阿里云服务器未使用的端口号,这里以13016端口为例,先登录阿里云控制台,修改防火墙配置,添加一条规则,开放13016端口
    防火墙
  2. 然后在树莓派上建立ssh反向隧道。(因为树莓派不常操作且功耗小,就让他一直开着就行)
root -fN -R 13016:localhost:22 root@xxx.xxx.xxx.xxx(阿里云服务器地址)
  1. 然后通过电脑连接阿里云服务器
ssh root@xxx.xxx.xxx.xxx
  1. 然后连接上以后再连接Ubuntu就行了
    这里是ubuntu的密码
ssh root@localhost -p 13016
  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值