擁有一台服務器能干嗎?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