首先你得有一個公網服務器,有了它你就可以借助它,將自己電腦進行配置內網穿透,讓自己內網電腦也可以異地輕松訪問。網上教程較多,特此記錄我自己的配置,避免迷路,我這里只記錄我自己云服務小白,在搭建內網穿透過程中遇到的一些問題及解決方法。
別人寫的都比我詳細,另可參考:
FRP內網穿透工具:從基礎配置到高級功能的完整指南
首先要理解frp內網穿透的原理是啥,它就是服務器和客戶端模式,服務器端只要用服務器程序frps(frp server的縮寫)運行服務器配置(frps.ini或frps.toml,不管后綴如何,本質就是一個規范格式的txt文件)即可,客戶端也只要用客戶端程序frpc(frp client的縮寫)運行客戶端配置(frpc.ini或frpc.toml,不管后綴如何,本質就是一個規范格式的txt文件)即可。
所以一般下載frp壓縮包后有主要有四個文件,分別是frps.exe 、frps.ini/frps.toml 、frpc.exe 、frpc.ini/frpc.toml,根據服務器端或者客戶端實質使用對應的程序和對應的配置就行了。下面講怎么配置
服務端配置
所謂服務端就是你擁有公網IP的那個服務器,我的配置
bindPort = 7000(該端口必須在防火墻上進行開通)
auth.method = "token"(默認即可)
auth.token = "AAAA"(自定義,可以復雜度高一些,內網穿透很重要的東西,記住它)webServer.addr = "0.0.0.0"(默認即可)
webServer.port = 7555(該端口必須在防火墻上進行開通)
webServer.user = "zhangSan"(frp 網頁監控平臺的登錄名)
webServer.password = "BBBB"(frp 網頁監控平臺的密碼)
前三行配置特別重要:
第一個為端口號,這個端口好后面要與客戶端配置一致;
第二行配置默認;
第三行特別注意auth.token的配置,該配置也要與客戶端配置信息一致;
下面的webServer的一系列配置為監控面板配置,配置好后可以通過網頁進行外部訪問你frp工作情況,登錄后如下:
配置好后執行命令運行服務即可
./frps -c frps.ini
注意:如果服務端運行后,不能登錄到監控界面,就可以聯系一下云服務的客服,要不然后面客戶端配置就沒啥意義了,肯定失敗。
我當時就是這個情況,第一次使用云服務器,心里很慌,以為是自己問題,監控界面一直彈不出來,聯系阿里云客服后,他讓怎么操作了一下,該監控界面就可以顯示了。后面操作也都很簡單,沒啥問題了。
客戶端配置
所謂客戶端就是你想遠程訪問,苦于沒有外網,對于遠程桌面還好,但是有時候你想在內網機器上部署一個外網可以訪問的網頁,或者用git、svn做版本控制,就必須需要一個公網IP了,下面以內網機器部署一個svn的服務端為例,進行配置
[common]
server_addr = 你公網IP地址
server_port = 7000(注意與服務端配置一致,該端口必須在防火墻上進行開通)
token = "AAAA"(注意與服務器端配置一致)[svn](服務的名稱,自定義,可以是svn、 ssh、遠程桌面服務等,注意:如果多個客戶端配置時,這個名稱不能起相同名稱,否則有沖突造成異常)
type = tcp (默認吧)
local_ip = 127.0.0.1(這個IP就是本機,默認即可)
local_port = 3690(SVN客戶端默認的本地端口,本質就是內網IP+該端口可以訪問svn服務,如果設置有變化可以進行相應更改)
remote_port = 8888(需要將本地端口映射到外網的端口,本質就是外網IP+該端口可以通過外網訪問svn服務,該端口必須在防火墻上進行開通)
配置好后執行命令運行服務即可
frpc -c frpc.ini
以上,只是粗略記載。 輝 2025.3.14
如果有多個客戶端進行內網穿透時,服務端配置不用改動,只用改動客戶端的配置,除了端口不能相同外(端口也必須要在防火墻進行設置放開),第一個中括號的名稱也不能相同,否則會有沖突造成的異常。