计算化学公社

 找回密码 Forget password
 注册 Register
Views: 2402|回复 Reply: 18

[网络相关] 自己的小型服务器远程登录与文件传输

[复制链接 Copy URL]

40

帖子

1

威望

685

eV
积分
745

Level 4 (黑子)

发表于 Post on 2022-7-19 11:53:04 | 显示全部楼层 Show all |阅读模式 Reading model
本帖最后由 wxsxjj 于 2022-8-31 11:35 编辑

自己的小型服务器远程登录与文件传输


0 前言  最近自己组装了一台8375C双路服务器,计算环境搭建好之后便着手与远程登录,网络上教程不少但感觉缺少一个一口气讲完,适合我这种几乎电脑小白的教程。结合我自己走过的弯路,在论坛和大家分享一下我的经历,使用frp内网穿透工具,优雅的访问远程服务器和文件传输的方法。
1 准备工作
window10笔记本,centos系统的轻量级应用服务器,Rocky 8系统的计算服务器。github下载frp,win中安装cmder&WinSCP
因为我的笔记本是win10系统,系统非专业版不自带虚拟机故不考虑,云服务器可以去阿里云/腾讯云上租一个1C2G或者2C2G的轻量级应用服务器,找新人专享很便宜,安装Linux系统,反正主要用公网IP。当然,自己买一个公网IP也行。cmder是因为我想用linux的指令行,而且比powershell和cmd好看太多了,很方便,文本编辑器使用VS code,因为之前想用Remote SSH插件但是失败了,主要也是因为很好看。cmder的配置可以参考sob老师的博文《量子化学程序ORCA的安装方法》http://sobereva.com/451

2 开启SSH服务
我们一共有三台电脑:远程控制的window10笔记本,云服务器,计算服务器。云服务器与计算服务器开启方法相同,故我们分别介绍window10和Linux开启SSH的方法。适用于目标服务器为window系统
window10系统中,打开设置搜索添加可选功能,搜索OpenSSH,安装如下两个应用(OpenSSH 服务端;OpenSSH 客户端)
202207191112515297..png
使用快捷指令win+s,搜索计算机管理,在服务选项下找到OpenSSH相关的两个服务,开启并选择自动
202207191114138750..png
打开设置,在网络和Internet中选择Windows防火墙,进入高级设置,在防火墙属性,将入站连接改为允许:
202207191116018879..png
入站规则中找到文件和打印机共享,因为我们使用IPV4登录,将如下选项启用
202207191116257237..png
这时,ssh服务便开启了,我们获取此时的移动端ip地址,打开cmder,键入ipconfig,显示如下
202207191116554929..png
显示如下,因为笔记本使用WLAN,故我们需要红线标记的IPV4地址,记下。
公网IP在购买的云服务器上有写,计算服务器以同样的方法可以获得(因为cmder和Linux终端使用的命令相同)
因为我的腾讯云服务器和计算服务器使用的Linux系统相同,故开启ssh的方法相同,我们以云服务器的配置为例。
服务器中一般默认安装了openssh—server,可以使用
  1. yum list installed | grep openssh-server
复制代码
命令查看,之后键入
  1. vim /etc/ssh/sshd_config
复制代码
进入配置文件。
监听22端口
202207191119087954..png
PermitRootLogin yes #设置是否允许root登录,默认允许
202207191119539118..png
PasswordAuthentication yes 取消注释
202207191120066245..png
:wq保存后退出,键入
  1. service sshd start
复制代码

启用服务。
  1. ps -e | grep sshd
复制代码

检查是否已经启动。
将sshd服务添加之自启动列表中,并查看是否开启自启动sshd服务。
  1. systemctl enable sshd.service
  2. systemctl list-unit-files | grep sshd
复制代码
202207191120386096..png
保证第二个是enable即可。

此时,ssh配置完成,记下此时的公网IP和计算服务器IP进行下一步内网穿透。

3 内网穿透
首先进行一步便利性操作——域名映射。在windows端,进入C:\Windows\System32\drivers\etc,找到hosts文件,code打开
在最后加入云服务器公网IP并在空格后写如自己喜欢的名字
202207191122014913..png
这样,ssh登录时便可使用自己喜欢的名字代替IP地址了。Linux中hosts文件在/etc/hosts,操作方法相同
去github上下载frp,选择Linux_amd64,下载。解压后通过code编辑。其中frps用于云服务器,frpc用于计算服务器。

对于frps部分,只需在frps.ini中 [ common ]下一行加入token = XXXXXXX,X随便取,但需要保证frps和frpc中token相同即可。
202207191124433733..png
这里使用的是默认的7000端口,如有其他需要可取目录下的frps_full.ini查阅使用。
之后将安装包发送到云服务器上即可,这里保存在了/home目录下。发送方法可以查看云服务器的控制台,一般都有说明。运行命令
  1. ./frps -c ./frps.ini
复制代码
WebShell中出现三行结果,均为[I]则表示配置成功
编辑frpc。通过code打开,编辑frpc.ini在[ common ]下一行加入token = XXXXXXX,X随便取,但需要保证frps和frpc中token相同即可,将第三行的server_addr = 修改为公网IP,这里使用默认端口6000
202207191128509530..png
将文件发送到计算服务器中,我保存在了/opt文件中。执行命令
  1. ./frpc -c ./frpc.ini
复制代码
出现三行结果均为[I]即可
此时可以看到此三行命令同样出现在WebShell中,表示内网穿透成功。
打开云服务器的控制台,修改防火墙。上文有关的端口为6000和7000,故我们只需将此端口添加到防火墙中。不同服务器的操作方法不尽相同,可以在控制台的说明。
此时,我们可以在window笔记本上,通过cmder使用命令
  1. ssh -p 6000 root@tencent
复制代码

远程登录计算服务器了。密码为计算服务器中设置的密码。同样可以设置免密登录,此处不再赘述。

4 frp开机自启
此时我们需要frp自带的systemd文件夹中的内容,然而我下载的0.44.0版本没有自带,我把需要的代码贴在本文。

对于frps端,打开frps.service,将frps的路径修改为实际路径,个人习惯将User改为root
  1. [Unit]
  2. Description=Frp Server Service
  3. After=network.target

  4. [Service]
  5. Type=simple
  6. User=nobody
  7. Restart=on-failure
  8. RestartSec=5s
  9. ExecStart=/usr/bin/frps -c /etc/frp/frps.ini
  10. LimitNOFILE=1048576

  11. [Install]
  12. WantedBy=multi-user.target
复制代码

复制此内容,在云服务器中键入命令
  1. vim /usr/lib/systemd/system/frp.service
复制代码
将上述内容复制谈贴过去,:wq保存退出。分别键入命令
  1. #刷新配置
  2. systemctl daemon-reload
  3. #启动服务
  4. systemctl start frp
  5. #设置开机自动启动
  6. systemctl enable frp
  7. #查看服务状态
  8. systemctl status frp
复制代码
最后显示为最后为active(running)状态即可。
配置C端。打开frpc.service,,同样将fprc路径修改为实际路径,修改用户
  1. [Unit]
  2. Description=Frp Client Service
  3. After=network.target

  4. [Service]
  5. Type=simple
  6. User=nobody
  7. Restart=on-failure
  8. RestartSec=5s
  9. ExecStart=/usr/bin/frpc -c /etc/frp/frpc.ini
  10. ExecReload=/usr/bin/frpc reload -c /etc/frp/frpc.ini
  11. LimitNOFILE=1048576

  12. [Install]
  13. WantedBy=multi-user.target
复制代码
复制内容。在计算服务器端键入
  1. vim /usr/lib/systemd/system/frp.service
复制代码
将复制的内容粘贴过去,再次键入上文配置fprs的相同命令,最后为active(running)状态即可。
如此,frp的自启动便设置好了。

5 文件传输
本来想使用code中的Remote-SSH插件实现,但是疯狂失败,后面又考虑使用命令行指令scp实现传输,结果只能win to linux 单向传输,穿不回来(可能和我win本身设置有问题)。最后迫不得已,使用WinSCP帮助实现文件传输。同样简洁方便,也不会占用过多硬盘空间。下载链接。在window端安装,一路回车就ok。
打开后新建会话,文件协议选择SCP,主机名称填写公网IP,端口号为上文设置的6000,输入要登陆的计算服务器的用户名和密码,保存就好。之后想要传输文件时鼠标拖动完事。
202207191138379976..png
202207191138566496..png
如此,内网穿透后远程登录和文件传输工作就搞定了,只要保证有电,联网,起码国内随时随地都可以跑计算化学的任务了!(实现边旅边做实验的美好愿望)

6 总结
本文使用frp内网穿透工具实现远程访问计算服务器和文件传输。可能不适用校园网的情况,但是自家的小宽带肯定没问题!
水平有限,操作错误的地方还望各位前辈不吝赐教。

**补充说明当一切调试好后,可以将计算服务器关闭root登录,一定程度上提高安全性。即进入vim /etc/ssh/sshd_config,将PermitRootLogin yes中yes改为no即可。








评分 Rate

参与人数
Participants 11
威望 +1 eV +46 收起 理由
Reason
cxh19990601 + 4 谢谢
pineapple2 + 2 GJ!
ggdh + 5 GJ!
QH1995 + 5 好物!
lonemen + 5 谢谢分享
丁越 + 5 赞!
tanyazhi + 5
妙角不脆 + 5 牛!
nkulyl80 + 5 牛的!
小墨 + 5 GJ!
sobereva + 1

查看全部评分 View all ratings

1853

帖子

1

威望

4104

eV
积分
5977

Level 6 (一方通行)

发表于 Post on 2022-7-19 15:48:01 | 显示全部楼层 Show all
可以试试
OmniEdge

无需配置。
免费模式,可以给20个设备使用。

评分 Rate

参与人数
Participants 1
eV +5 收起 理由
Reason
wxsxjj + 5 感谢建议

查看全部评分 View all ratings

High-Performance Computing for You
为您专属定制的高性能计算解决方案

更多讯息,请访问:
App,  https://gitee.com/hpc4you/linux
hpc4you toolkit,  https://gitee.com/hpc4you/hpc
电邮hpc4you@163.com VX: hpc4you

122

帖子

0

威望

631

eV
积分
753

Level 4 (黑子)

发表于 Post on 2022-7-19 23:13:33 | 显示全部楼层 Show all
感觉网上租用公网服务器的话 下载速度比较慢,一个大一点的轨迹下载慢,连接有时也不是很稳定(不知道是不是我自己网络设置的原因)

40

帖子

1

威望

685

eV
积分
745

Level 4 (黑子)

 楼主 Author| 发表于 Post on 2022-7-20 00:42:35 | 显示全部楼层 Show all
5撇到3撇 发表于 2022-7-19 23:13
感觉网上租用公网服务器的话 下载速度比较慢,一个大一点的轨迹下载慢,连接有时也不是很稳定(不知道是不 ...

同感,我也感觉受网络影响比较大。

19

帖子

0

威望

123

eV
积分
142

Level 2 能力者

发表于 Post on 2022-7-20 08:13:49 | 显示全部楼层 Show all
我是用蒲公英盒子和服务器组成了局域网,然后通过外网再访问盒子构建的局域网(服务器放在校内实验室,我在家也可以访问)。整个操作还算简单,比较麻烦的是路由器的网络ip是自动获取的,所以服务器一旦遇到异常关机再开机,ip会变,还需要重新连接显示器再次获得服务器的ip,不过新的ip大概率会和之前连号

1853

帖子

1

威望

4104

eV
积分
5977

Level 6 (一方通行)

发表于 Post on 2022-7-20 09:39:48 | 显示全部楼层 Show all
也可以用这种。

http://t.csdn.cn/CjWsb

High-Performance Computing for You
为您专属定制的高性能计算解决方案

更多讯息,请访问:
App,  https://gitee.com/hpc4you/linux
hpc4you toolkit,  https://gitee.com/hpc4you/hpc
电邮hpc4you@163.com VX: hpc4you

1853

帖子

1

威望

4104

eV
积分
5977

Level 6 (一方通行)

发表于 Post on 2022-7-20 11:26:53 | 显示全部楼层 Show all
5撇到3撇 发表于 2022-7-19 23:13
感觉网上租用公网服务器的话 下载速度比较慢,一个大一点的轨迹下载慢,连接有时也不是很稳定(不知道是不 ...

国内的网络, 是按照带宽来收费的.

只是用来做SSH Jumper的话,
1c 512内存都都用.

不过最便宜的学生套餐, 5元每月, 带宽大概是8Mbps.
提高带宽, 需要掏钱的.

你也可以合理合法租用腾讯香港, 阿里香港或者新加坡.
延时可能在120ms左右(中国北方城市), 但是带宽不错哦.

延时更高的亚马逊, 可以轻松跑到8MB/s, 速度还稳定.

不过以上云服务, 都需要外币信用卡.

数据跨境, 是否触及法律法规, 自己问相关部门吧.

暂时想到这些.
High-Performance Computing for You
为您专属定制的高性能计算解决方案

更多讯息,请访问:
App,  https://gitee.com/hpc4you/linux
hpc4you toolkit,  https://gitee.com/hpc4you/hpc
电邮hpc4you@163.com VX: hpc4you

312

帖子

1

威望

3108

eV
积分
3440

Level 5 (御坂)

发表于 Post on 2022-7-20 16:37:04 | 显示全部楼层 Show all
最近使用校园网穿透有一些新体验。
就是各个高校应该都会提供给员工VPN服务,以便校外访问内网资源,例如财务系统、办公系统、以及图书馆权限等。
然后我发现(至少我们学校),校外登录VPN后,就能实现校内网一样的效果去访问校内服务器,提交作业完全没问题。
只不过不要下载大体积文件数据,例如chk文件或gmx的轨迹(分分钟被管理员教做人。)。
其他情况,下载下载out文件啥的,100mb以内都是比较安全的。

105

帖子

0

威望

792

eV
积分
897

Level 4 (黑子)

发表于 Post on 2022-7-20 16:47:24 | 显示全部楼层 Show all
abin 发表于 2022-7-19 15:48
可以试试
OmniEdge

大佬 能展开说说嘛

62

帖子

0

威望

2520

eV
积分
2582

Level 5 (御坂)

发表于 Post on 2022-7-20 16:51:49 | 显示全部楼层 Show all
5撇到3撇 发表于 2022-7-19 23:13
感觉网上租用公网服务器的话 下载速度比较慢,一个大一点的轨迹下载慢,连接有时也不是很稳定(不知道是不 ...

可以选择临时增加带宽。5 M 3h  5毛。传输速度可达 700-800 kb,也可以用的。

1853

帖子

1

威望

4104

eV
积分
5977

Level 6 (一方通行)

发表于 Post on 2022-7-20 18:21:29 | 显示全部楼层 Show all
anlancx 发表于 2022-7-20 16:47
大佬 能展开说说嘛

这是专业公司做的东西。

看简介,
客户端安装后,
登录一下就行了,没有其他设定或者配置。

支持你能找到的各种系统,
比如各种路由器,NAS,服务器,各种电脑。

去他们的站点看看就晓得了。

免费的方案足够用了,
可以加入20台机器!

我记得,这家老板,
是一个能讲中文的人,
是否是中国人,不晓得。

我推荐的东西,一般都免费,
或者免费的方案,都能满足应用需求的。
而且基本都是不需要做任何配置的。

High-Performance Computing for You
为您专属定制的高性能计算解决方案

更多讯息,请访问:
App,  https://gitee.com/hpc4you/linux
hpc4you toolkit,  https://gitee.com/hpc4you/hpc
电邮hpc4you@163.com VX: hpc4you

122

帖子

0

威望

631

eV
积分
753

Level 4 (黑子)

发表于 Post on 2022-7-22 00:09:07 | 显示全部楼层 Show all
abin 发表于 2022-7-20 11:26
国内的网络, 是按照带宽来收费的.

只是用来做SSH Jumper的话,

谢谢abin老师

122

帖子

0

威望

631

eV
积分
753

Level 4 (黑子)

发表于 Post on 2022-7-22 00:13:52 | 显示全部楼层 Show all
wxsxjj 发表于 2022-7-20 00:42
同感,我也感觉受网络影响比较大。

如果要涉及到数据传输的话 推荐使用一个便宜些的网盘,相当于一个中介,这种比较稳定 速度也很快,实在不行就人工u盘搬运,这个方法最稳定

10

帖子

0

威望

286

eV
积分
296

Level 3 能力者

发表于 Post on 2022-7-31 13:43:01 | 显示全部楼层 Show all
5撇到3撇 发表于 2022-7-19 23:13
感觉网上租用公网服务器的话 下载速度比较慢,一个大一点的轨迹下载慢,连接有时也不是很稳定(不知道是不 ...

我用rsync很稳定,下载数据足够了(阿里云杭州服务器,2M带宽,cpu内存最低配置)

1158

帖子

1

威望

2801

eV
积分
3979

Level 5 (御坂)

发表于 Post on 2022-7-31 14:01:47 | 显示全部楼层 Show all
scp当然能传回来,反过来操作就行了,传文件最快捷还是win挂载nfs,直接打开文件夹拖拽就传了

本版积分规则 Credits rule

手机版 Mobile version|北京科音自然科学研究中心 Beijing Kein Research Center for Natural Sciences|京公网安备 11010502035419号|计算化学公社 — 北京科音旗下高水平计算化学交流论坛 ( 京ICP备14038949号-1 )|网站地图

GMT+8, 2023-2-5 09:17 , Processed in 0.609416 second(s), 26 queries .

快速回复 返回顶部 返回列表 Return to list