家里科研实验愉快指南
家里科研实验愉快指南
背景:为了让大伙能够在家里能够愉快的科研实验,通过SSH反向隧道,从而达到校外变校内,在家也能够轻松连接校内服务器。
必要配置:一台公网服务器。
反向隧道建立流程
公网服务器配置
1、在自己购买的服务器上(注意:必须是公网服务器)。编辑ssh的配置文件。
▼text复制代码#自己租的云服务器上 vim /etc/ssh/sshd_config
2、往sshd_config文件添加以下内容
▼text复制代码GatewayPorts yes AllowTcpForwarding yes TCPKeepAlive yes
3、重启SSH服务:
▼text复制代码#自己租的云服务上 systemctl restart sshd
学校服务器配置
1、配置密钥和免密登录
▼text复制代码#密钥生成 ssh-keygen -t rsa #将密钥拷贝到公网服务器 ,6.123.123.164是公网的ip 例如:ssh-copy-id root@6.123.123.164 ssh-copy-id [公网服务器用户名]@[公网服务器IP]
2、在学校服务器建立隧道
在学校服务器上执行以下命命令
▼text复制代码#root 是自己公网服务器上的用户名,别的用户名也可以,只要在公网服务器存在即可 ssh -fN -R 22222:localhost:22 [公网服务器用户名]@[公网服务器IP]
-f: 后台运行。-N: 不执行远程命令(仅用于转发端口)。-R: 反向隧道关键参数。格式为[公网端口]:[本地IP]:[本地端口]。22222: 流量将经过公网服务器的这个端口(自己定义即可)。localhost:22: 流量最终转发到学校服务器本机的 22 端口(SSH)。
注意事项:
这里配置的端口,记得也要在公共服务器的安全配置策略中开放该端口,否则也无法访问。
如何测试访问:
方式一:打开windows的powershell,按下回车键后,输入学校服务器的密码即可。
▼text复制代码ssh -p 22222 [校内服务器上用户名]@[公网IP]
方式二:vscdoe配置。在C:\Users\YourName.ssh\config 文件中添加以下内容(一般是该路径)
▼text复制代码Host school-server HostName [公网IP] Port 22222 User [校内服务器上用户名]
一些自动化操作
为了解服务每次重启之后都需要手动开启SSH反向隧道的问题。我把该指定的执行,注册成了一个系统服务,每次开关机后都可以自动执行了。(但是,如果毕业后不是当前公共服务器了,则需要手动建立新的映射)。
目前该自定义系统服务存在于:
▼text复制代码/home/edu/Service/ssh-tunnel.service
服务内容为:
▼shell复制代码[Unit] Description=Reverse SSH Tunnel to Public Server After=network-online.target Wants=network-online.target [Service] User=[校内服务器上用户名] ExecStart=/usr/bin/ssh -N -o "ExitOnForwardFailure=yes" -o "ServerAliveInterval=60" -R 0.0.0.0:22222:localhost:22 [公网服务器用户名]@[公网IP] Restart=always RestartSec=10 [Install] WantedBy=multi-user.target
该自定义服务是通过软连接注册到系统服务中。 软连接建立指令和服务启动指令如下(执行顺序不能乱):
▼text复制代码# 在学校服务器执行 sudo ln -s /home/edu/Service/ssh-tunnel.service /etc/systemd/system/ssh-tunnel.service # 重新加载服务 sudo systemctl daemon-reload # 设置开机自启 sudo systemctl enable ssh-tunnel # 立即启动服务 sudo systemctl start ssh-tunnel
以下指令是查看服务运行状态:
▼text复制代码sudo systemctl status ssh-tunnel
评论
问答助学
相关内容
0个评论
全部评论
点击登录,快来和大家讨论吧~
表情
图片
暂无评论
内容推荐
宝塔面板允许jar文件,报这个错,大佬救一下[流泪]
7
用户中心项目求问
4
#提问#小程序文档也太乱了吧!想问一下我在去年5月注册了一个微信小程序企业号,今年会过期吗?过期后我上线的小程序岂不是寄了?毕设要用,担心5月过期赶不上答辩
0
#求职# 求助 请问一下大家,星球有那种关于秋招企业投递汇总的表不[机智]
6
鱼神,想咨询一下目前Java的现状,先介绍一下我自身的情况吧本人是本科毕业一年,农学专业,在学校就对编程有兴趣,但是没时间去学校,现在迫切想转行去学Java,想了解一下目前的Java的就业咋样,现在就是在上班,但是工作自身干起来也很不顺心,一直想学习Java这块,就是在想报班好一些还是自学好一些,学成之后的出路怎么样,希望鱼神能给为小弟指点迷津
7
