前言#
這個內容其實我在一年前就做過一次,(之前寫的),在搭建完成之後也給我朋友用過,也是在實踐中發現讓用戶自己去安裝客戶端也好,還是給客戶端添加為服務也好,對於用戶來說其實都挺麻煩的,還是有一定的門檻,不是很方便。這幾天翻看有趣的開源社區 - HelloGitHub的時候,發現了一個蠻不錯的 frp 客戶端項目 ——luckjiawei/frpc-desktop: frp 跨平台桌面客戶端,可視化配置,輕鬆實現內網穿透! 支持所有 frp 版本。簡單看了下,界面挺好看,操作也不複雜,OK,就你了。
服務端安裝#
準備工作#
本次搭建需要用到兩個開源項目
- luckjiawei/frpc-desktop: frp 跨平台桌面客戶端,可視化配置,輕鬆實現內網穿透! 支持所有 frp 版本
- fatedier/frp: A fast reverse proxy to help you expose a local server behind a NAT or firewall to the internet.
需要下載的文件如下 - frp 服務端
- frp 客戶端
安裝 frp 服務端#
- 連接伺服器並上傳服務端文件,我使用的是 Xftp 8 和 Xshell 8 用於連接伺服器
- 切換到對應路徑並解壓文件
cd /home/frp
tar -zxvf frp_0.64.0_linux_amd64.tar.gz
解壓完成後重命名文件夾方便後面輸路徑,其中 frps.toml 是服務端的配置文件,frps 是服務端二進制程序
- 修改配置文件
vim frps.toml
按 i 開始輸入,ESC 再輸入退出編輯
bindPort = 7000 # 服務端端口
auth.method = "token" # 使用令牌進行身份驗證
auth.token = "[email protected]" # 令牌,客戶端與服務端一致才能連接成功 推薦配置複雜一點
- 啟動服務端
./frps -c ./frps.toml
- 將 frp 添加為服務並開啟開機自啟動
- 按下 CTRL+C 中斷進程
- 創建 frps.service 文件
sudo vim /etc/systemd/system/frps.service
- 寫入內容
[Unit]
# 服務名稱,可自定義
Description = frp server
After = network.target syslog.target
Wants = network.target
[Service]
Type = simple
# 啟動frps的命令,需修改為您的frps的安裝路徑
ExecStart = /path/to/frps -c /path/to/frps.toml
[Install]
WantedBy = multi-user.target
4. 啟動frp並設置開機自啟動
# 啟動frp
sudo systemctl start frps
# 停止frp
sudo systemctl stop frps
# 重啟frp
sudo systemctl restart frps
# 查看frp狀態
sudo systemctl status frps
設置 frps 開機自啟動
sudo systemctl enable frps
當你看到兩個enabled和active (running)就說明在正常運行了

開啟防火牆#
我這邊是阿里的雲伺服器,到阿里的控制台去開啟防火牆,此處需要開啟 7000 端口和你需要映射的目標端口,我這邊把 50000-60000 端口全部開啟了
安裝 frp 客戶端#
客戶端在 windows 下的安裝還是很方便的,一直下一步即可。
安裝完成後需要進行與伺服器的連接。
- 在設置裡下載對應的 frp 版本,我的伺服器用的是 0.64.0,所以這裡用的也是 0.64.0,如果語言不是中文的話可以去最底下切換一下語言
- 輸入伺服器地址,端口,驗證方式選擇令牌,然後把前面設的令牌輸進去
- 設置隧道
選擇你需要的代理類型,內網地址,兩邊的端口,我這邊繼續拿 mc 作為例子
- 設置完成後開啟 frp 即可使用
最終效果如下#
參考的教程如下#
結語#
這個伺服器上搭建的 frp 可以供各位免費使用,伺服器到明年一月到期
地址:8.137.70.233
端口:7000
秘鑰:[email protected]