自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

遠程辦公何時了,網(wǎng)絡(luò)打洞幫你搞

商務(wù)辦公
最近,有位像詩一樣的朋友,充滿了羅曼蒂克一樣的墮落主義思想。他不想上班,不想工作,就想翹著腿躺在床上刷手機。作為又一個被優(yōu)美的生活所摧殘的青年,我深刻理解他的想法,他愛上了遠程辦公。

[[360678]]

本文轉(zhuǎn)載自微信公眾號「小姐姐味道」,作者小姐姐養(yǎng)的狗 。轉(zhuǎn)載本文請聯(lián)系小姐姐味道公眾號。  

最近,有位像詩一樣的朋友,充滿了羅曼蒂克一樣的墮落主義思想。他不想上班,不想工作,就想翹著腿躺在床上刷手機。作為又一個被優(yōu)美的生活所摧殘的青年,我深刻理解他的想法,他愛上了遠程辦公。他的電腦在公司,人在家,可以用類似TeamView一類的軟件去做。另外,他還精通網(wǎng)絡(luò)打洞技術(shù),能夠遠程控制很多網(wǎng)絡(luò)環(huán)境很復(fù)雜的機器。

什么叫打洞呢?其實就是內(nèi)網(wǎng)穿透。

你可能有這樣的需求:

  • 調(diào)試一些支付回調(diào)接口,但是又想在本地的Idea中接受請求進行debug;
  • 家里有一臺性能非常霸道的機器,想要在上班時能夠連上它,做一些不可告人的操作
  • 手里有一大批broiler chicken,但對方在各種防火墻之內(nèi),你想要集中控制它
  • 廉價的遠程辦公
  • 遠程控制手機打卡簽到!
  • 給客戶做演示,懶得再搭建環(huán)境,想要直接訪問自己機器上的程序...

不要著急,你所能想到的這些,看完本篇文章,都可以搞定。而且,不需要你親自動手編碼。

這些需求,有的是正當?shù)?,有的是邪惡的,這也體現(xiàn)了技術(shù)的兩面性。工具在不同的人手里,會有不同的功效。比如到了xjjdog手里,它僅僅變成了一篇水文。

重回正題,為了讓你能夠上手應(yīng)用這種內(nèi)網(wǎng)穿透技術(shù),你需要一臺能夠上網(wǎng)的云主機。要最便宜的那種就可以,它將作為我們的流量轉(zhuǎn)發(fā)中樞。

1. 這是什么原理

?我們當然要拿一個比較正當?shù)挠猛荆瑏碚f明一下它的基本原理。打洞方式有很多,我們只介紹一種最直觀、最簡單的(嚴格來說,下面的介紹只屬于隧道,為了描述方便,我們統(tǒng)稱為打洞)。

 

要明白一個事實:“網(wǎng)絡(luò)連接,是雙向的。” 請銘記這個看起來再自然不過的特點,它將是我們接下來介紹的這種方式的根本。

拿支付例子來說。程序調(diào)用了微信或者支付寶的api進行支付后,平臺會將支付結(jié)果通過回調(diào)地址通知我。

由于我的386機器在內(nèi)網(wǎng)中,加上層層的路由器和交換機防火墻,再加上ipv4的珍貴性,微信根本找不到我。大隱隱于市,也不過如此吧。

幸運的是,我能上網(wǎng)!這可以說是公司對我的最大恩賜了。

遇到網(wǎng)絡(luò)問題,最好的解決方式就是加上一個中間層。這和nginx有異曲同工之處。nginx通過加入一個配置,就可以把服務(wù)端的資源暴露到公網(wǎng)上。我們也使用類似的思路去解決,但這次,我希望的是把自己本地的386,暴露到公網(wǎng)上。

不能用nginx做反向代理,因為nginx同樣訪問不了處于墻內(nèi)的我(淦)。

這時候,我們上面提到的基本事實,就起作用了。

 

加入一個中間層墻內(nèi)翻譯,再加入一個中間層墻外翻譯。一旦它們連接上,不管是誰連接上誰,都能夠相互進行流量轉(zhuǎn)發(fā)。注意我們的箭頭,正向的數(shù)據(jù)流動,和反向的數(shù)據(jù)流動,對于一個連接來說,并沒有什么區(qū)別。

 

 


 

 

 

 

為了更明白的看一下這個過程。我畫了兩組端口圖。紅色防火墻左邊的,就是本地機器;右邊的,就是轉(zhuǎn)發(fā)服務(wù)器。

剛開始的時候,轉(zhuǎn)發(fā)服務(wù)器監(jiān)聽在7000端口。在本地機器上,進行了一個配置,告訴服務(wù)端:麻煩您再監(jiān)聽一個9090端口,當有數(shù)據(jù)請求到來的時候,麻煩通過你的客戶端,轉(zhuǎn)發(fā)到我的8080端口上。

這就是整個內(nèi)網(wǎng)穿透的基本思路。

2. 實踐一下

原理,只是贈送給對內(nèi)網(wǎng)穿透有好奇心的同學。對于大部分人來說,直接用就對了! 誰有閑工夫去搞明白為啥發(fā)動機是怎么設(shè)計的。

需求催生工具。目前常用的開源工具,有很多比如zerotier、ngrok、frp等。下面以frp為例,來說明一下它的使用方式。

  1. https://github.com/fatedier/frp/ 

如果你看過上面的原理,就會發(fā)現(xiàn)它的配置,實在是很簡單的。

首先,準備一臺云主機。我們叫它server。

在server上,下載frp,解壓。然后配置frps.ini。好家伙,只有兩行,就是一個綁定端口。這證明了我們要在客戶端的配置上下點功夫。

  1. [common] 
  2. bind_port = 14000 

接下來,在本地機器上操作,我們記做386。

在386上,下載相應(yīng)平臺版本的frp,解壓。這次要修改的是frpc.ini文件。

  1. [common] 
  2. server_addr = 139.202.186.135 
  3. server_port = 14000 
  4.  
  5. [springboot-1] 
  6. type = tcp 
  7. local_ip = 127.0.0.1 
  8. local_port = 8080 
  9. remote_port = 9090 

在這里,我們指定連上了server的14000。并告訴它,啟動一個9090端口。當有請求的時候,轉(zhuǎn)發(fā)到我386的8080端口。

在386上,已經(jīng)用idea啟動了一個springboot項目。當微信的支付回調(diào),調(diào)到server的9090端口時,我就可以在idea里打斷點進行調(diào)試了。

3. 兩個小案例

我們再來看兩種常見的操作系統(tǒng)完全控制。

對于Linux服務(wù)器來說,對外開放的一般是22端口。我們可以通過ssh來連接它。

  1. [ssh] 
  2. type = tcp 
  3. local_ip = 127.0.0.1 
  4. local_port = 22 
  5. remote_port = 6000 

在本地,通過下面命令即可連接放在家里的機器。

  1. ssh -oPort=6000 test@x.x.x.x 

同樣的,要想遠程控制windows,還是得首先把遠程連接功能給打開。

在windows機器上,簡單的配置一下端口就可以。因為它是通用的tcp連接,所以我們并不需要配置什么額外的東東。

  1. [RDP] 
  2. type = tcp 
  3. local_ip = 127.0.0.1 
  4. local_port = 3389 
  5. remote_port = 33891 

可以看到,由于22和3389都是基于tcp協(xié)議的,所以這種轉(zhuǎn)發(fā)配置,也簡單的像是吃飯一樣。

市面上的一些打洞軟件,難的并不是技術(shù),而是從業(yè)資格證書。畢竟,別人用你的服務(wù),向外傳輸?shù)膬?nèi)容,都是不得而知的。這時候如果沒有運營證書或者嚴格的內(nèi)容審查,就只能背鍋。

講完了打洞的原理和簡單使用案例,我們有必要著重提一下它的安全性。

溫馨提示:打洞請尤其注意它的安全。如果你是打通的ssh或者3389,請確保打了相關(guān)的補丁,并且采用了強密碼。一般公司會采用方式管理遠程訪問,打洞可以說是直接繞過,是非常危險的行為。

如果你打的洞,被其他別有用心的人獲得,通常會造成內(nèi)網(wǎng)的崩潰。如果你的公司并不允許這種行為,就不要把公司內(nèi)網(wǎng)的服務(wù)暴露到外面。

打洞還通常與泄密有關(guān)。一個被嚴格保密的內(nèi)網(wǎng)系統(tǒng),由于其中的一臺機器能夠上網(wǎng),就可以把服務(wù)暴露出去供外部人員訪問參考。

建議在打洞之前,先了解一下什么叫做“面向法律編程”。演示一類的打洞,需要經(jīng)過公司授權(quán);拒絕一切公司內(nèi)網(wǎng)類的ssh和3389打洞。

否則,出了事情,被請到局子里喝茶去,就不太好了。

作者簡介:小姐姐味道 (xjjdog),一個不允許程序員走彎路的公眾號。聚焦基礎(chǔ)架構(gòu)和Linux。十年架構(gòu),日百億流量,與你探討高并發(fā)世界,給你不一樣的味道。我的個人微信xjjdog0,歡迎添加好友,進一步交流。

 

責任編輯:武曉燕 來源: 小姐姐味道
相關(guān)推薦

2023-03-17 16:02:36

2021-09-12 14:31:36

遠程辦公網(wǎng)絡(luò)管理IT

2019-08-27 14:46:59

ElasticSearES數(shù)據(jù)庫

2011-12-07 12:24:32

2020-05-26 11:11:43

遠程辦公網(wǎng)絡(luò)技術(shù)

2021-01-26 00:58:30

網(wǎng)絡(luò)遠程辦公SD-WAN

2024-01-24 18:55:56

ChatGPT聊天機器人

2022-05-18 13:16:36

DeepMind機器學習谷歌

2017-10-19 07:57:36

IBM

2020-08-03 23:13:14

物聯(lián)網(wǎng)遠程辦公IOT

2020-04-15 09:34:40

遠程辦公安全數(shù)據(jù)泄露遠程辦公

2022-04-01 17:25:19

銳捷網(wǎng)絡(luò)混合辦公多點辦公

2021-09-28 11:30:01

遠程辦公安全威脅網(wǎng)絡(luò)安全

2020-05-07 10:20:03

遠程辦公網(wǎng)絡(luò)詐騙黑科技

2022-04-07 17:15:24

銳捷網(wǎng)絡(luò)多點辦公

2021-08-11 08:04:22

網(wǎng)絡(luò)監(jiān)控工具

2021-03-16 05:46:07

雙鏈表單鏈表LinkedList

2020-02-18 10:28:43

辦公軟件工具互聯(lián)網(wǎng)

2020-02-10 09:40:05

科技人工智能企業(yè)

2021-02-07 23:32:15

網(wǎng)絡(luò)安全遠程辦公疫情
點贊
收藏

51CTO技術(shù)棧公眾號