利用云服务器搭建远程办公访问(frp实现内网穿透)
用云服务器搭建远程办公可以干什么:
1.在任何地方通过ssh连接公司或者家中的服务器
2.在任何地方通过远程桌面连接公司或者家里的Windows电脑
一、为什么要在家远程连接公司的电脑?
1.因为加班是难免的嘛,即使我们偶尔调休也难免有同事打电话咨询你。可是有很多东西根本记不住,尤其像代码这种东西。有时着急不得不回一趟公司,非常浪费时间。如果我们可以远程连接岂不是更方便。
2.我们平时在学校用服务器跑机器学习,但是回了家就连不上自己实验室的服务器了,自己电脑又跑的太慢,通过内网穿透就可以实现在家部署自己的机器学习任务。
3.当然也未必是家里到公司,也可以是公司到家里、公司到学校、家到学校,可以穿透到一切你想穿透的地方。
4.这里我们说的是使用frp进行内网穿透,映射端口实现远程连接。可能有人会问了,网络上面有很多类似的现成软件,为什么不直接使用?像TeamViews个人版是完全免费使用的,并不是因为他不好,只是应需定制性并不高,如果公司的网络不稳定,会造成teamviews掉线,无法进行无人值守。
二、那么如何通过云服务器进行连接呢
- (一)需要申请一个云服务器,阿里云、腾讯云......等都可以(学生的话会很优惠)。
- (二)云端服务器配置:(在云服务器Xshell中进行)
1.在命令框界面输入frp下载链接:(或者登陆https://github.com/fatedier/frp/releases下载下来也可以)
wget http://github.com/fatedier/frp/releases/download/v0.23.1/frp_0.34.3_linux_amd64.tar.gz
frp_0.34.3_linux_amd64.tar.gz是64位系统,frp_0.34.3_linux_386.tar.gz是32位系统,根据自已的云服务器去下载对应的frp文件。
2.解压压缩文件:
tar -zxvf frp_0.34.3_linux_amd64.tar.gz
3.进入解压后的文件夹
cd frp_0.34.3_linux_amd64
4.打开配置服务器文件frps.ini
bind_port是服务器的端口,一般默认就可以,但是要提前到你买的官网打开这个可以访问的端口(我的是阿里云的服务器)(如何开放端口百度查询即可)如图:我的已经添加7000端口和3389端口
5.配置完成后运行服务器,指令如下:
./frps -c frps.ini
看到如下结果后说明服务器端启动成功。
输入nohup ./frps -c frps.ini让服务器保持后台运行,出现错误的话进行下面的命令进行重定位。
nohup ./frpc -c ./frpc.ini &,还不行的话下面这个命令。
nohup ./frps -c frps.ini > /dev/null 2> /dev/null &
这样就让服务器在后台一直保持运行了,但是如果云主机重启后仍然会断开运行,这就需要配置一个自启动功能_参考网络资源1.https://www.jianshu.com/p/a6e9627dbe29和2.https://blog.csdn.net/qq_34779901/article/details/104412887。
-
使用守护程序systemctl
-
在/lib/systemd/system文件夹下创建frps.service
-
Sudo vim frps.service
-
输入如下内容,保存退出。
[Unit] Description=frp service After=network.target [Service] TimeoutStartSec=30 ExecStart=#frp绝对路径#/frps -c #frp绝对路径#/frps.ini ExecStop=/bin/kill $MAINPID [Install] WantedBy=multi-user.target
-
启动服务
Systemctl start frps
-
服务开机自启动
Systemctl enable frps
(三)客户端配置(我的是windows):
1.登陆https://github.com/fatedier/frp/releases下载,同服务器端的第一步相同:但是要下载windows的frp_0.34.3_windows_amd64.tar.gz。
2.解压后放到自己的盘下:(我的放到了C盘)
3.用WIN+R快捷键打开窗口输入cmd,打开命令窗口
4.用cd命令切换到frp_0.34.3_windows_amd64文件夹位置,并用dir命令查看文件夹内容。
5. 查看frpc.ini配置文件(C代表客户端),在命令窗口直接输入frpc.ini即可打开。server_addr = 114.119.110.120是你买的服务器的公网IP要对应上。
server_port = 7000是监听端口与服务器的bind_port对应一致。local_port = 3389,remote_port = 3389是在买服务器的官网开通的可访问端口。
6.在cmd命令窗口输入frpc -c frpc.ini,看到如下提示效果说明客户端启动成功。
附加:目前这样可以正常访问,但是电脑重启后每次都得配置比较麻烦,下面实现自启动
在用WIN+R打开的运行窗口中输入:%programdata%\Microsoft\Windows\Start Menu\Programs\Startup,打开启动文件夹
在文件夹下面建一个frpc.vbs格式的文件,内容如下,完成后双击即可启动,之后开机自启动就可以实现。
set ws=WScript.CreateObject("WScript.Shell") ws.Run "#frp绝对路径#\frpc.exe -c #frp绝对路径#\frpc.ini",0
7.开启远程访问权限:(右击我的电脑-属性),如果客户端电脑没有密码需要先设置密码。
没有密码时在控制面板中设置一个账户密码:(点击更改账户类型)
选中自己的账户:进行密码设置
目前云端服务器和自己远程的windows客户端电脑已配置好并启动,下面就可以进行远程访问操作.
- (四)远程访问
1.在任何一台要访问的电脑搜索中输入remote找到远程桌面连接。
2填写访问地址格式:(服务器公网IP:端口号)(114.119.110.120:3389)