沒有公網(wǎng)ip/ipv6,怎么訪問內(nèi)網(wǎng)nas——內(nèi)網(wǎng)穿透之FRP

  • 13,511

寫在前面

上次ipv6+阿里云DDNS發(fā)出后發(fā)現(xiàn),大家貌似都很關(guān)注訪問內(nèi)網(wǎng)nas的問題,但是有的朋友即沒有內(nèi)網(wǎng)ip也沒有ipv6還有辦法訪問內(nèi)部的NAS設(shè)備么?(這里還是要插播一句,你如果只是用那么群暉的幾大件,ds video、audio、drive這些,其實(shí)quick connect就已經(jīng)夠用了,穩(wěn)定性和速度都能滿足要求了),方法其實(shí)還是有的,比如花生殼一類的內(nèi)網(wǎng)傳透服務(wù)商,但這些都是收費(fèi)的。這次給大家介紹如何自己搭建內(nèi)容穿透服務(wù)器,這次用到的工具是FRP(https://github.com/fatedier/frp),當(dāng)然也有一定的門檻,就是必須要有可連公網(wǎng)的設(shè)備,我這次用到的是一臺阿里云ECS,最最低配版,但價(jià)格也不便宜,好像也接近1k/年,當(dāng)然這個(gè)本身就是單位用來做服務(wù)器的,算是白嫖,如果你也正好有臺這樣的設(shè)備,推薦使用這個(gè)方案。當(dāng)然如果你是學(xué)生黨,也可以用學(xué)生價(jià)入一臺ECS,這樣你就擁有一臺有固定公網(wǎng)ip的虛擬主機(jī)了,雖然每個(gè)月也要花錢,但肯定比花生殼能做的事情多多了。網(wǎng)上找了一下,價(jià)格真的好好好便宜呀,當(dāng)然這個(gè)是網(wǎng)圖,不是實(shí)時(shí)價(jià)格,但應(yīng)該也差不多這個(gè)價(jià)了。

沒有公網(wǎng)ip/ipv6,怎么訪問內(nèi)網(wǎng)nas——內(nèi)網(wǎng)穿透之FRP

 

下面正式開始配置FRP服務(wù)器,F(xiàn)RP服務(wù)的配置分為服務(wù)器端和客戶端兩步。服務(wù)器端就是你擁有公網(wǎng)ip的服務(wù)器,客戶端就是需要做穿透的nas。服務(wù)器的環(huán)境是linux,如果你是window系統(tǒng),配置文件的設(shè)置是一樣的。

1)FRP下載

FRP可以直接在github主頁上下載,進(jìn)入realease頁面(https://github.com/fatedier/frp/releases),選擇跟自己系統(tǒng)匹配的文件下載就行了。下載后解壓,會(huì)發(fā)現(xiàn)有frpc, frps, frpc.ini, frps.ini 及其它幾個(gè)文件(如果是windows版,會(huì)看到frpc.exe, frps.exe, frpc.ini, frps.ini )。這里frps和frps.ini分別是客戶端的程序和配制文件;frpc和frpc.ini分別是客戶端的程序和配制文件。分別將frps文件及配套的配置文件拷貝到服務(wù)器上,將frpc文件及配套的配置文件拷貝到客戶機(jī)上。第一步就完成。

2)服務(wù)器端配置

定位到frps所在文件夾,配置過程主要在ini文件中進(jìn)行,如果是linux的服務(wù)器端,可以直接用vi命令來修改,如果是windows端用記事本一類的文本編輯器就可以了。配置文件設(shè)置如下:


bind_port = 6000 #服務(wù)端口
vhost_http_port = 5000 #web端口
vhost_https_port = 9000 #https web端口
subdomain_host = www.nideyuming.cn #域名
custom_404_page = /root/frp_0.33.0_linux_amd64.tar.gz/404.html
dashboard_port = 7500 #后臺端口 admin adminadmin
dashboard_user = admin #后臺用戶
dashboard_pwd = admin #后臺密碼

 

修改后的結(jié)果如圖:
沒有公網(wǎng)ip/ipv6,怎么訪問內(nèi)網(wǎng)nas——內(nèi)網(wǎng)穿透之FRP
這里面幾個(gè)端口號都可以根據(jù)需要修改,但注意一定不要跟其它端口沖突。主要包括服務(wù)器端口設(shè)置(我設(shè)置的6000),web訪問端口(這里設(shè)置的5000,因?yàn)閚as登錄一般都是5000方便記憶),https web訪問接口,還有后臺端口,這個(gè)不設(shè)置也能用,但還是建議設(shè)置一下,這個(gè)可以查看frp服務(wù)設(shè)置與連接情況。其實(shí)還可以設(shè)置token進(jìn)一步增加安全性,這里就不設(shè)置了,有需要的可以自行去查找相關(guān)教程。
另外還要注意看一下,這里用到的端口需要到防火墻打開,如果使用的是阿里云的服務(wù)器,則直接到安全組去設(shè)置。這里需要開放剛剛設(shè)置里用到的端口。同時(shí)還需要把ssh訪問接口也打開,后面會(huì)用到。因?yàn)?0端口已被服務(wù)器的ssh占用,這里可設(shè)置為220。
沒有公網(wǎng)ip/ipv6,怎么訪問內(nèi)網(wǎng)nas——內(nèi)網(wǎng)穿透之FRP 沒有公網(wǎng)ip/ipv6,怎么訪問內(nèi)網(wǎng)nas——內(nèi)網(wǎng)穿透之FRP

3)服務(wù)器端運(yùn)行

首先定位在frps所在目錄,使用如下命令運(yùn)行frp服務(wù)

nohup ./frps -c frps.ini &

這里采用的是后臺運(yùn)行的方式,運(yùn)行結(jié)果會(huì)顯示在nohup.out文件中,使用如下指令查看運(yùn)行狀態(tài)

tail -f nohup.out

由于我的服務(wù)器上已經(jīng)配置過了,再次配置會(huì)提示沖突,這里就不截圖了。

 

4)客戶端配置

下面要配置客戶端,同樣首先定位到frpc所在文件夾,修改frpc.ini文件


[common]
server_addr = xx.xx.xx.xx #服務(wù)器ip地址
server_port = 6000?#前面設(shè)置的服務(wù)器端口
[ssh]? #首先配置ssh
type = tcp
local_ip = 192.168.1.69? #本地nas的ip地址
local_port = 22? #ssh使用的本地端口
remote_port = 220? #遠(yuǎn)程端口,注意這個(gè)端口必須在防火墻開放
#公網(wǎng)訪問內(nèi)部web服務(wù)器以http方式
[nas1] #nas1的dsm管理頁面配置
type = http
local_port = 5000
custom_domains = nas1.nideyuming.cn #用nas1.nideyuming.cn:5000 訪問DSM
[qb1] #qBittorrent
type = http
local_port = 9000 #qBittorrent本地端口
custom_domains =qb1.nideyuming.cn #用qb1.nideyuming.cn:5000 訪問
[tr1] #Transmission
type = http
local_port = 9001 #Transmission本地端口
custom_domains =tr1.nideyuming.cn #用tr1.nideyuming.cn:5000 訪問
[jf1] #jellyfin
type = http
local_port = 9002 #jellyfin本地端口
custom_domains = jf1.nideyuming.cn #用jf1.nideyuming.cn:5000 訪問

上面的配置文件設(shè)置了ssh登錄、dsm管理、qBittorrent、Transmission和jellyfin的內(nèi)網(wǎng)穿透,可以直接抄去用,當(dāng)然端口要設(shè)置成你正在使用的端口,另外域名也需要修改??梢钥吹竭@里qb, tr, jf都是使用的服務(wù)器的5000端口,而服務(wù)器是通過域名來區(qū)分穿透到哪個(gè)客戶端端口的。所以這里需要同時(shí)設(shè)置幾個(gè)二級域名的解析,這個(gè)設(shè)置不復(fù)雜,截個(gè)圖吧。

沒有公網(wǎng)ip/ipv6,怎么訪問內(nèi)網(wǎng)nas——內(nèi)網(wǎng)穿透之FRP

5)客戶端運(yùn)行

首先定位在frpc所在目錄,使用如下命令運(yùn)行frp服務(wù)

nohup ./frpc -c frpc.ini &

運(yùn)行結(jié)果同樣會(huì)顯示在nohup.out文件中,使用如下指令查看運(yùn)行狀態(tài)

tail -f nohup.out

同樣由于我已經(jīng)配置過了,會(huì)提示沖突

 

現(xiàn)在就可以通過二級域名加5000端口來訪問相關(guān)網(wǎng)頁了,測試一下訪問dsm和jellyfin的訪問效果

沒有公網(wǎng)ip/ipv6,怎么訪問內(nèi)網(wǎng)nas——內(nèi)網(wǎng)穿透之FRP 沒有公網(wǎng)ip/ipv6,怎么訪問內(nèi)網(wǎng)nas——內(nèi)網(wǎng)穿透之FRP

訪問沒有問題,操作也還算流暢,但試了下通過frp看jellyfin上的電影,由于是丐版的1M帶寬服務(wù)器,效果不太理想,因?yàn)閒rp是需要通過服務(wù)器來轉(zhuǎn)發(fā)數(shù)據(jù)的(frp也提供了一個(gè)p2p的穿透模式,也去試用了,效果不理想),所以還是建議主要用于ssh,dsm等不需要大量數(shù)據(jù)交換的穿透。

6)frps后臺

再看一下frps的后臺運(yùn)行情況,在地址框中輸入www.nideyuming.cn:7500,跳出賬號密碼窗口,輸入之前設(shè)置的admin,就可以進(jìn)入后臺了。TCP里顯示著是ssh的穿透代理,我這邊有兩臺設(shè)備,設(shè)置了兩個(gè),分別采用220和222端口;Http里顯示的是web端的代理,可以看到這里都是5000端口。

沒有公網(wǎng)ip/ipv6,怎么訪問內(nèi)網(wǎng)nas——內(nèi)網(wǎng)穿透之FRP 沒有公網(wǎng)ip/ipv6,怎么訪問內(nèi)網(wǎng)nas——內(nèi)網(wǎng)穿透之FRP

7)結(jié)語

從流程看其實(shí)并不復(fù)雜,修改一下配置文件,直接運(yùn)行就可以了。修改配置文件的時(shí)候需要注意端口號不能填錯(cuò),也不要混淆本地端口和服務(wù)器端口。最后的最后,不要忘記在防火墻中開放相關(guān)端口。

ps:如果有多臺nas都想穿透怎么辦?參照上面客戶端的設(shè)置,但注意[nas1]里的內(nèi)容需要修改成[nas2],只要不重復(fù)就行。

微信掃一掃關(guān)注此公眾號, 獲取PT站注冊地址! weinxin

wylb521
  • 本文由 發(fā)表于 2020年9月27日 16:20:22
從此不再買硬盤!CloudDrive2掛載115網(wǎng)盤、阿里云盤、百度網(wǎng)盤(群暉docker版) nas使用教程

從此不再買硬盤!CloudDrive2掛載115網(wǎng)盤、阿里云盤、百度網(wǎng)盤(群暉docker版)

有沒有想過網(wǎng)盤也可以變成類似本地硬盤一樣方便訪問?有一個(gè)軟件就可以實(shí)現(xiàn)這個(gè)目的,就是CloudDrive2。它可以把115、阿里云、百度等網(wǎng)盤掛載到你的電腦或者群暉NAS上,讓它變成和本地盤一樣,可以...
評論  0  訪客  0
匿名

發(fā)表評論

匿名網(wǎng)友 填寫信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

確定