日本免费全黄少妇一区二区三区-高清无码一区二区三区四区-欧美中文字幕日韩在线观看-国产福利诱惑在线网站-国产中文字幕一区在线-亚洲欧美精品日韩一区-久久国产精品国产精品国产-国产精久久久久久一区二区三区-欧美亚洲国产精品久久久久

SCO UNIX 系統(tǒng)管理員必看---系統(tǒng)安全( 二 )


當(dāng)文件長于10塊時又怎樣呢?磁盤地址表中的第十一項給出一個塊號,這個塊號指出的塊中含有256個塊號,至此,這種方法滿足了至多長于266塊的文
件(272,384字節(jié)).如果文件大于266塊,磁盤地址表的第十二項給出一個塊號,
這個塊號指出的塊中含有256個塊號,這256個塊號的每一個塊號又指出一塊,塊中含256個塊號,這些塊號才用于取文件的內(nèi)容.磁盤地址中和第十三項索引尋址方式與第十二項類似,只是多一級間接索引.
這樣,在UNIX系統(tǒng)中,文件的最大長度是16,842,762塊,即17,246,988,288
字節(jié),有幸是是UNIX系統(tǒng)對文件的最大長度(一般為1到2M字節(jié))加了更實際的限制,使用戶不會無意中建立一個用完整個磁盤窨所有塊的文件.
文件系統(tǒng)將文件名轉(zhuǎn)換為i節(jié)點的方法實際上相當(dāng)簡單.一個目錄實際上
是一個含有目錄表的文件:對于目錄中的每個文件,在目錄表中有一個入口項,入口項中含有文件名和與文件相應(yīng)的i節(jié)點號.當(dāng)用戶敲入cat xxx時,文件系
統(tǒng)就在當(dāng)前目錄表中查找名為xxx的入口項,得到與文件xxx相應(yīng)的i節(jié)點號,然后開始取含有文件xxx的內(nèi)容的塊.
(2)設(shè)備文件
UNIX系統(tǒng)與邊在本系統(tǒng)上的各種設(shè)備之間的通訊,通過特別文件來實現(xiàn),
就程序而言,磁盤是文件,MODEM是文件,甚至內(nèi)存也是文件.所有連接到系統(tǒng)上的設(shè)備都在/dev目錄中有一個文件與其對應(yīng).當(dāng)在這些文件上執(zhí)行I/O操作時,由UNIX系統(tǒng)將I/O操作轉(zhuǎn)換成實際設(shè)備的動作.例如,文件/dev/mem是系統(tǒng)的內(nèi)存,如果cat這個文件,實際上是在終端顯示系統(tǒng)的內(nèi)存.為了安全起見,這個文件對普通用戶是不可讀的.因為在任一給定時間,內(nèi)存區(qū)可能含有用戶登錄口令或運行程序的口令,某部分文件的編輯緩沖區(qū),緩沖區(qū)可能含有用ed -x命令解密后的文本,以及用戶不愿讓其他人存取的種種信息.在/dev中的文件通常稱為設(shè)備文件,用ls /dev命令可以看看系統(tǒng)中的一些設(shè)備:
acuo 呼叫自動撥號器
console 系統(tǒng)控制臺
dsknn 塊方式操作磁盤分區(qū)
kmem 核心內(nèi)存
mem 內(nèi)存
lp 打印機
mto 塊方式操作磁帶
rdsknn 流方式操作的磁盤分區(qū)
rmto 流方式操作的磁帶
swap 交換區(qū)
syscon 系統(tǒng)終端
ttynn 終端口
x25 網(wǎng)絡(luò)端口
等等
(3)/etc/mknod命令
用于建立設(shè)備文件.只有root能使用這個命令建立設(shè)備文件.其參數(shù)是文
件名,字母c或b分別代表字符特別文件或塊特別文件,主設(shè)備號,次設(shè)備號.塊特別文件是像磁帶,磁盤這樣一些以塊為單位存取數(shù)據(jù)的設(shè)備.字符特別文件.是如像終端,打印機,MODEM,或者其它任何與系統(tǒng)通訊時,一次傳輸一個字符的
設(shè)備,包括模仿對磁盤進行字符方式存取的磁盤驅(qū)動器.主設(shè)備號指定了系統(tǒng)
子程序(設(shè)備驅(qū)動程序),當(dāng)在設(shè)備上執(zhí)行I/O時,系統(tǒng)將調(diào)用這個驅(qū)動程序.調(diào)
用設(shè)備驅(qū)動程序時,次設(shè)備號將傳遞給該驅(qū)動程序(次設(shè)備規(guī)定具體的磁盤驅(qū)
動器,帶驅(qū)動器,信號線編號,或磁盤分區(qū)).每種類型的設(shè)備一般都有自己的設(shè)
備驅(qū)動程序.
文件系統(tǒng)將主設(shè)備號和次設(shè)備號存放在i節(jié)點中的磁盤地址表內(nèi),所以沒
有磁盤空間分配給設(shè)備文件(除i節(jié)點本身占用的磁盤區(qū)外).當(dāng)程序試圖在設(shè)
備文件上執(zhí)行I/O操作時,系統(tǒng)識別出該文件是一個特別文件,并調(diào)用由主設(shè)備號指定的設(shè)備驅(qū)動程序,次設(shè)備號作為調(diào)用設(shè)備驅(qū)動程序的參數(shù).
(4)安全考慮
將設(shè)備處理成文件,使得UNIX程序獨立于設(shè)備,即程序不必一定要了解正
使用的設(shè)備的任何特性,存取設(shè)備也不需要記錄長度,塊大小,傳輸速度,網(wǎng)絡(luò)
協(xié)議等這樣一些信息,所有煩人的細(xì)節(jié)由設(shè)備驅(qū)動程序去關(guān)心考慮,要存取設(shè)
備,程序只須打開設(shè)備文件,然后作為普通的UNIX文件來使用.從安全的觀點來看這樣處理很好,因為任何設(shè)備上進行的I/O操作只經(jīng)過了少量的渠道(即設(shè)備文件).用戶不能直接地存取設(shè)備.所以如果正確地設(shè)置了磁盤分區(qū)的存取許可,用戶就只能通過UNIX文件系統(tǒng)存取磁盤.文件系統(tǒng)有內(nèi)部安全機制(文件許可).不幸的是,如果磁盤分區(qū)設(shè)備得不正確,任何用戶都能夠?qū)懸粋€程序讀磁盤分區(qū)中的每個文件,作法很簡單:讀一i節(jié)點,然后以磁盤地址表中塊號出現(xiàn)的順序,依次讀這些塊號指出的存有文件內(nèi)容的塊.故除了root以外,決不要使盤分區(qū)對任何人可寫.因為所有者,文件存取許可方式這樣一些信息存放于i節(jié)點中,任何人只要具有已安裝分區(qū)的寫許可,就能設(shè)置任何文件的SUID許可,而不管文件的所有者是誰,也不必用chmod()命令,還可避過系統(tǒng)建立的安全檢查.以上所述對內(nèi)存文件mem,kmem和對換文件swap也是一樣的.這些文件含有用戶信息,一個"耐心"的程序可以將用戶信息提取出來.

推薦閱讀