發(fā)布時(shí)間:2024-01-24閱讀(15)
電腦A:在家里,運(yùn)行 Windows10 專業(yè)版系統(tǒng)電腦B:在辦公室,運(yùn)行 深度Linux系統(tǒng)電腦C:windows7系統(tǒng),偶爾使用,接下來(lái)我們就來(lái)聊聊關(guān)于frp內(nèi)網(wǎng)穿透配置?以下內(nèi)容大家不妨參考一二希望能幫到您!

frp內(nèi)網(wǎng)穿透配置
電腦A:在家里,運(yùn)行 Windows10 專業(yè)版系統(tǒng)。電腦B:在辦公室,運(yùn)行 深度Linux系統(tǒng)。電腦C:windows7系統(tǒng),偶爾使用。
假如,電腦A 運(yùn)行著一套軟件開(kāi)發(fā)環(huán)境,有時(shí)需要在電腦B或電腦C中進(jìn)行調(diào)試,或者需要使用電腦A中的某些 Windows 軟件來(lái)完成工作。也就是電腦 A 提供遠(yuǎn)程桌面服務(wù),將電腦B和電腦C當(dāng)做終端,使用電腦 B 或電腦 C 來(lái)操作 電腦 A。反之,有時(shí)也同樣需要使用電腦 A 來(lái)操作電腦 B中的某些辦公系統(tǒng)。
1、這樣的需求不一定非要使用遠(yuǎn)程桌面吧?
用筆記本,安裝雙系統(tǒng),走哪兒帶哪兒,一樣解決問(wèn)題啊。額......,好吧,這個(gè)解決辦法不是本文要討論的,我說(shuō)的就是遠(yuǎn)程連接電腦和遠(yuǎn)程工作的問(wèn)題。
2、使用向日葵或 TeamViewer 類軟件
這類軟件使用方法比較簡(jiǎn)單,并且都有免費(fèi)版本,本人使用的均是免費(fèi)版本,主觀感覺(jué)向日葵速度延遲較大,如果要低延遲那就需要付費(fèi),TeamViewer 的速度已經(jīng)基本能滿足遠(yuǎn)程辦公的需要。
向日葵需要在電腦 A 中安裝服務(wù)端,注冊(cè)賬號(hào)并登錄,在電腦 B 或電腦 C 中安裝控制端,用同樣的賬號(hào)登錄,就能看到電腦 A 已經(jīng)是在線狀態(tài),即可發(fā)起遠(yuǎn)程控制。
Teamviewer 在電腦 A 和電腦 B 中同時(shí)安裝,運(yùn)行TeamViewer后會(huì)顯示ID和密碼,電腦 B 輸入電腦 A 中的 ID 進(jìn)行連接,輸入密碼即可實(shí)現(xiàn)遠(yuǎn)程控制。此密碼會(huì)自動(dòng)更新,但是可以自己指定一個(gè)固定密碼。
3、 VNC類軟件
VNC(Virtual Network Computing) 是一個(gè)開(kāi)源、免費(fèi)的,基于 RFB(Remote Frame Buffer)協(xié)議進(jìn)行通信并完成桌面?zhèn)鬏旓@示和操作,RFB (遠(yuǎn)程幀緩存) 是一個(gè)遠(yuǎn)程圖形用戶的簡(jiǎn)單協(xié)議,它可以應(yīng)用于所有的窗口系統(tǒng):Linux桌面、Windows和Mac系統(tǒng)。
Linux上的VNC服務(wù)端,比較常用的就是 tigervn c和 x11vnc,Linux 上的 VNC 客戶端比較多,例如,Remmina 同時(shí)支持 RDP 和 VNC 協(xié)議。
在Windows上支持VNC協(xié)議的軟件,常用的有RealVNC(收費(fèi))、UltraVNC(免費(fèi))和TightVNC(免費(fèi)),它們同時(shí)既是服務(wù)端又是客戶端。
4、遠(yuǎn)程桌面服務(wù)
在桌面虛擬化技術(shù)中,當(dāng)前主流的桌面?zhèn)鬏攨f(xié)議有 ICA、PCoIP、RDP、SPICE 四種,也就是通常所說(shuō)的桌面云。Windows 10 系統(tǒng)中的遠(yuǎn)程桌面,使用的就是 RDP(Remote Desktop Protocol),即遠(yuǎn)程桌面協(xié)議。
區(qū)別:VNC是服務(wù)端把桌面窗口渲染完成后將圖像直接傳輸給客戶端,客戶端只是對(duì)圖像進(jìn)行解碼顯示;而 RDP 和 SPICE 相當(dāng)于將桌面窗口數(shù)據(jù)傳輸給客戶端,再由客戶端生成圖形和圖像顯示,更加適合虛擬桌面使用。SPICE 是一個(gè)開(kāi)源協(xié)議,RDP 的客戶端是開(kāi)源的但是服務(wù)端不開(kāi)源。
至于那些抓屏幕的遠(yuǎn)程控制軟件,比如十幾年前很有名氣的 PCAnywhere,就不提了吧,畢竟現(xiàn)在已經(jīng)是云計(jì)算、虛擬化技術(shù)大行其道的時(shí)候了。
5、華為云電腦
華為云電腦估計(jì)使用的的是華為自己的HDP協(xié)議,HDP源自ICA,不過(guò)華為云電腦目前好像只支持華為手機(jī)吧,沒(méi)有PC系統(tǒng)的客戶端,并且云電腦可選配置少,不能自定義,但是其中有一款是游戲款,可見(jiàn)已經(jīng)整合了顯卡虛擬化技術(shù),應(yīng)該類似于微軟的RemoteFX。本人簡(jiǎn)單試用了一下,效果不錯(cuò),這個(gè)或許是以后的發(fā)展方向,桌面虛擬化走向大眾用戶,以后一般情況下就不用再買電腦了,一部手機(jī),或者一臺(tái)瘦客戶終端(機(jī)頂盒),一臺(tái)顯示設(shè)備(顯示器、電視、投影),再配合寬帶或5G網(wǎng)絡(luò),就可以連接云電腦來(lái)完成自己的工作。
6、花生殼、神卓互聯(lián)等內(nèi)網(wǎng)穿透類服務(wù)
這些內(nèi)網(wǎng)穿透工具使用比較簡(jiǎn)單,都是根據(jù)使用的帶寬收費(fèi)的。假如自己已經(jīng)有一臺(tái)公網(wǎng)訪問(wèn)的服務(wù)器,本著理工男"萬(wàn)事不求人"、“自己動(dòng)手豐衣足食”的想法,用這臺(tái)公網(wǎng)服務(wù)器做為代理,同樣可以實(shí)現(xiàn)內(nèi)網(wǎng)穿透,和花生殼這類工具原理基本是相似的。
1、電腦B遠(yuǎn)程連接電腦A
電腦A是Windows10企業(yè)版,最方便的當(dāng)然是開(kāi)啟遠(yuǎn)程桌面服務(wù)(RDP)。但是前提條件是:如果使用RDP,就需要服務(wù)端電腦具有公網(wǎng)IP地址。
家里的電腦A,網(wǎng)絡(luò)使用電信100M,上行4M,雖然有公網(wǎng)IP地址,但是需要用超級(jí)管理員(一般是telecomadmin)登錄天翼光貓,做端口映射,才能用使用公網(wǎng)IP地址連接到電腦A。另外,家用的電信寬帶公網(wǎng)IP地址是動(dòng)態(tài)變化的,需要使用路由器自帶的花生殼之類的服用來(lái)解決。也就是在沒(méi)有解決這些問(wèn)題之前,電腦A屬于內(nèi)網(wǎng),而無(wú)法暴露在公網(wǎng)中。
現(xiàn)在的問(wèn)題就是如何讓內(nèi)網(wǎng)電腦(電腦A)向外網(wǎng)用戶(電腦B)提供遠(yuǎn)程桌面、WEB等網(wǎng)絡(luò)服務(wù)?那就是使用一臺(tái)具有公網(wǎng)IP地址的服務(wù)器做為反向代理,實(shí)現(xiàn)內(nèi)網(wǎng)穿透。電腦A向反向代理服務(wù)器發(fā)送請(qǐng)求,接著反向代理向電腦B轉(zhuǎn)交請(qǐng)求,電腦B向代理服務(wù)器返回所請(qǐng)求的內(nèi)容,代理服務(wù)器將獲得的內(nèi)容返回給電腦A。正好,本人有一臺(tái)阿里云的服務(wù)器,可以滿足這個(gè)要求。
2、內(nèi)網(wǎng)穿透工具選擇:Frp
常見(jiàn)的內(nèi)網(wǎng)穿透的反向代理程序是 ngrok ,國(guó)內(nèi)有許多提供內(nèi)網(wǎng)穿透服務(wù)的平臺(tái)都是基于 ngrok 搭建的,但是 ngrok 配置略復(fù)雜。這里選擇 Frp ,因?yàn)榕渲煤?jiǎn)單,功能強(qiáng)大。
http://github.com/fatedier/frp 有詳細(xì)的使用文檔。
(圖3-1 Deepin 遠(yuǎn)程連接 Win10)
1、ssh 連接阿里云主機(jī)(centos 7)
2、下載:wget http://github.com/fatedier/frp/releases/download/v0.27.0/frp_0.27.0_linux_amd64.tar.gz
下載完成之后解壓:tar -zxvf frp_0.27.0_linux_amd64.tar.gz
解壓完成后重命名目錄:mv frp_0.27.0_linux_amd64 frp
進(jìn)入frp目錄文件夾:cd frp
FRP 默認(rèn)給出兩個(gè)服務(wù)端配置文件,一個(gè)是簡(jiǎn)版的 frps.ini,另一個(gè)是完整版本 frps_full.ini。
刪除客戶端相關(guān)的文件(frpc,frpc.ini,frpc_full.ini)
3、編輯 frps.ini :vim frps.ini
bind_port 為客戶端與服務(wù)端進(jìn)行通信的端口
Dashboard 通過(guò)瀏覽器查看 frp 的狀態(tài)以及代理統(tǒng)計(jì)信息展示。
[common]bind_port = 7000dashboard_port = 7500# dashboard 用戶名密碼,默認(rèn)都為 admindashboard_user = admindashboard_pwd = admin
4.1、設(shè)置開(kāi)機(jī)啟動(dòng)和后臺(tái)運(yùn)行
vi /etc/systemd/system/frps.service
[Unit]Description=frps daemonAfter=syslog.target network.targetWants=network.target[Service]Type=simpleExecStart=/home/frp/frps -c /home/frp/frps.iniRestart= alwaysRestartSec=1min[Install]WantedBy=multi-user.target
注意ExecStart中要配置成自己的路徑
然后啟動(dòng)frps:sudo systemctl start frps 打開(kāi)開(kāi)機(jī)自啟動(dòng):sudo systemctl enable frps
如果要重啟應(yīng)用:sudo systemctl restart frps 如果要停止應(yīng)用:sudo systemctl stop frps 如果要查看應(yīng)用的日志:sudo systemctl status frps
4.2、/frps -c /frps.ini 前端開(kāi)啟,關(guān)閉就會(huì)失效,使用 nohup 后端運(yùn)行
nohup /frps -c /frps.ini &
5、由于使用阿里云服務(wù)器,需要在阿里云控制面板配置安全組規(guī)則,添加 7000 7500 33891 33892 8080 端口。其中 7000 和 7500 是 frps.ini 文件開(kāi)放的端口,33891 是電腦B frpc.ini 指定的映射到本地的遠(yuǎn)程端口。如果使用的別的服務(wù)器,就在防火墻打開(kāi)這些端口。
6、本地通過(guò)瀏覽器打開(kāi) http://[server_addr]:7500 ,訪問(wèn) dashboard 界面,輸入用戶名及密碼 admin,如果能正常顯示,說(shuō)明運(yùn)行正常
1、首先需要開(kāi)啟 windows10 遠(yuǎn)程桌面。打開(kāi)控制面板=>系統(tǒng)=>高級(jí)系統(tǒng)設(shè)置,切換到"遠(yuǎn)程",選擇“允許遠(yuǎn)程連接到此計(jì)算機(jī)”,并勾選身份驗(yàn)證選項(xiàng),如下圖所示:
2、下載對(duì)應(yīng)的版本,解壓,刪除與服務(wù)端相關(guān)的文件(frps.exe, frps.ini,frps_full.ini)
和 FRP 服務(wù)端類似,F(xiàn)RP 默認(rèn)也給出兩個(gè)客戶端配置文件,一個(gè)是簡(jiǎn)版的 frpc.ini,另一個(gè)是完整版本 frpc_full.ini。
3、編輯 frpc.ini
[common]server_addr = 1.2.3.4server_port = 7000admin_addr = 127.0.0.1admin_port = 7400admin_user = adminadmin_pwd = admin[RDP]type = tcplocal_ip = 127.0.0.1local_port = 3389remote_port = 33891
這里配置的遠(yuǎn)程端口(remote_port)要和前面阿里云開(kāi)放的端口對(duì)應(yīng)。這里指阿里云主機(jī)的 33891 端口映射到本機(jī)的 3389 端口。還可以繼續(xù)添加,映射到本機(jī) 80 端口,就可以讓本機(jī)對(duì)外提供 http 服務(wù)。
4、啟動(dòng)客戶端服務(wù)
在frp 目錄中新建文件 frp.vbs
dim objShell set objShell=wscript.createObject("WScript.Shell") iReturnCode=objShell.Run("C:WWWfrpfrpc.exe -c C:WWWfrpfrpc.ini",0,TRUE)
雙擊 frp.vbs ,即可啟動(dòng) frpc 服務(wù)。
將 frp.vbs 放在 C:UserszmhAppDataRoamingMicrosoftWindowsStart MenuProgramsStartup 啟動(dòng)目錄中,即可實(shí)現(xiàn)開(kāi)機(jī)啟動(dòng)。
電腦B是深度Deepin Linux 系統(tǒng),Deepin 是國(guó)產(chǎn)的基于Debian的系統(tǒng),和ubuntu系統(tǒng)類似,但是面向國(guó)內(nèi)普通用戶做了許多定制,相比其他Linux發(fā)行版,開(kāi)箱即用,使用簡(jiǎn)單方便。
首先在 Deepin 的應(yīng)用商店安裝 Remmina 工具,Remmina 是一個(gè)支持 SSH RDP VNC 等多種協(xié)議的遠(yuǎn)程桌面客戶端,運(yùn)行之后,打開(kāi)右上角的菜單,選擇“首選項(xiàng)”,切換到“RDP”選項(xiàng)卡,質(zhì)量設(shè)置里,可以選擇一個(gè)預(yù)設(shè)項(xiàng),比如“良好”,一定要勾選“平滑字體”,保存。
回到Remmina主程序,點(diǎn)擊左上角創(chuàng)建連接,名稱由自己定,,協(xié)議選擇“RDP”,服務(wù)器填寫(xiě)自己的阿里云服務(wù)器的IP地址,端口號(hào)是電腦A frpc.ini 配置文件指定的 33891,如果使用默認(rèn)的3389端口,可以不填端口號(hào)。切換到高級(jí)項(xiàng),將畫(huà)質(zhì)設(shè)置為“良好”,聲音也可以打開(kāi),安全項(xiàng)不變,但是如果電腦A的系統(tǒng)是windows7,安全項(xiàng)一定要設(shè)置為"RDP"才能連接。
一切配置就緒,連接之后,輸入電腦A的Win10系統(tǒng)的用戶名密碼登錄,如圖3-1所示,效果非常好,自己感覺(jué)要比 TeamViewer 效果好。使用之后,斷開(kāi)連接,如果再回到電腦A,Win10處于鎖定狀態(tài),輸入密碼登錄,桌面依然會(huì)保持?jǐn)嚅_(kāi)時(shí)的樣子。
如果電腦B是 win7以上系統(tǒng)呢,那連接就更簡(jiǎn)單了,打開(kāi)windows的遠(yuǎn)程桌面連接程序(mstsc.exe),輸入代理服務(wù)器IP及端口,連接即可。
也就是用電腦A遠(yuǎn)程連接電腦B,由于辦公室電腦不能輕易去動(dòng)光貓或路由器,也就是電腦B也是屬于內(nèi)網(wǎng),方法和上面第四基本一樣。
1、在電腦B中安裝遠(yuǎn)程桌面服務(wù)
打開(kāi)終端,運(yùn)行:sudo apt-get install xrdp
延續(xù)windows的運(yùn)程桌面,依然使用RDP協(xié)議,安裝xrdp 做為Deepin 遠(yuǎn)程桌面服務(wù)。
2、在電腦B中安裝Frp客戶端
下載系統(tǒng)對(duì)應(yīng)的版本,wget http://github.com/fatedier/frp/releases/download/v0.27.0/frp_0.27.0_linux_amd64.tar.gz
下載完成之后解壓:tar -zxvf frp_0.27.0_linux_amd64.tar.gz
解壓完成后重命名目錄:mv frp_0.27.0_linux_amd64 frp
進(jìn)入frp目錄文件夾:cd frp
刪除與服務(wù)端相關(guān)的文件(frpc,frpc.ini,frpc_full.ini)
和 FRP 服務(wù)端類似,F(xiàn)RP 默認(rèn)也給出兩個(gè)客戶端配置文件,一個(gè)是簡(jiǎn)版的 frpc.ini,另一個(gè)是完整版本 frpc_full.ini。
3、編輯 frpc.ini,開(kāi)啟了3389遠(yuǎn)程桌面服務(wù)和 http 服務(wù)。
[common]server_addr = X.X.X.Xserver_port = 7000[RDP]type = tcplocal_ip = 0.0.0.0local_port = 3389remote_port = 33892[web]type = httplocal_ip = 127.0.0.1local_port = 80remote_port = 8080
4、啟動(dòng)客戶端
sudo vim /lib/systemd/system/frpc.service
[Unit]Description=frpc serviceAfter=network.target syslog.targetWants=network.target[Service]Type=simple#啟動(dòng)服務(wù)的命令(此處寫(xiě)你的frpc的實(shí)際安裝目錄)ExecStart=/home/zmh/program/frp/frpc -c /home/zmh/program/frp/frps.ini[Install]WantedBy=multi-user.target
然后啟動(dòng)frps:sudo systemctl start frps 打開(kāi)開(kāi)機(jī)自啟動(dòng):sudo systemctl enable frps
如果要重啟應(yīng)用,可以這樣,sudo systemctl restart frps 如果要停止應(yīng)用,可以輸入,sudo systemctl stop frps 如果要查看應(yīng)用的日志,可以輸入,sudo systemctl status frps
5、在電腦A或其他Win10系統(tǒng)的電腦上,打開(kāi)遠(yuǎn)程桌面連接程序(mstsc.exe),輸入代理服務(wù)器IP地址及端口號(hào),即可連接。但是效果非常不理想,畫(huà)面質(zhì)量很好,但是窗口渲染的速度太慢,打開(kāi)或移動(dòng)一個(gè)窗口要從上到下慢慢才能顯示出來(lái),關(guān)閉了電腦B的Deepin 系統(tǒng)的窗口特效,也沒(méi)有多少改變。
6、使用 Teamviwer 連接 deepin ,畫(huà)面質(zhì)量明顯要比連接 Win10 差一點(diǎn),不過(guò)速度延遲不大還可以接受,看來(lái) Win10 要連接 Deepin 桌面暫時(shí)只能用 Teamviwer 了,后續(xù)再試試 Deepin 到 Deepin 的遠(yuǎn)程桌面連接,用 x11vnc,還有 x11轉(zhuǎn)發(fā)分別試一下效果。
除了windows3.X 是基于dos的,windows95之后其桌面環(huán)境是和內(nèi)核是集成在一起的,是專為PC打造的桌面操作系統(tǒng),遠(yuǎn)程桌面效果好是應(yīng)該的。Linux 從誕生那天就是為服務(wù)器和系統(tǒng)開(kāi)發(fā)者準(zhǔn)備的,桌面化方面效果當(dāng)然就差了。Linux 的圖形界面只是Linux 下的一套C/S結(jié)構(gòu)的應(yīng)用程序,由X協(xié)議、X服務(wù)器器、顯示管理器(DM)、窗口管理器(WM)及其配套的應(yīng)用程序構(gòu)成一個(gè)完整的Linux桌面環(huán)境,通常稱做 X-Server 和 X-Client。現(xiàn)在常見(jiàn)的 X-server 是 Xorg,deepin 的桌面環(huán)境是 DDE(Deepin Desktop Environment,Deepin 桌面環(huán)境)。當(dāng)然, Linux桌面環(huán)境是 C/S 結(jié)構(gòu),如果要訪問(wèn)處于同一個(gè)完全互訪的局域網(wǎng)環(huán)境下的 Deepin 系統(tǒng)的桌面,就應(yīng)該使用 x11 轉(zhuǎn)發(fā)。
--end--
歡迎分享轉(zhuǎn)載→http://www.avcorse.com/read-241715.html
Copyright ? 2024 有趣生活 All Rights Reserve吉ICP備19000289號(hào)-5 TXT地圖HTML地圖XML地圖