如何實現局域網共享與網上鄰居安全

如何實現局域網共享與網上鄰居安全

   責編:楊劍鋒   

 

一. 局域網內的鄰居

  李小姐是某公司的文祕,昨天剛連夜趕出一份項目報告,就急匆匆帶回公司給經理爲客戶們做講解了,剛離開公司那30層高的會議廳,李小姐就忙着回自己在15樓的工作崗位了,但是李小姐剛踏出電梯,就接到了參與演示的工作人員的電話,說發現報告的演示文檔不齊全,要她迅速帶上來,李小姐才發現是自己過於迷糊而少複製了幾份文件,但是她更清楚如果這個馬虎行爲讓客戶看到,恐怕會對公司造成負面形象,李小姐一時陷入窘境。突然,她想到了公司的局域網……

  一場危機總算解除了,李小姐通過局域網把文件傳輸上來,演示人員不動聲色的補充了剩下的文件,會議進行得很順利,大家總算鬆了口氣……

  網絡的基本作用是實現資源共享,而作爲最小網絡分佈結構的局域網(Local Area Network,LAN)更是把這個概念淋漓盡致的發展起來,那麼,局域網內的共享是怎麼實現的呢?

  1. 局域網實現原理

  在瞭解共享之前,我們需要對局域網的概念有個瞭解,局域網並不同於外界通訊使用的TCP/IP協議體系,它是一種建立在傳統以太網(Ethernet)結構上的網絡分佈,除了使用TCP/IP協議,它還涉及許多協議。

  在局域網裏,計算機要查找彼此並不是通過IP進行的,而是通過網卡MAC地址,它是一組在生產時就固化的唯一標識號,根據協議規範,當一臺計算機要查找另一臺計算機時,它必須把目標計算機的IP通過ARP協議(地址解析協議)在物理網絡中廣播出去,“廣播”是一種讓任意一臺計算機都能收到數據的數據發送方式,計算機收到數據後就會判斷這條信息是不是發給自己的,如果是,就會返回應答,在這裏,它會返回自身地址。當源計算機收到有效的迴應時,它就得知了目標計算機的MAC地址並把結果保存在系統的地址緩衝池裏,下次傳輸數據時就不需要再次發送廣播了,這個地址緩衝池會定時刷新重建,以免造成數據冗餘現象。實際上,共享協議規定局域網內的每臺啓用了文件及打印機共享服務的計算機在啓動的時候必須主動向所處網段廣播自己的IP和對應的MAC地址,然後由某臺計算機(通常是局域網內某個工作組裏第一臺啓動的計算機)承擔接收並保存這些數據的角色,這臺計算機就被稱爲“瀏覽主控服務器”,它是工作組裏極爲重要的計算機,負責維護本工作組中的瀏覽列表及指定其他工作組的主控服務器列表,爲本工作組的其他計算機和其他來訪本工作組的計算機提供瀏覽服務,它的標識是含有_MSBROWSE_名字段。這就是我們能在網絡鄰居看到其他計算機的來由,它實際上是一個瀏覽列表,用戶可以使用“nbtstat -r”來查看在瀏覽主控服務器上聲明瞭自己的NetBIOS名稱列表。

  瀏覽列表記錄了整個局域網內開啓的計算機的資源描述,當我們要訪問另一臺計算機的共享資源時,系統實際上是通過發送廣播查詢瀏覽主控服務器,然後由瀏覽主控服務器提供的瀏覽列表來“發現”目標計算機的共享資源的。

  但是僅知道彼此的地址還不夠,計算機之間必須建立一條連接的數據鏈路才能正常工作,這就需要另一個基本協議來進行了。NetBIOS(網絡基本輸入輸出系統)協議是ibm開發的用於給局域網提供網絡以及其他特殊功能的命令集,幾乎每個局域網都必須在這種協議上面進行工作,NetBIOS相當於Intranet上的TCP/IP協議。而後推出的NetBEUI協議(NetBIOS用戶擴展接口協議)則是對前者進行了功能擴充,這幾個協議都是組成局域網的基本必備,最後,爲了建立連接,局域網還需要TCP/IP協議。

  2. Windows下的局域網共享

  Windows系統對於局域網內機算機的身份和權限驗證是在一個被稱爲“Ipc”(命名管道)的組件技術上實現的,它實質上是Windows爲了方便管理員從遠方登錄管理計算機而設置的,在局域網裏它也負責文件的共享和傳輸,所以它是Windows局域網不可缺的基礎組件。

  默認情況下,局域網之間的共享服務通過來賓帳戶“Guest”的身份進行,這個帳戶在Windows系統裏權限最少,爲方便阻止來訪者越權訪問提供了基礎,同時它也是資源共享能正常進行的最小要求,任何一臺要提供局域網共享服務的計算機都必須開放來賓帳戶,命令是“net user guest /active:yes”。

  除了使用IPC作爲身份驗證,系統還使用SMB(Server Message Block)協議用來做文件共享,這個協議與共享存在很大聯繫,稍後我們將會講到。

  二. 局域網共享的實現

  雖然我們可以把局域網定義爲“一定數量的計算機通過互連設備連接構成的網絡”,但是僅僅使用網卡讓計算機構成一個物理連接的網絡還不能實現真正意義的局域網,它還需要進行一定的協議設置,才能實現資源共享。

  首先,同一個局域網內的計算機IP地址應該是分佈在相同網段裏的,雖然以太網最終的地址形式爲網卡MAC地址,但是提供給用戶層次的始終是相對好記憶的IP地址形式,而且系統交互接口和網絡工具都通過IP來尋找計算機,因此爲計算機配置一個符合要求的IP是必須的,這是計算機查找彼此的基礎,除非你是在DHCP環境裏,因爲這個環境的IP地址是通過服務器自動分配的。

  其次,要爲局域網內的機器添加“交流語言”——局域網協議,包括最基本的NetBIOS協議和NetBEUI協議,然後還要確認“microsoft 網絡的文件和打印機共享”已經安裝併爲選中狀態,然後,還要確保系統安裝了“Microsoft 網絡客戶端”,而且僅僅有這個客戶端,否則很容易導致各種奇怪的網絡故障發生。

  然後,用戶必須爲計算機指定至少一個共享資源,如某個目錄、磁盤或打印機等,完成了這些工作,計算機才能正常實現局域網資源共享的功能。

  最後,計算機必須開啓139、445這兩個端口的其中一個,它們被用作NetBIOS會話連接,而且是SMB協議依賴的端口,如果這兩個端口被阻止,對方計算機訪問共享的請求就無法迴應。

  但是並非所有用戶都能很順利的享受到局域網資源共享帶來的便利,由於操作系統環境配置、協議文件受損、某些軟件修改等因素,時常會令局域網共享出現各種各樣的問題,如果你是網絡管理員,就必須學習如何分析排除大部分常見的局域網共享故障了。

  三. 局域網共享故障的分析與排除

  IPC、Server服務與共享故障

  臨近畢業了,學生小王找了一家平面設計公司作爲實習單位,這天辦公室有同事急匆匆找網絡部索要殺毒軟件,但不湊巧管理員外出未歸,小王爲人比較熱心,雖然自己不是學網絡專業的,可是想想也略懂皮毛,就自告奮勇去幫忙了,幸好只是個小病毒,他輕易就解決了,在同事的誇獎下,小王心血來潮順便給她做了系統優化。

  可是才過十幾分鍾,那個同事又出來找網絡部了,她說自己的機器被小王擺弄後無法打開別人計算機的共享了,這下,小王第一次明白了什麼叫好心的後果……

  我在前面說起Windows的局域網共享時,提到了IPC(Internet Process Connection),IPC是NT以上的系統爲了讓進程間通信而開放的命名管道,可以通過驗證用戶名和密碼獲得相應的權限,在遠程管理計算機和查看計算機的共享資源時使用,微軟把它用於局域網功能的實現,如果它被關閉,計算機就會出現“無法訪問網絡鄰居”的故障。

  在Windows NT以後的系統裏,IPC是依賴於Server服務運行的,一些習慣了單機環境的用戶可能會關閉這個服務,這樣的後果就是系統將無法提供與局域網有關的操作,用戶無法查看別人的計算機,也無法爲自己發佈任何共享。

  要確認IPC和Server服務是否正常,可以在命令提示符裏輸入命令net share,如果Server服務未開啓,系統會提示“沒有啓動 Server 服務。是否可以啓動? (Y/N) [Y]:”,回車即可以啓動Server服務。如果Server服務已開啓,系統會列出當前的所有共享資源列表,其中至少要有名爲“IPC

  除了Server服務以外,還有兩個服務會對共享造成影響,分別是“Computer Browser”和“TCP/IP NetBIOS Helper Service”,前者用於保存和交換局域網內計算機的NetBIOS名稱和共享資源列表,當一個程序需要訪問另一臺計算機的共享資源時,它會從這個列表裏查詢目標計算機,一旦該服務被禁止,IPC就認定當前沒有可供訪問的共享資源,用戶自然就沒法訪問其他計算機的共享資源了;後者主要用於在TCP/IP上傳輸的NetBIOS協議(NetBT)和NetBIOS名稱解析工作,NetBT協議爲跨網段實現NetBIOS命令傳輸提供了載體,正因如此,早期的黑客入侵教材裏“關於139端口的遠程入侵”才能實現,因爲NetBIOS協議被TCP封裝起來通過Internet傳輸到對方機器裏處理了,同樣對方也是用相同途徑實現數據傳輸的,否則黑客們根本無法跨網段使用網絡資源映射指令“net use”。對於本地局域網來說,NetBT是SMB協議依賴的傳輸媒體,也是相當重要的。

  如果這兩個服務異常終止,局域網內的共享可能就無法正常使用,這時候我們可以通過執行程序“services.msc”打開服務管理器,在裏面查找“Computer Browser”和“TCP/IP NetBIOS Helper Service”服務並點擊“啓動”即可。

  系統安全策略與共享故障

  熟悉Windows系統的用戶或多或少都會接觸到“組策略”(gpedit.msc),這裏實際上是提供了一個比手工修改註冊表更直觀的操作方法來設置系統的一些功能和用戶權限,但是這裏的設置失誤也會影響到局域網共享資源的使用。

  由於IPC本身就是用於身份驗證的,因此它對計算機賬戶的配置特別敏感,而組策略裏偏偏就有很多方面的設置是針對計算機賬戶的,其中影響最大的要數“計算機配置 – Windows配置 – 安全設置 – 本地策略 – 用戶權利指派”裏的“拒絕從網絡訪問這臺計算機”,在Windows 2000系統裏默認是不做任何限制的,可是自從XP出現後,這個部分就默認多了兩個帳戶,一個是用於遠程協助(也就是被簡化過的終端服務)身份登錄的3389用戶名,另一個則是我們局域網共享的基本成員guest!

  許多使用XP系統的用戶無法正常開啓共享資源的訪問權限,正是這個項目的限制,解決方法也很容易,只要從列表裏移除“Guest”帳戶就可以了。

  除了與帳戶相關的策略,這裏還有幾個與NetBIOS和IPC相關的組策略設置,它們是位於“計算機配置 – Windows配置 – 安全設置 – 本地策略 – 安全選項”裏的“對匿名連接的額外限制”(默認爲“無”),對於XP以上的系統,這裏還有“不允許SAM賬戶和共享的匿名枚舉”(默認爲“已停用”)、“本地賬戶的共享和安全模式”(默認爲“僅來賓”),其中“對匿名連接的額外限制”的設置是可以直接扼殺共享功能的,當它被設置爲“不允許枚舉”時,其他計算機就無法獲取共享資源列表,如果它被設置爲“沒有顯式匿名權限就無法訪問”的話,這臺計算機就與共享功能徹底告別了,所以有時候實在找不出故障,不妨檢查一下該項目。

  權限與共享的衝突

  如今的局域網普遍建立在Windows 2000以上的系統架構上運行,而且IPC的作用本來就是爲了提供身份驗證,因而共享始終離不開權限的影子,何況如果系統不會把文件共享的訪問身份設置爲最小權限的來賓帳戶的話,別有用心的訪問者就能輕易奪取管理員級別了。但是也正因爲這樣,一些時候權限反而會成爲阻撓共享順利進行的罪魁禍首。  

發佈了64 篇原創文章 · 獲贊 5 · 訪問量 12萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章