人人做人人澡人人爽欧美,国产主播一区二区,久久久精品五月天,羞羞视频在线观看免费

當(dāng)前位置:蘿卜系統(tǒng) > 網(wǎng)絡(luò)技術(shù)教程 > 詳細(xì)頁面

端口碰撞技術(shù)讓開放端口更安全

端口碰撞技術(shù)讓開放端口更安全

更新時(shí)間:2021-05-05 文章作者:未知 信息來源:網(wǎng)絡(luò) 閱讀次數(shù):

網(wǎng)絡(luò)技術(shù)是從1990年代中期發(fā)展起來的新技術(shù),它把互聯(lián)網(wǎng)上分散的資源融為有機(jī)整體,實(shí)現(xiàn)資源的全面共享和有機(jī)協(xié)作,使人們能夠透明地使用資源的整體能力并按需獲取信息。資源包括高性能計(jì)算機(jī)、存儲資源、數(shù)據(jù)資源、信息資源、知識資源、專家資源、大型數(shù)據(jù)庫、網(wǎng)絡(luò)、傳感器等。 當(dāng)前的互聯(lián)網(wǎng)只限于信息共享,網(wǎng)絡(luò)則被認(rèn)為是互聯(lián)網(wǎng)發(fā)展的第三階段。
所有在防火墻和路由器上開放的端口都是一種安全風(fēng)險(xiǎn)。這也是一種稱之為"端口碰撞(port knocking )"技術(shù)的價(jià)值所在。端口碰撞技術(shù)是一種允許訪問預(yù)先配置好"碰撞"的防火墻服務(wù)的技術(shù)。所謂的碰撞是由一個(gè)嘗試訪問系統(tǒng)上關(guān)閉端口的序列組成。這些嘗試要么記錄在一個(gè)日志中,要么保存在一個(gè)后臺進(jìn)程中,通過預(yù)先配置這個(gè)日志或者進(jìn)程來監(jiān)視打開相應(yīng)端口的序列,如果嘗試序列與預(yù)先設(shè)置的序列相符合,就可以打開某個(gè)端口。
  通過這種方式可以讓一個(gè)端口在需要的時(shí)候才打開,從而具有一定的技術(shù)優(yōu)勢。對于黑客來說,很難在遠(yuǎn)程利用處于關(guān)閉狀態(tài)端口的相關(guān)服務(wù)來攻擊系統(tǒng)。例如,對于遠(yuǎn)程管理來說,在一個(gè)公開的服務(wù)器上開放SSH服務(wù)是很方便的,但是這也使得系統(tǒng)允許任何人都有可能嘗試訪問該系統(tǒng)。當(dāng)然,對于這個(gè)端口的訪問,你可以給定一個(gè)IP地址范圍的限制,但是這樣一來,還是帶來了安全問題和訪問挑戰(zhàn)方面的問題。端口碰撞技術(shù)讓你在這兩個(gè)方面都會處理的很好:在大多數(shù)時(shí)間里,這個(gè)端口都是關(guān)閉的,但是知道這種方法的可以在任何時(shí)候任何地方打開這個(gè)端口。

  概述

  由于有些大家都很熟悉的服務(wù)存在一定的安全方面的問題,因此,大多數(shù)的的安全破壞都是從外網(wǎng)利用這些安全問題來實(shí)現(xiàn)的。FTP和SSH使用的是大家都很熟悉的端口,因此長期以來,這些服務(wù)一直都存在著各種各樣的攻擊方法。而在大多數(shù)情況下,這些服務(wù)都是讓內(nèi)部用戶來使用的,因此內(nèi)部用戶是使用端口碰撞技術(shù)的主要候選人。

  很顯然,對于那些你需要公開的訪問服務(wù),例如HTTP和SMTP服務(wù),端口碰撞技術(shù)則不適合用于這種場合。因?yàn)榫W(wǎng)頁服務(wù)和電子郵件服務(wù)需要允許來自任何地方的連接。然而,對于所有其他的服務(wù)來說,最好的實(shí)際操作是將所有非必須的端口都關(guān)閉。因而,從存在安全方面的問題的角度來考慮,象SSH這樣一種非常有用的服務(wù)也常常需要處于關(guān)閉狀態(tài)。

  這就是端口碰撞技術(shù)非常有用的地方。首先,通過探測技術(shù)是不會發(fā)現(xiàn)這種基于端口碰撞技術(shù)配置的服務(wù)器的。防火墻軟件將會自動拒絕所有的端口掃描或者任何直接連接嘗試。并且通過選擇一系列非連續(xù)的端口號來實(shí)現(xiàn)端口碰撞(我們將在隨后介紹),你可以減輕對安全問題的顧慮,因?yàn)橐粋(gè)標(biāo)準(zhǔn)的端口掃描器一般不太可能得到一個(gè)正確的碰撞序列。通過使用這種方法,在得到良好的安全性的同時(shí),還可以實(shí)現(xiàn)遠(yuǎn)程訪問。

  你可能會問自己,我為什么需要這種方法?事實(shí)上你可能用不上這種技術(shù)。這種技術(shù)只是增加當(dāng)前網(wǎng)絡(luò)的安全性,在可能存在的黑客和需要保護(hù)的服務(wù)之間創(chuàng)建一個(gè)不易覺察的安全層。如果遠(yuǎn)程用戶不知道服務(wù)器在監(jiān)聽一個(gè)特定的端口,那么你將大大減少通過這個(gè)端口危及系統(tǒng)的次數(shù)。更進(jìn)一步地,遠(yuǎn)程用戶不太可能確定服務(wù)器是否使用了端口碰撞技術(shù),因此也不太可能來使用暴力嘗試來猜測正確地序列。

  端口碰撞的細(xì)節(jié)問題

  可以使用不同的方法來配置端口碰撞。你可以使用基于靜態(tài)端口序列的方式來實(shí)現(xiàn)授權(quán)訪問。例如,服務(wù)器可以這樣設(shè)置,在它按順序接收到與端口2033、3022、6712、4998、以及4113的連接嘗試后,打開TCP端口22。如果服務(wù)器接收到一個(gè)不正確的序列則關(guān)閉該端口,或者使用一個(gè)定時(shí)器來關(guān)閉該端口。監(jiān)控防火墻日志的后臺進(jìn)程在截獲這些被拒絕的嘗試后,將在防火墻中增加一個(gè)新的防火墻規(guī)則來打開必要的端口,授權(quán)用戶訪問該端口。


還可以使用動態(tài)配置技術(shù)來打開端口。首先,你需要建立一個(gè)端口集合,在本文的例子中,我們將使用端口1040到端口1049。通過提供一個(gè)開始序列--例如1042、1044、1043--隨后,對于你希望打開的端口,你可能還需要給服務(wù)器提供相應(yīng)的接收信息。在序列1042、1044、以及1043后,你需要讓服務(wù)器知道你想讓它打開端口443。之所以采用這種設(shè)計(jì),是為了增加打開不同服務(wù)器必要端口的靈活性和選項(xiàng)而不需要采用靜態(tài)配置。

  加密通信可能也可以增加額外層次的安全性。如果你擔(dān)心別人嗅探你的數(shù)據(jù)包或者擔(dān)心有人盜竊你的碰撞序列的話,采用這種加密方式將非常有益。對于端口碰撞來說,使用加密技術(shù)是一種最安全的方法,并且我們將在隨后的文章中看到,加密技術(shù)是在原型中經(jīng)常使用的一種方法。

  使用knockclient和knockdaemon

  Portknocking.org公司已經(jīng)用Perl語言實(shí)現(xiàn)了端口碰撞技術(shù),現(xiàn)在可以從該公司的網(wǎng)站下載這個(gè)工具。文件portknocking-0.1.tgz中包含knockclient和knockdaemon兩個(gè)程序。該版本允許遠(yuǎn)程用戶打開端口0到255,并且自動使用Crypt::Blowfish執(zhí)行加密工作。你只需要在遠(yuǎn)程系統(tǒng)上使用必要的命令選項(xiàng)來調(diào)用knockclient程序即可。例如,要在遠(yuǎn)程系統(tǒng)上打開特定IP上的端口22,你可以使用這樣的命令:knockclient -client 192.168.0.1 -remote 10.1.42.1 -port 22 -time 0。

  在這個(gè)例子中,我們要打開IP地址為10.1.42.1的服務(wù)器上的端口22,并且只允許IP地址為192.168.0.1d的主機(jī)與這個(gè)服務(wù)器之間只能有一個(gè)連接。由于-time的標(biāo)識為0,因此我們要打開的端口在開放時(shí)間上沒有限制。如果time的時(shí)間為255的話,那么該命令就是要關(guān)閉這個(gè)端口。其他從1到254之間的time值表示端口打開的時(shí)間(以分鐘計(jì)算)。在knockclient和knockdaemon之間的共享密碼用于加密碰撞序列,并且使得遠(yuǎn)程主機(jī)和本地主機(jī)之間的信息只有他們自己能夠理解。另外,在這種實(shí)現(xiàn)中,要使用遠(yuǎn)程主機(jī)的端口745 到端口1000。服務(wù)器的端口打開之后,需要關(guān)閉遠(yuǎn)程主機(jī)的這些端口,并且防火墻的日志需要打開。然后后臺進(jìn)程缺省狀態(tài)下就會監(jiān)聽這些端口的8個(gè)碰撞。Perl模式 File::Tail 用于檢測添加到防火墻日志上的新的行信息,并且knockdaemon將會分析這些行信息。

  雖然這僅僅是一個(gè)原型,但是卻運(yùn)行的很好。很顯然,端口碰撞技術(shù)的核心是遠(yuǎn)程主機(jī)發(fā)起的碰撞序列是否能夠打開一個(gè)端口。寫出這樣的一個(gè)程序或者將其加入到當(dāng)前可用的資源中是一件并不困難的事情,并且可以很容易的實(shí)現(xiàn)各個(gè)系統(tǒng)的定制。例如,如果訪問一個(gè)NATIP地址,你可以根據(jù)碰撞序列來配置策略,實(shí)現(xiàn)動態(tài)轉(zhuǎn)發(fā)對內(nèi)部主機(jī)的SSH訪問。另外,根據(jù)你的配置,使用端口碰撞技術(shù)還可以實(shí)現(xiàn)備份或者運(yùn)行其他的作業(yè)。

  總結(jié)

  端口碰撞技術(shù)對于增加一層看不見的認(rèn)證來說還是非常有益處的。只有提供了正確的端口序號的用戶才可以有一次獲得可用服務(wù)如SSH等的機(jī)會。這使得服務(wù)器可以具有從任意IP--如一個(gè)移動或者動態(tài)的IP--上接受連接的能力,并且可以創(chuàng)建一定的信任級別--這種信任基于遠(yuǎn)程系統(tǒng)知道正確的碰撞序列。對于那些已經(jīng)實(shí)現(xiàn)了比較好的安全性的服務(wù)器來說,端口碰撞技術(shù)是一種最好的補(bǔ)充。


網(wǎng)絡(luò)的神奇作用吸引著越來越多的用戶加入其中,正因如此,網(wǎng)絡(luò)的承受能力也面臨著越來越嚴(yán)峻的考驗(yàn)―從硬件上、軟件上、所用標(biāo)準(zhǔn)上......,各項(xiàng)技術(shù)都需要適時(shí)應(yīng)勢,對應(yīng)發(fā)展,這正是網(wǎng)絡(luò)迅速走向進(jìn)步的催化劑。

溫馨提示:喜歡本站的話,請收藏一下本站!

本類教程下載

系統(tǒng)下載排行

網(wǎng)站地圖xml | 網(wǎng)站地圖html
主站蜘蛛池模板: 平武县| 永昌县| 通江县| 日土县| 徐汇区| 塔河县| 盱眙县| 沛县| 大石桥市| 陇南市| 福泉市| 浮梁县| 布尔津县| 鲜城| 静宁县| 宜城市| 河西区| 安溪县| 都安| 靖江市| 昆明市| 湟源县| 朝阳县| 维西| 靖州| 鲜城| 舟曲县| 巴南区| 垫江县| 永康市| 邓州市| 桂林市| 祁东县| 巴南区| 建湖县| 丹凤县| 龙山县| 靖安县| 武乡县| 南部县| 柏乡县|