用開源frp高性能反向代理軟體實現內網穿透方案

2020-12-16 AIIT智慧未來

用開源frp高性能反向代理軟體實現內網穿透方案

做IT運維網絡的小夥伴都知道,要實現對外提供服務必須有公網IP才行。一般區域網訪問網際網路都是動態IP,要實現對外提供服務需要動態域名解析並在區域網主機做埠轉發。

那為什麼要做內網穿透呢?其實做內網穿透的應用場景是蠻多的,好處也是蠻多的,特別是對做IT運維的朋友,難免遇到大晚上下班了,公司項目或什麼的有點問題需要遠程維護。當然有時在外面需要查下家裡電腦資料,或想把閒置電腦做個WEB網站應用,甚至可以通過家裡監控照看老人、小孩和你家的寵物呢。

有關這方面的軟體網上不是沒有,隨便下載的涉及安全問題敢用嗎?就算是商業的軟體、關鍵是花錢,還不是100%放心吧。開源的項目,我們懂技術的小夥伴就不用說了,源碼在手在自己伺服器上放心、關鍵是穩定好用不花錢哦!

好,我們能看下frp是怎麼實現的吧。Frp可以支持http、https、tcp、udp等協議類型,還能根據域名做路由轉發。簡單的話,frp其實就是一個反向代理應用,是一個數據傳輸的中轉站,即網際網路frp伺服器內網設備。 我們來看下frp的架構:

通過上面的介紹,我們知道frp軟體有兩個端,一個在公網的服務端、一個在內網的客戶端。源碼和二進位包在github上都可以下載到。作者測試用的是下面的版本:

我們再進去看下二進位包有什麼文件:

很簡單,分為兩部分:frps開頭是服務端、frpc開頭的是客戶端,並包括各自的配置樣例文件。另外,systemd是啟動關閉服務用的。

首先,我們來配置一下服務端。

1、我們把frpc.ini 複製一份到etc下,cp frpc.ini /etc/frp/frpc.ini 打開編輯配置文件 vim /etc/frp/frpc.ini 加上自己需要的配置(如不清楚,可以參考官網的完整配置示例frpc_full.ini),如下圖所示:

官網默認只綁定了一個7000埠提供服務。這裡,我配置了管理面板,可以通過web界面訪問查看各服務狀態的,打馬賽克的是密碼哈。

2、進入剛上面目錄的systemd 把 frps.service 複製到 /usr/lib/systemd/system 此目錄,

還有把frps程序複製到 /usr/bin下面。這樣就不用手動通過配置文件啟動應用了。

我們看下frps.service服務的內容吧。

紅色箭頭的這行是通過指定配置文件啟動應用的。下面一行應用服務中斷自動重啟的屬性設置。好了,我們可以啟動服務端了systemctl start frps.service 。再執行systemctl status frps.service 如下服務啟動成功,埠處於監聽狀態,需要開機啟動運行systemctl enable frps.service。

記得系統防火牆和雲安全策略要放行相應的埠的哦,不然是無法連接的。

剛上面我們是配置了web管理面板的,現在我們登錄web界面看下。

這是overview總覽圖,啟用的服務埠各狀態都比較清楚。點開proxies再看:

還沒有任何數據,我們還沒配置客戶端嘛。配置好後客戶端就會上線的。

服務端配置好了,我們再來配置客戶端

剛才上面下載的軟體是linux端的,frp支持多平臺終端。Windows做客戶端當然下windows版本了。

我們把軟體解壓放到c盤frp目錄下:

編輯frpc.ini ,我們來做一個web測試一下。加入如下配置項:

到這一步客戶端就可以通過命令行啟動了,常駐服務等下介紹哈,我們先啟動看一下。

是的,已經啟動成功。注意windows防火牆或什麼殺毒軟體的也要把相應程序和埠放行。

再看管理面板上的服務:

看到了吧,status 也處於online狀態了。好了,在本地啟動web伺服器並新建一個測試站點看看:

本地我用的是phpenv集成環境,監聽的是888埠,跟配置的埠一樣。服務端的http埠也是888,埠都可以自定義的。

打馬賽克的是我的真實域名,訪問效果達到了。但這裡要看一個cmd命令窗口,我們把frp加到系統服務,並開機啟動。這裡需要在github下載winsw開源軟體註冊windows系統服務的。下載好後把winsw.exe放在frp的同級目錄並且編寫一個xml配置文件,內容如下:

<service><id>frp</id> <name>frp這裡是服務的名稱</name> <description>這裡是服務的介紹,隨便寫</description> <executable>frpc</executable>這裡是運行的軟體名 <arguments>-c frpc.ini</arguments>這裡是運行的軟體配置文件 <onfailure action=」restart」 delay=」60 sec」/> <onfailure action=」restart」 delay=」120 sec」/> <logmode>reset</logmode></service>

然後以管理員啟動cmd命令窗口,cd到frp目錄,執行兩條命令winsw install和winsw start就行了。如果要卸載先執行winsw stop再執行winsw uninstall。

這樣就大功告成了,出門忘掉帶電腦沒關係,開心的去浪吧!有事可以遠程回家了。

相關焦點

  • FRP內網穿透與遠程桌面——遠程控制與遠程工作
    SPICE 是一個開源協議,RDP 的客戶端是開源的但是服務端不開源。至於那些抓屏幕的遠程控制軟體,比如十幾年前很有名氣的 PCAnywhere,就不提了吧,畢竟現在已經是雲計算、虛擬化技術大行其道的時候了。
  • 騰訊雲主機上部署FRP+Teamviewer穿透內網進行遠程運維
    本文轉載自【微信公眾號:WalkingCloud,ID:WalkingCloud2018】,經微信公眾號授權轉載,如需轉載與原文作者聯繫一、frp 介紹frp 是一個專注於內網穿透的高性能的反向代理應用,支持 TCP、UDP、HTTP、HTTPS 等多種協議
  • 利用FRP實現內網映射和外網Shell
    前面幾期的文章中說過,如何利用花生殼等工具搭建內網映射。實現外網訪問我們的內網,但是由於花生殼等軟體不穩定而且慢最重要的是還有點小貴。由於筆者運維著幾天伺服器,就想著利用frp搭建內網穿透。dir=frp/frp-v0.32.1這裡去下載下載後,上傳到伺服器並解壓,或者利用下面方式解決。
  • 免費FRP內網穿透平臺——Sakura frp
    目前由於FRP技術日益成熟,網絡上湧現的FRP內網穿透服務平臺中越來越多,今天要給大家推薦的是SAKURA FRP;Sakura frp是由羽川早苗(博客:moe.do) 開發、維護,為廣大沒公網的用戶提供內網穿透服務。
  • frp內網穿透服務搭建
    伺服器(以centos為例)下載frpwget https://github.com/fatedier/frp/releases/download/v0.32.1/frp_0.32.1_linux_amd64.tar.gz
  • 內網穿透FRP+IP代理SS實現遠程連接無公網的電腦並使用代理IP入網
    前提條件:無公網IP的PC(windows,目標機)、有公網IP的伺服器(中繼)、另一臺PC(windows,當前操作機)本人使用情況:目標機為學校實驗室中的電腦win10、伺服器為華為雲ubuntu系統、操作機為筆記本電腦win10使用到的技術:內網穿透
  • FRP指定訪問者:安全地暴露內網服務
    之前的教程介紹的frp內網穿透都是用tcp模式,但是tcp模式是直接把埠映射到公網IP上,很容易被掃描爆破,還是存在一定的風險。我們可以使用frp提供的stcp模式來避免公開暴露埠,要求訪問者運行一個frpc作為身份認證和流量轉發,把訪問者的本地埠綁定到內網frpc服務上。不再公開映射內網frpc埠。
  • 教你用 FRP 自建 Teamview 連接避開商業檢測
    teamview是一個專業的第三方遠程桌面操控軟體,有十餘年的經營歷史,對個人用戶免費,軟體質量和體驗都比較高。自從被蘇州某公司代理後,國內用戶使用teamview被商業檢測的頻率愈來愈高,儘管可以發郵件申請解封,但費時費力還是有申請失敗的情況。
  • 自建NAS 沒有公網IP內網穿透如何實現
    1、首先我們先要在NAS設備上打開FTP服務2、然後我們需要一款叫做花生殼的內網穿透軟體(官網:hsk.oray.com)。用於將NAS映射到外網上(也是網際網路中)。3、 安裝登錄後點擊內網穿透,會跳轉至網頁管理頁面,點擊界面"新增映射"按鈕;4、 接著講NAS的內網IP位址、埠號按照提示填入。5、 點擊確定後會生成一個外網訪問地址用於訪問NAS的。
  • 可能是目前最具性價比的內網穿透方案,蒲公英X1上手體驗
    自從入坑群暉NAS以來,如何輕鬆愉快地實現"內網穿透"就成了讓我頭疼的難題。目前,實現家庭網絡穿透的方法比較多,主流的有公網IP、自建VPS等,不過,現在公網IP只給企業用戶,自建VPS有較高的費用和技術門檻都比較高,所以想要低成本且穩定的內網穿透體驗實屬不易。
  • AnyDesk 使用 FRP 自建遠程桌面連接
    伺服器端 伺服器端配置照舊,可以參考之前的文章:用FRP做內網穿透使用遠程桌面連接家裡的windows電腦 修改frps.ini文件,然後保存退出: 內網客戶端配置 Anydesk安全設置 Anydesk可以自定義埠,我們修改一個非默認的埠,然後設置無人值守密碼
  • 一款免費好用的內網穿透軟體 功能強大又好用!
    安裝客戶端目前為止客戶端主要分為 window 版和 java 版, 下載地址可以在官網下載網雲穿官網下載window版下載解壓之後,直接點擊"網雲穿內網穿透.exe"啟動, 可以直接訪問 i.xiaomy.net進入控制臺 (手機號即帳號)進入控制臺註冊頁面, 點擊註冊用戶按照要求填寫信息, 直接點擊註冊即可註冊之後, 我們就可以用該手機號和密碼登錄客戶端和控制臺了
  • 無需公網IP遠程辦公,花生殼內網穿透免費遠程訪問OA系統
    花生殼內網穿透免費遠程訪問OA系統實際上,以上的難題通過花生殼5.2軟體以埠映射的方式即可解決,藉助花生殼的動態域名解析服務將動態公網IP與域名進行實時綁定,最終訪問該域名即可免費遠程訪問OA系統。操作步驟以78OA系統為例,首先在區域網下部署OA系統,設置好電腦端IP位址以及埠號,確認能夠正常訪問。
  • 內網穿透神器花生殼盒子3步搞定
    那時候看沒少給G胖掏錢包,現在倒是可以在3DM下載免費版了,但是聯機起來卻特別麻煩,如果不在同一區域網,就需要搭配對戰平臺或者外掛…… 後來有老鐵推薦了一款內網穿透神器
  • 無需公網IP,自帶埠映射,花生殼低成本實現外網訪問內網ERP!
    自上世紀90年代被提出以來,ERP作為協助企業做好內控與提高管理效率的關鍵,被各行各業引進使用,如今的ERP已然發展為企業信息管理軟體的統稱。根據企業所在行業的不同,可分為製造業ERP、物流業ERP、電商(及跨境電商)ERP以及眾多細分領域的功能類ERP等等。
  • SourceForge.NET 使用的開源軟體
    這篇文章介紹了SourceForge.NET 使用的開源軟體,各位不妨看一看
  • 媒體評熱門開源軟體Top100 17173技術大俠上榜
    做開源中國六年有餘,這六年時間國內的開源蓬勃發展,從一開始的使用到貢獻,到推出自己很多的開源軟體,而且還有很多軟體被國外的認可。中國是開源不可忽視的力量。而我們這個榜單也是從這些國人開發、主要參與開發或者基於國外開源軟體進行改進並形成獨立版本的軟體中,根據該軟體的訪問、收藏、下載等多個角度, 從而得出前 100 名最受歡迎的開源軟體。
  • 無需公網IP,自帶埠映射,簡單3步自建免費開源雲百科
    今天使用開源的個人網站知識庫管理工具DokuWiki和建站集成軟體包XAMPP,為大家演示如何搭建個人專屬雲百科。現在一個專屬自己的百科知識庫已經搭建完成,但只能在本地訪問,如果想隨時隨地遠程外網訪問,就可以用內網穿透工具——花生殼盒子。
  • 用開源軟體建立一個經濟型SAN
    Simon Brock和Ian Wrigley使用現成的開源軟體建立了一個使用iSCSI設備的SAN。 近年來,存儲區域網絡或SAN受到許多人關注,但只有極少數人知道它究竟是什麼,為什麼想要建立一個SAN,一個最主要的原因是當你坐下來仔細看一看它的造價時,事情就明白了,本文會一一為你解答什麼是SAN,你為什麼想要建立一個,以及如何使用開源軟體建立一個經濟型的SAN。
  • 沒有公網ip如何對外發布內網web站點
    ,顧名思義,首先需要把內網伺服器有個公網ip才可以實現,要麼就需要使用內網穿透工具把內網伺服器變成外網伺服器,這樣才可以實現訪問。       很多程式設計師都會遇到以下的問題:假如你剛寫完一個內部測試Web站點,對於新功能希望展示給客戶看一下,而客戶又在公網時,而你在內網(未部署)時,就會產生這個沒有辦法展示只能截圖給客戶看的尷尬問題。如果你需要給客戶看網頁,要麼你只能將新加的功能上傳到公網伺服器上,要麼你就截圖給客戶看。