frp 內網穿透
阿新 • • 發佈:2020-07-19
frp介紹
frp 是一個可用於內網穿透的高效能的反向代理應用,支援 tcp, udp 協議,為 http 和 https 應用協議提供了額外的能力,且嘗試性支援了點對點穿透。
搭建
服務端搭建
需要一臺外網伺服器,我這裡是一臺阿里雲的ECS,系統CentOS 7。
frp下載地址:https://github.com/fatedier/frp/releases
服務端配置
-
複製 & 解壓
# 複製到local下的frp目錄 cp frp_0.33.0_linux_amd64.tar.gz /usr/local/frp # 解壓 tar -axvf frp_0.33.0_linux_amd64.tar.gz # 刪除掉與frp客戶端相關的內容 rm -rf frpc*
-
修改frps.ini檔案,
vi frps.ini
[common] bind_port = 7100 dashboard_port = 7500 dashboard_user = alice dashboard_pwd = 123456
儲存,退出。
-
啟動
./frps -c frps.ini
-
後臺啟動方式
nohub ./frps -c frps.ini &
將frp作為服務
-
進入frp根目錄下的systemd資料夾,修改frps.service
[Unit] Description=Frp Server Service After=network.target [Service] Type=simple User=nobody Restart=on-failure RestartSec=5s # 只需要修改下面這一行,路徑根據自己的設定 ExecStart=/usr/local/frp/frp_0.33.0_linux_amd64/frps -c /usr/local/frp/frp_0.33.0_linux_amd64/frps.ini [Install] WantedBy=multi-user.target
儲存,退出。
-
將frps.service複製到/etc/systemd/system/目錄下
-
執行下面命令,就可以很方便的啟動關閉frp服務端了
# 重新載入 systemctl daemon-reload # 啟動frps systemctl start frps.service # 重啟 systemctl restart frps.service # 關閉 systemctl stop frps.service # 開機自啟 systemctl enable frps.service
客戶端搭建
同樣下載客戶端程式,只不過這次下載的是windows的。
客戶端配置
下載成功後,解壓,然後找到frpc.ini,作如下配置
[common]
server_addr = 39.xxx.xxx.xxx
server_port = 7100
[web]
type = tcp
local_ip = 127.0.0.1
local_port = 8080
remote_port = 7700
server_addr
:服務端監聽地址,和服務端配置的地址一致
server_port
:服務端埠 ,和服務端配置的地址一致
local_ip
:本地地址,待接收訊息的應用所在地址
local_port
:本地埠,待接收訊息的應用監聽的埠
remote_port
:遠端伺服器監聽的埠,例如:遠端伺服器監聽埠為7777,你訪問http://xxx.xxx.xxx.xxx:7700,將轉發到本地http://127.0.0.1:8080。
啟動,和服務端一樣,開啟命令列輸入如下命令