国产成人精品无码青草_亚洲国产美女精品久久久久∴_欧美人与鲁交大毛片免费_国产果冻豆传媒麻婆精东

15158846557 在線咨詢 在線咨詢
15158846557 在線咨詢
所在位置: 首頁 > 營銷資訊 > 網(wǎng)站運(yùn)營 > frp和nginx內(nèi)網(wǎng)服務(wù)器轉(zhuǎn)發(fā)和建站

frp和nginx內(nèi)網(wǎng)服務(wù)器轉(zhuǎn)發(fā)和建站

時間:2023-07-11 22:06:02 | 來源:網(wǎng)站運(yùn)營

時間:2023-07-11 22:06:02 來源:網(wǎng)站運(yùn)營

frp和nginx內(nèi)網(wǎng)服務(wù)器轉(zhuǎn)發(fā)和建站:之前寫過一次內(nèi)網(wǎng)web轉(zhuǎn)發(fā)建站的文章([nginx和ngrok配合進(jìn)行內(nèi)網(wǎng)web轉(zhuǎn)發(fā)](nginx和ngrok配合進(jìn)行內(nèi)網(wǎng)web轉(zhuǎn)發(fā) - 黑白的自留地 "nginx和ngrok配合進(jìn)行內(nèi)網(wǎng)web轉(zhuǎn)發(fā)"))同步發(fā)過本站后來看到網(wǎng)上有挺多小伙伴們看,后來因為ngrok的不方便和不穩(wěn)定我們公司內(nèi)網(wǎng)已經(jīng)不在使用ngrok而換成frp了,綜合使用了nginx、IIS、Apache、ntbind、gogs等綜合應(yīng)用搭建了內(nèi)部的業(yè)務(wù)系統(tǒng),在經(jīng)過半年多使用后感覺挺穩(wěn)定和方便。因此寫下這個筆記記錄相關(guān)的技術(shù)要點(diǎn)給小伙伴們和自己以后配置參考。




## 環(huán)境和需求

1. 公網(wǎng)服務(wù)器(至少要有公網(wǎng)IP最好是linux,我們用的阿里云)

2. 內(nèi)網(wǎng)服務(wù)器或電腦(得益于frp是go語言寫的跨平臺,可以是windows、linux、樹莓派等幾乎任何可聯(lián)網(wǎng)設(shè)備。我用的windows)

3. 內(nèi)網(wǎng)路由器控制權(quán)(需要搭建內(nèi)網(wǎng)開發(fā)測試環(huán)境需要,不需要協(xié)作的可以直接在自己電腦里改host文件解析實現(xiàn))




## 設(shè)計思路

數(shù)據(jù)流程是這樣的:

> 域名http://a.com解析到公網(wǎng)IP(12.12.12.12為示例IP),公網(wǎng)搭建nginx添加http://a.com反向代理到公網(wǎng)服務(wù)器的8080端口,用戶訪問http://a.com到達(dá)公網(wǎng)的nginx,nginx轉(zhuǎn)發(fā)請求到8080端口,frp服務(wù)端配置http監(jiān)聽端口為8080,內(nèi)網(wǎng)的frp客戶端負(fù)責(zé)轉(zhuǎn)發(fā)內(nèi)網(wǎng)服務(wù)器的80端口到frp服務(wù)器的8080端口同時制定只監(jiān)聽http://a.com這個域名。至此內(nèi)網(wǎng)web已經(jīng)能完全轉(zhuǎn)發(fā)到外網(wǎng)了。如果需要內(nèi)網(wǎng)開發(fā)調(diào)試環(huán)境同時不要求公司每個人都改host文件綁定http://a.com可以在內(nèi)網(wǎng)服務(wù)器上使用ntbind搭建dns服務(wù)器,把內(nèi)網(wǎng)服務(wù)器IP地址設(shè)置到路由器的dhcp部分的dns服務(wù)器那里,這樣公司用戶訪問http://a.com是直接走了內(nèi)網(wǎng),從外網(wǎng)訪問http://a.com是走了frp穿透。




## 第一步:公網(wǎng)搭建配置nginx

nginx的安裝應(yīng)該不用贅述了,網(wǎng)上有l(wèi)npm一鍵包、wdcp一鍵包等,主要寫寫我的配置:

```

server {

listen 80;

server_name a.com;

location / {

proxy_pass http://127.0.0.1:8080;

#Proxy Settings

proxy_redirect off;

proxy_set_header Host $host;

proxy_set_header X-Real-IP $remote_addr;

proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

proxy_next_upstream error timeout invalid_header http_500 http_502 http_503 http_504;

proxy_max_temp_file_size 0;

proxy_connect_timeout 90;

proxy_send_timeout 90;

proxy_read_timeout 90;

proxy_buffer_size 4k;

proxy_buffers 4 32k;

proxy_busy_buffers_size 64k;

proxy_temp_file_write_size 64k;

}

}

```

這里就指明訪問http://a.com的時候nginx直接代理到本服務(wù)器的8080端口。




## 第二步:在公網(wǎng)服務(wù)器安裝配置frps服務(wù)端

在公網(wǎng)服務(wù)器上安裝frp可以直接通過[github](fatedier/frp "github")下載安裝配置,但是這里推薦使用[一鍵包](【填坑完畢】內(nèi)網(wǎng)穿透利器Frp一鍵安裝腳本及設(shè)置教程 - 插件 - KoolShare - 源于玩家 服務(wù)玩家 "一鍵包")安裝,注意一鍵包只適用于debian、ubuntu、CentOS,測試過的系統(tǒng)如下:

> CentOS 6 32/64bit

CentOS 7 32/64bit

Debian 6 32/64bit

Debian 7 32/64bit

Debian 8 32/64bit

Ubuntu 14 32/64bit




安裝命令:

```bash

wget --no-check-certificate https://raw.githubusercontent.com/clangcn/onekey-install-shell/master/frps/install-frps.sh -O ./install-frps.sh

chmod 700 ./install-frps.sh

./install-frps.sh install

```

流程:

需要注意Please input frps vhost_http_port這里為了不和公網(wǎng)的nginx沖突我使用了8080端口,還有ssl端口默認(rèn)是443我使用了4433,這樣公網(wǎng)服務(wù)器可以繼續(xù)作為web服務(wù)器正常使用。

```bash

Loading network version for frps, please wait...

frps Latest release file frp_0.8.1_linux_amd64.tar.gz #此步驟會自動獲取frp最新版本,自動操作,無需理會

Loading You Server IP, please wait...

You Server IP:12.12.12.12 #自動獲取你服務(wù)器的IP地址

Please input your server setting:




Please input frps bind_port [1-65535](Default Server Port: 5443): #輸入frp提供服務(wù)的端口,用于服務(wù)器端和客戶端通信

Please input frps dashboard_port [1-65535](Default dashboard_port: 6443): #輸入frp的控制臺服務(wù)端口,用于查看frp工作狀態(tài)

Please input frps vhost_http_port [1-65535](Default vhost_http_port: 80): #輸入frp進(jìn)行http穿透的http服務(wù)端口 這里我使用了8080

Please input frps vhost_https_port [1-65535](Default vhost_https_port: 443): #輸入frp進(jìn)行https穿透的https服務(wù)端口 這里為使用了4433

Please input privilege_token (Default: WEWLRgwRjIJVPx2kuqzkGnvuftPLQniq): #輸入frp服務(wù)器和客戶端通信的密碼,默認(rèn)是隨機(jī)生成的

Please input frps max_pool_count [1-200](Default max_pool_count: 50): #設(shè)置每個代理可以創(chuàng)建的連接池上限,默認(rèn)50




##### Please select log_level #####

1: info

2: warn

3: error

4: debug

#####################################################

Enter your choice (1, 2, 3, 4 or exit. default [1]): #設(shè)置日志等級,4個選項,默認(rèn)是info







Please input frps log_max_days [1-30]

(Default log_max_days: 3 day): #設(shè)置日志保留天數(shù),范圍是1到30天,默認(rèn)保留3天。




##### Please select log_file #####

1: enable

2: disable

#####################################################

Enter your choice (1, 2 or exit. default [1]): #設(shè)置是否開啟日志記錄,默認(rèn)開啟,開啟后日志等級及保留天數(shù)生效,否則等級和保留天數(shù)無效

```

確定無誤后回車會自動安裝,稍等片刻安裝結(jié)束會顯示如下的配置信息:

```bash

Congratulations, frps install completed!

==============================================

You Server IP : 12.12.12.12

Bind port : 5443

Dashboard port : 6443

vhost http port : 8080

vhost https port: 4433

Privilege token : WEWLRgwRjIJVPx2kuqzkGnvuftPLQniq

Max Pool count : 50

Log level : info

Log max days : 3

Log file : enable # 將上面信息添加到你的路由器frp穿透插件中吧

==============================================

frps Dashboard: http://12.12.12.12:6443/ # 這個是frp控制臺訪問地址

==============================================

```

**更新:安裝時配置的Dashboard user和Dashboard pwd為打開http://12.12.12.12:6443/ 這個狀態(tài)控制臺的賬號和密碼**

可以把以上信息保存下來備用。一鍵包可以直接安裝frp為系統(tǒng)服務(wù)非常方便,默認(rèn)安裝的目錄是:`/usr/local/frps/`后期需要更改配置的可以進(jìn)入這個目錄修改frps.ini文件。另附常用命令:

```bash

更新frps:./install-frps.sh update

卸載frps:./install-frps.sh uninstall

管理:

/etc/init.d/frps start

/etc/init.d/frps stop

/etc/init.d/frps restart

/etc/init.d/frps status

/etc/init.d/frps config

/etc/init.d/frps version

```




## 第三步:內(nèi)網(wǎng)安裝frpc客戶端

這里我們已gogs為例,我在內(nèi)網(wǎng)的windows服務(wù)器上安裝了git服務(wù)器監(jiān)聽在3000端口,現(xiàn)在想通過訪問http://a.com直接能訪問到內(nèi)網(wǎng)的git服務(wù)器。同時想把內(nèi)網(wǎng)服務(wù)器的一個網(wǎng)盤的8049端口穿透出去。

這里請點(diǎn)擊第二步里的frp的[github發(fā)布頁](fatedier/frp "github")下載frp編譯好的二進(jìn)制包,這里我感覺內(nèi)網(wǎng)服務(wù)器選擇里 frp_0.14.0_windows_amd64.zip。下載后解壓到D盤,配置目錄下的frpc.ini沒有這個文件可以新建,我的配置如下:

```

[common]

server_addr = 12.12.12.12

server_port = 5443 #上一步的服務(wù)器Bind port




log_file = ./frpc.log #日志和日志等級

# debug, info, warn, error

log_level = debug

log_max_days = 3




privilege_token = WEWLRgwRjIJVPx2kuqzkGnvuftPLQniq #上一步的連接密碼Privilege token




pool_count = 20 #連接數(shù)調(diào)優(yōu)可以參考frp的中文文檔 下同

tcp_mux = true

protocol = tcp




#git服務(wù)器配置

[git]

type = http #協(xié)議類型

local_ip = 127.0.0.1 #本地IP

local_port = 3000 #本地端口

use_gzip = false #是否gzip壓縮輸出

pool_count = 20 #連接數(shù)調(diào)優(yōu)請參考frp文檔

custom_domains = a.com #綁定的域名

#網(wǎng)盤8049端口

[panupload]

type = tcp #tcp類型

local_port = 8049 #本地端口

remote_port = 8059 #要穿透到服務(wù)器的端口,這里就可以通過12.12.12.12:8059或http://a.com:8059來訪問內(nèi)網(wǎng)的8049上的網(wǎng)盤了




```

配置完成后通過命令行進(jìn)入D:/frp運(yùn)行:`D:/frp/frpc.exe -c D:/frp/frpc.ini`(這里我把frp解壓到了D盤,根據(jù)你自己的情況修改)。注意,frpc客戶端運(yùn)行成功后并沒有任何反應(yīng),需要登錄到上一步的控制臺查看:http://12.12.12.12:6443/

## 結(jié)語

如上就已經(jīng)搭建完成了,這樣我們可以把內(nèi)網(wǎng)的web和tcp端口或者udp端口穿透到外網(wǎng)了。包括很多小伙伴頭疼的微信公眾號開發(fā)的調(diào)試也可以挪到內(nèi)網(wǎng)了。非常感謝frp和一鍵包的小伙伴。下一篇主要寫ntbind、IIS、Apache怎么和frp配合。




## 參考資料

[frp](fatedier/frp "frp")

[內(nèi)網(wǎng)穿透利器Frp一鍵安裝腳本及設(shè)置教程](【填坑完畢】內(nèi)網(wǎng)穿透利器Frp一鍵安裝腳本及設(shè)置教程 - 插件 - KoolShare - 源于玩家 服務(wù)玩家 "內(nèi)網(wǎng)穿透利器Frp一鍵安裝腳本及設(shè)置教程")

[frp中文文檔](fatedier/frp "frp中文文檔")

感謝以上作者和貢獻(xiàn)者。

同步博客:frp和nginx內(nèi)網(wǎng)服務(wù)器建站(上) - 黑白的自留地

關(guān)鍵詞:服務(wù)

74
73
25
news

版權(quán)所有? 億企邦 1997-2025 保留一切法律許可權(quán)利。

為了最佳展示效果,本站不支持IE9及以下版本的瀏覽器,建議您使用谷歌Chrome瀏覽器。 點(diǎn)擊下載Chrome瀏覽器
關(guān)閉