TCP-IP
前面我們講了FTP的配置,它在網絡管理裡面也是比較重要的一個服務,下面我們講一
下網絡管理的另一個比較重要的概念,就是信任關系。還是拿NT來做對比,在NT裡面,建立
了信任關系後,比如A信任B,在B裡的帳戶就可以在A登錄了,這對於administrator和user
來說都是一個非常方便的事情。同樣,在UNIX系統中也有這樣的管理方式,了解這個管理方
式對你學習UNIX的網絡很重要哦,欺騙(spoofing)技術就是利用這種管理方式的。
UNIX中的受托訪問可以讓用戶更方便,更安全的利用企業網絡,增強網絡的安全性。
如果沒有為rlogin命令配置受托訪問,它會提示用戶輸入密碼。這個密碼會通過網絡,
甚至INTERNET來傳輸。含有這些密碼的數據包就會很容易被識別和竊取。如果設置了受托訪
問,就無需為rlogin設置密碼。在沒有受托訪問的情況下,你甚至都無法使用rcmd和rcp命
令。系統管理員有責任管理受托訪問及用戶等同。下面列出了為r命令和TCP實用程序:
rlogin Allows users to log into a remote host. If trusted access is set up.
no password is needed,otherwise a password is needed.
rcp Allows users to copy files from one host to another. Requires trusted
access.
telnet Similar to rlogin, only a user name and password are almost always
required, and trusted access is not consulted
ftp Similar to rcp, only a user name and password is always required and
trusted access is not consulted
受托主機訪問的意義在於可以規定一台主機完全“信任”另一台主機上的用戶。這些用戶在
那台主機上均有可識別的login名稱,無需密碼就可使用rlogin,rcp及rcmd命令。配置受托
主機訪問要以root登錄到系統中。主要步驟是編輯/etc/hosts.equiv文件,必要時還要創建
此文件。/etc/hosts.equiv文件中的每一選項規定的是那些有權訪問該主機的遠程系統。下
面是一個該文件的例
子:
--------------------------------------------------------------------------------
barbados
tortola bob
guam
--------------------------------------------------------------------------------
假設該文件是一台名為corfu的機器上的設置,它們的意義分別如下:
barbados barbados機器上與corfu中有相同的用戶名的用戶有權訪問corfu。也就是
說,在barbados上的用戶jane可以rlogin,rcp,rcmd到corfu的用戶jane上,不需要給出
jane在corfu上的密碼。
tortola bob 容許tortola上的用戶bob可以用除root外的任何用戶名訪問corfu。不過,
這是很危險的。
root帳戶是永遠都不能與/etc/hosts.equiv文件的選項等同的。如果你是在INTERNET上,
為了安全起見,應該用/etc/hosts.equiv文件授權的主機名。配置受托用戶訪問,就是指定
另一系統上的“可信任”用戶,他們可以不用密碼即可通過rlogin,rcmd及rcp命令訪問本系
統。與受托主機訪問不同的餓是,受托用戶訪問可為用戶在不同的機器上創建不同的login名
稱。系統管理員可以為用戶設置這項功能,也可以交給用戶自己去做。配置受托用戶訪問的
主要步驟是在用戶目錄中創建或修改.rhosts文件。該文件必須是root或主目錄所有者的,而
且只有所有者才可以寫此文件,否則任何更改都是無效的。.rhosts文件格式
與/etc/hosts.equiv文件相同,但意義卻不同,我們仍然可以以上面的例子來舉例,假設那
些選項是corfu上用戶jane的主目錄下,則它的意義如下:
barbados barbados上的用戶jane是corfu上用戶jane的授權用戶,即前者可以jane這個名字rlogin,rcp,rcmd到corfu,而無需corfu上jane的密碼。
tortola bob tortola上的用戶bob是corfu上的用戶jane的授權用戶。即bob可以jane的名字rlogin,rcp,rcmd到corfu,只要使用社黨的命令參數,不需要給出jane的密碼。
無論系統執行rlogin命令,rcmd命令,還是rcp命令,系統會有一定的工作流程來確定是否已配置了受托訪問。本地主機的受托訪問通常經過以下步驟:1,用戶發出前面提及的r類型命令。2,本地主機解析遠程主機名,並獲得它的IP地址。3,如果不能獲得遠程主機的IP地址,系統將顯示錯誤信息:host_name:Host name lookup failure 。4,如果地道了遠程主機的IP地址,r命令會通過TCP/IP與遠程主機相連。
遠程主機的受托訪問通常經過以下步驟:1,在密碼數據庫上尋找用戶帳戶名稱。2,如果在密碼庫沒有找到帳戶名,系統就不會執行rcmd和rcp命令。執行rlogin命令時則提示用戶輸入密碼,然後顯示該命令執行失敗。3,系統檢查用戶帳戶是否有一個加密的密碼。4,如果
該帳戶沒有密碼,系統即執行r命令。但這樣捉是很危險的。通常系統用戶都應有自己的密碼,尤其是與INTERNET相連的情況下更應注意這一點。5,系統檢查用戶帳戶名,判斷該用戶是否為root,如果不是,系統會檢查/etc/host.equiv中是否有用戶本地主機的名字。如果該文件中列出了本地主機名,系統開始執行r命令。6,如果第五步中檢查到用戶為root,或者雖然不是root,而/etc/host.equiv中也沒有列出主機名,系統會檢查遠程用戶主目錄的.rhosts文件,看看其中是否包括了本地主機名或者本地用戶名,具體使用哪種名稱,取決於r命令的被調用方式。7,如果.rhosts文件包括了所需的選項,系統就執行r命令。