主要應用場景:針對學生放假回家使用外網無法遠程操作學校的服務器或者電腦,這里通過阿里雲的雲服務器搭建一個frp服務,實現內網穿透,從而可以直接通過遠程桌面或者其他工具實現對校園網內的服務器或者電腦進行操作。
第一步:購買阿里雲服務器,由於是學生,可以享受學生價9.5元每月。(阿里雲翼計划:https://promotion.aliyun.com/ntms/act/campus2018.html?userCode=40juv3zh)。如果不是學生可以先領取優惠卷后再購買(優惠卷鏈接: https://promotion.aliyun.com/ntms/yunparter/invite.html?userCode=40juv3zh )
第二步:搭建雲服務器,設置系統和登錄密碼。這里我選擇的ubuntu系統
服務器操作:
首先登錄系統,從網上下載frp軟件:wget https://github.com/fatedier/frp/releases/download/v0.24.1/frp_0.24.1_linux_amd64.tar.gz
解壓:tar -zxvf frp_0.24.1_linux_amd64.tar.gz
重命名:mv frp_0.24.1_linux_amd64 frp
配置文件:vim frps.ini
[common] #服務器開放的端口 bind_port = 7000
服務器段需要設置兩個端口入站規則:注意是兩個端口:7000和6000,其中6000是在客戶端的端口。
①
②
③
啟動服務:
cd frp nohup frp/frps -c frp/frps.ini
客服端配置(個人電腦):
軟件下載地址:https://github.com/fatedier/frp/releases/
由於客戶端是windows所以下載選擇:
同樣解壓,然后配置frpc.ini文件
[common]
server_addr = 你自己服務器端ip(公網ip)
server_port = 7000 #對應服務器配置中的端口
[ssh]
type = tcp
local_ip = 自己電腦的ip
local_port = 3389
remote_port = 6000
客服端添加端口出站規則:將端口3389添加到出站規則中
在Dos中啟動服務:win+R 輸入cmd
需要先進入frp目錄后執行如下操作:
frpc -c frpc.ini
至此,配置已經完成,可以在外網電腦通過實現遠程桌面內網電腦。
遠程桌面的地址:126.*.*.47(阿里雲服務公網IP):6000(端口號,remote_port)
如果需要配置多個客服端,映射到同一個公網IP,則需要:特殊配置,ssh名稱和端口均不能相同
內網機器1: [ssh] <==不同點 type = tcp local_ip = 內網機器1的ip地址 local_port = 3389 remote_port = 6000 <==不同點 內網機器2: [ssh1] <==不同點 type = tcp local_ip = 內網機器2的ip地址 local_port = 3389 remote_port = 6001 <==不同點
服務器一般不會經常重啟,但是自己的電腦涉及到經常重啟問題,所以需要設置開啟自啟動客戶端frpc:
用winsw將frp注冊為系統服務
下載winsw https://github.com/kohsuke/winsw/releases ,改名為winsw.exe,放到frp相同的目錄里,並在同一個目錄里創建一個utf8編碼的文本文件,文件名是 winsw.xml,內容是:
<service>
<id>frp</id>
<name>frp這里是服務的名稱</name>
<description>這里是服務的介紹,隨便寫</description>
<executable>frpc</executable>
<arguments>-c frpc.ini</arguments>
<onfailure action="restart" delay="60 sec"/>
<onfailure action="restart" delay="120 sec"/>
<logmode>reset</logmode>
</service>
啟動:以管理員權限打開一個命令窗口,cd到frp所在目錄,執行:
winsw install
winsw start
如果要卸載服務,執行命令:
winsw stop
winsw uninstall