一、環(huán)境
云服務(wù)器CentOS 8(輕量應(yīng)用服務(wù)器)
黑群暉DSM 6.2-23739
frp版本0.38.0
二、云服務(wù)器frps配置
1、云服務(wù)器用的是騰訊云的,直接用wget去GitHub下載比較慢,最后還卡住了??梢韵认螺d下來(lái)拷到服務(wù)器上。
wget https://github.com/fatedier/frp/releases
下載下來(lái)的文件解壓,直接傳到/usr/local
里。
當(dāng)然命令行解壓也可以,解壓到指定目錄,解壓后記得重命名文件夾名稱(chēng),可以重命名為frp,和下面的ExecStart里的地址要對(duì)的上。
tar -xvf frp_0.38.0_linux_amd64.tar.gz -C /usr/local
2、配置服務(wù)文件frp.service,可以設(shè)置開(kāi)機(jī)啟動(dòng)

[Unit]
Description=The nginx HTTP and reverse proxy server
After=network.target remote-fs.target nss-lookup.target
[Service]
Type=simple
ExecStart=/usr/local/frp/frps -c /usr/local/frp/frps.ini
KillSignal=SIGQUIT
TimeoutStopSec=5
KillMode=process
PrivateTmp=true
StandardOutput=syslog
StandardError=inherit
[Install]
WantedBy=multi-user.target
其中ExecStart=/usr/local/frp/frps -c /usr/local/frp/frps.ini改成對(duì)應(yīng)的文件地址。
3、把文件frp.service放到指定位置
/usr/lib/systemd/system/frp.service
4、重新加載服務(wù)的配置文件
systemctl daemon-reload
5、啟動(dòng)/停止/重啟,查看狀態(tài),設(shè)置開(kāi)機(jī)自啟/關(guān)閉開(kāi)機(jī)自啟
systemctl start frp
systemctl stop frp
systemctl restart frp
systemctl status frp
systemctl enable frp
systemctl disable frp
6、服務(wù)端 frps.ini配置
[common]
bind_port = 10001 # 監(jiān)聽(tīng)端口,客戶(hù)端配置對(duì)應(yīng)端口
vhost_http_port = 8080 # 當(dāng)客戶(hù)端配置type為http時(shí)使用這個(gè)端口訪問(wèn)
vhost_https_port = 8080 # 當(dāng)客戶(hù)端配置type為https時(shí)使用這個(gè)端口訪問(wèn)
token = csdn # 認(rèn)證token,客戶(hù)端配置對(duì)應(yīng)token
dashboard_port = 10000 # frp控制臺(tái),看起來(lái)更直觀,建議開(kāi)起來(lái)
dashboard_user = csdn
dashboard_pwd = csdn # dashboard的用戶(hù)名、密碼
log_file = ./frps.log # 日志文件記錄位置
log_level = info # 日志級(jí)別
log_max_days = 3 # 記錄日志天數(shù)
三、群暉docker配置frpc
1、docker【注冊(cè)表】搜frp,之前的教程基本用的是oldiy那個(gè),已經(jīng)很久沒(méi)更新了,這個(gè)是最新0.38.0版本的。如果遇到搜不到的問(wèn)題,可以試試在【注冊(cè)表】中【設(shè)置】里【新增】,新增隨便一個(gè)源,再【使用】,再切回【使用】原來(lái)的源,再回去搜索就能搜到最新的了。

2、配置frpc.ini,這里放的路徑是我自己新建的文件夾docker/frp
。
[common]
server_addr = 124.1.1.1 #騰訊云服務(wù)器的外網(wǎng)
server_port = 10001 #服務(wù)器配置的監(jiān)聽(tīng)端口
token = csdn
[nas]
type = http #http方式,下面會(huì)介紹一種tcp方式
local_ip = 192.168.199.199 #群暉在內(nèi)網(wǎng)使用的ip
local_port = 5000 #本地端口
custom_domains = 124.1.1.1 #域名,無(wú)域名配置服務(wù)器ip
# 此種配置方式與frps.ini中配置的vhost_http_port相關(guān)聯(lián),訪問(wèn)時(shí)使用124.1.1.1:8080訪問(wèn)
3、為了更好理解配置兩個(gè)ini文件,下面示例另一種WEB訪問(wèn)方式,使用tcp
[common]
server_addr = 124.1.1.1 #騰訊云服務(wù)器的外網(wǎng)
server_port = 10001 #服務(wù)器配置的監(jiān)聽(tīng)端口
token = csdn
[nas]
type = tcp #tcp方式
local_ip = 192.168.199.199 #群暉在內(nèi)網(wǎng)使用的ip
local_port = 5000 #本地端口
remote_port = 9991 #遠(yuǎn)程端口,也是是外網(wǎng)訪問(wèn)端口
custom_domains = 124.1.1.1 #域名,無(wú)域名配置服務(wù)器ip
# 此種配置方式與frps.ini中配置的vhost_http_port無(wú)關(guān),訪問(wèn)時(shí)使用124.1.1.1:9991訪問(wèn)
去【映像】里啟動(dòng),勾上【使用高權(quán)限執(zhí)行容器】,進(jìn)入【高級(jí)設(shè)置】。
【存儲(chǔ)空間】里【添加文件】,選中剛配置好的frpc.ini,裝載路徑按圖中配置/etc/frp/frpc.ini
。

【網(wǎng)絡(luò)】里【使用與 Docker Host 相同的網(wǎng)絡(luò)】打勾
啟動(dòng)容器,便可以在剛才配置的控制臺(tái)dashboard里按剛配置HTTP或者TCP選項(xiàng)里看到此客戶(hù)端,至此利用frp實(shí)現(xiàn)內(nèi)網(wǎng)穿透。
參考
https://gofrp.org/
https://zhuanlan.zhihu.com/p/129076009
https://post.smzdm.com/p/aoowo2kn/
該文章在 2023/12/28 10:38:49 編輯過(guò)