拥有一台服务器能干吗?https://www.zhihu.com/question/27205559
如果自己的笔记本性能不高,实验室或家里有一台性能更好的台式机。但是出门在外又只能带着笔记本的,想用性能更好的台式机,这时候只需要用内网穿透就可以了。介绍一下frp。
准备步骤
1. 先要有个服务器。可以买阿里云或者腾讯云的服务器,学生价更便宜。https://promotion.aliyun.com/ntms/act/campus2018.html
我选的是第二个,操作系统是centos7.3
2. 下载frp相同版本 https://github.com/fatedier/frp/releases
我下载的是图上框住的两个。
配置服务器(阿里云服务器):
直接设置成自启动,远程连接退出后不会停止frp服务
用xftp或者psftp https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html,
将文件frp_0.33.0_linux_amd64.tar.gz 上传到服务器
关于psftp怎么用,参考。https://kjsolo.wordpress.com/2010/03/08/psftp%E7%94%A8%E6%B3%95/
(putty和psftp都是不需安装的,个人觉得方便快捷,所以在这推荐一下)
将对应的包解打包,(我这已经执行了的)
因为这是服务器端,可以删掉"frpc" "frpc.ini" "frpc_full.ini"文件。(我这是已经删掉了的样子)
解压好的包里包含了设置服务器自启动的文件,将其复制到/etc/systemd/system/下就可
给通信增加一个密码,修改一下frps.ini文件,token后面的为服务器和客户机通信的密码
修改一下自启动配置文件。只修改下面用框框框住的。将frps.service文件修改就行。
启动frp服务。然后服务器端就能自动启动了
服务器端的配置就完成了。
注意:服务器的端口一定要开放入。如上面的监听端口7000,以及后面的自定义远程访问端口6000。必须在阿里云服务器控制台和主机上都将这两个端口打开。
否则会出现连不上的bug。控制台的防火墙里将这两个端口都打开。
关于服务器打开对应端口,参照https://blog.csdn.net/y534560449/article/details/65629697
客户端(内网机器)
设置自启动,重启电脑后自动后台连接frp服务器
我这客户端是windows系统。用的版本是frp_0.16.1_windows_amd64
解压之后,把没用的frps frps.ini frps_full.ini文件删掉。修改frpc.ini 文件
一定要在本地开启远程权限
配置好之后,在cmd中直接运行frpc.exe即可。但这只是手动运行
配置客户端自启动。参照这位博主的https://diannaobos.com/post/505.html
要先注意自己的NET版本
1. 打开计算机窗口,然后我们地址栏中直接输入地址,C:\Windows\Microsoft.NET\Framework,然后回车,进行查看。
2. 这时候我们可以看到这里有好几个Framework版本,最高的这个就是自己电脑的版本,
我这版本是4.0的
下载对应的工具https://github.com/winsw/winsw/releases/tag/v2.9.0
下载好后将文件改一个简单的名字,放到frpc.exe同一文件夹下。在同目录下新建winsw.xml文件,输入以下内容
<service>
<id>frp</id>
<name>frp</name>
<description>用frp发布本地电脑网站到外网</description>
<executable>frpc</executable>
<arguments>-c frpc.ini</arguments>
<logmode>reset</logmode>
</service>
然后在当前目录下以管理员分别执行以下cmd命令
winsw install
winsw start
说明:如果不再需要这个服务,使用winsw uninstall即可卸载服务。当然还有诸如start、stop这样的命令启动和关闭服务。
更重要的是,没有那个既不美观又烦人的命令提示符窗口
win + r 查看输入services.msc服务是否成功
右键属性,修改一下内容,让其自启动。以下是我的配置
大公告成。注意本地6000端口别被占用!否则就需要改端口了。
在另一台机器上用windows自带的远程连接内网机器
win + r 输入mstsc
服务器地址:端口号 进行远程连接
注意:多个客户端时会出现小问题 https://blog.csdn.net/rain_lny/article/details/83177231
第二:配置多个客户端。不能配置成同名的
A电脑的配置信息如下
[common]
server_addr = 服务器IP
server_port = 端口号
[web]
type = http
local_ip = 127.0.0.1
local_port = 8010
custom_domains = abc.baidu.com
B电脑的配置信息如下
[common]
server_addr = 服务器IP
server_port = 端口号
[web2]
type = http
local_ip = 127.0.0.1
local_port = 8010
custom_domains = def.baidu.com