配置内网穿透
在校园网内设置内网穿透。建议提前给内网及公网主机都配置好使用sshkey免密登录并保管好密码文件。
在内网主机
将公网主机的RSA私钥复制到.ssh
下。为保证内网主机可以实现开机自启动跳转登录,使用systemctl
来注册一个能够开机自启动的服务。
创建文件autossh.service
,内容如下
1 | [Unit] |
部分参数解释:
“user22”是内网主机用户名。
“-M 6777”中,-M指定内网主机的监控端口,此处是6777。
“7000:localhost:22”中, 7000表示需要在远程主机上开启的端口,22表示本地的ssh端口。这个含义表示我们希望通过公网ip和7000端口访问树莓派的22端口。
“username@112.112.112.112”中,username为公网机器上的用户,112.112.112.112为公网主机ip。
将autossh.service
复制到/etc/systemd/system/
目录下,使用如下命令设置自启。
1 | sudo systemctl enable autossh.service # 开机启动autossh服务 |
公网主机
使用公网主机的RSA私钥登录,配置本地端口转发
1 | sudo ssh -fCNL *:8000:localhost:7000 user22@localhost -i public_net.pem |
部分参数解释:
“8000:localhost:7000”中,8000代表其他主机登录时使用的端口,7000表示远程主机上开启的端口。
以公网主机为跳板登录内网主机
在PC机上使用如下命令登录
1 | ssh -i intranet.pem -p 8000 user22@112.112.112.112 |
参考文献
评论