內網穿透 使用frp配置公網與內網伺服器

2022-07-11 04:15:12 字數 2689 閱讀 7307

單位的公網ip尚未申請,但專案需要上線進行測試。目前的狀態是在研究院內部可以通過連線wifi訪問專案**或介面,這稱之為內網訪問或區域網訪問,開發者一回家就沒辦法訪問了,為此,在開通公網ip之前我們先採用內網穿透允許外網訪問我們的專案。

所謂內網穿透,就是將內網某些介面,服務暴露到外網訪問。

需要內網穿透的場景原因如下:

由於你家庭,單位擁有多台裝置,這些裝置都需要上網,所以你把上一條中所述的公網ip在進行內網對映,通過路由器,閘道器裝置將網路分為多條線(有線,無線)分配到每一台要上網的裝置,這些裝置屬於同乙個內網,歸路由器管理,一般都是192.168.x.x。這樣的ip可以稱為內網ip,最後彙總到上一條中的公網ip(動態)上傳送。

問題:

採用內網穿透解決:

我們以frp這個穿透軟體為例,實現將我們單位的服務暴露到外網訪問,解決離開單位無法訪問專案服務的問題。

wget /download/v0.34.3/frp_0.34.3_linux_amd64.tar.gz

tar -xvf 包名

配置一下服務端,編輯frps.ini

[common]

bind_port = 7000

dashboard_port = 7500

# dashboard's username and password are both optional,if not set, default is admin.

dashboard_user = admin

dashboard_pwd = admin

第乙個是frp所使用的埠,用於公網內網通訊。

第二個是控制面板埠,可以通過訪問該**檢視frp執行狀態。

測試啟動frp服務:

./frps -c ./frps.ini
注意,這裡啟動的是frps,意思是frp服務端,另乙個frpc是客戶端,下面會講到

開機啟動frp

修改sysytemd下的frps.service

[unit]

description=frp server service

after=network.target

[service]

restart=on-failure

restartsec=5s

execstart=/root/frp/frps -c /root/frp/frps.ini

[install]

wantedby=multi-user.target

這裡,由於我的frp程式目錄名已經改為frp並且放在了root使用者目錄下,這裡應該把execstart改為你frp所在的位址即可。

cp ./systemd/frps.service /etc/systemd/system/
啟動服務:

#重新整理服務列表:

systemctl daemon-reload

#設定開機自啟

systemctl enable frps

#關閉開機自啟

systemctl disable frps

#啟動服務

systemctl start frps

#停止服務

systemctl stop frps

至此公網上的服務端已經配置完畢,並且加入開機啟動。

同理,內網伺服器我們需要配置frpc.ini:

frpc中c表示client

# .....這裡,local_ip就是本地ip,localhost一般不需要改動,local_port是區域網內這台伺服器暴露的埠,這裡舉例80,remote_port是訪問公網伺服器的埠,這裡舉例8000。意思是,當你訪問10.220.23.66:8000的時候,會對映到內網192.168.x.x:80埠。所以你需要把服務跑在內網伺服器的80埠,外網就可以通過穿透訪問到了。

其他埠也是同樣道理,可以配置多個ssh來對映多個服務到外網。

配置開機啟動:

同理,修改systemd下的frpc.service

[unit]

description=frp client service

after=network.target

wants=network.target

[service]

restart=on-failure

restartsec=5s

[install]

wantedby=multi-user.target

複製到系統systemd下:

cp ./systemd/frpc.service /etc/systemd/system/
完畢!這樣離開了區域網依然可以訪問。

frp內網穿透配置

1.後台執行frp服務端 服務端 nohup frps c frps.ini dev null 2 1 客戶端 nohup frpc c frpc.ini dev null 2 1 說明 dev null 2 1 表示丟棄。2.linux下新增frp內網穿透服務端工具開機啟動 在 etc rc.lo...

frp內網穿透配置

阿里雲伺服器一台,已安裝centos,git,go語言,nginx埠占用了80,開通了https占用了443 已備案網域名稱一枚,已解析二級網域名稱 demo.shanliwawa.top 本地客戶端win10系統,執行php環境,埠80,伺服器apache php,注意nginx會出錯解析不了.國...

FRP內網穿透配置

本次測試使用windows版本 frp 0.35.1 windows 386.zip 配置檔案 frps.ini common bind port 7000 與客戶端繫結的進行通訊的埠 6088 訪問客戶端web服務自定義的埠號 443 訪問客戶端web服務自定義的埠號 token 123456 訪...