單位的公網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 訪...