今天,我們來講一下Unix操作系統的知識。Unix操作系統是一個比較完善的多用戶操作系統。多個用戶可以在同一個Unix操作系統上進行各自的操作,而不會發生相互的干擾。不過為了提高Unix操作系統多用戶操作的安全性,Unix工程師仍然要采取一些必要的措施。
只允許特定的用戶才能夠關機或者重新啟動操作系統
當有多個用戶在Unix操作系統上進行操作的時候,如果其中某個用戶心血來潮把Unix操作系統關機或者重新啟動的話,那麼對於其他用戶來說就會造成一個致命的打擊。為此通常情況下,Unix操作系統工程師最好能夠限制只有特定的用戶才能夠重新啟動Unix操作系統或者進行關機操作。當某個用戶因為特定的原因需要重新啟動Unix操作系統的話,必須匯報給系統工程師或者其他特定的用戶,讓它來查看其他用戶的現有活動並判斷能否重新啟動操作系統。
通常情下,關閉Unix操作系統或者重新啟動這是超級用戶的特權。這跟Windows操作系統有比較大的差異。雖然說系統工程師通常不會把root超級用戶的密碼告知給其他用戶,但是往往系統工程師還是希望有一個獨立的帳號來管理Unix操作系統的開關機以及重新啟動。特別是把Unix操作系統當作服務器的話,更有必要設置一個獨立的帳號來進行管理。
在Unix操作系統中為了設置一個賬戶具有開關機的權利,沒有在Windows操作系統中那麼簡單,只需要把用戶加入管理組即可。在Unix要創建一個賬戶其具有重新啟動或者關機權利,操作上會稍微麻煩一點。一般來說,通過兩個步驟基本上可以搞定。
第一步:先創建一個普通用戶,並賦予其路徑、命令等相關的參數。如筆者就先通過useradd命令創建一個普通用戶。具體命令如下:Useradd –u 120 –g group –s /bin/sh –d /home/shut –m shut(或者reboot) 。
這個命令主要用來創建一個偶同的用戶。對於這個命令的參數筆者想不用再多過多的說明了。這裡需要強調的一點是,在使用Useradd命令增加用戶的時候,不能夠直接把用戶的UID設置為0(超級用戶的Uid)。因為Unix操作系統不允許重復使用超級用戶的UID。
第二步:賦予其重新啟動或者關機的權限。由於關機或者重新啟動是超級用戶的特權,為此這個用戶建立後還沒有關機的權限。此時需要系統工程師更改相關的文件,讓這個用戶具有這方面的權限。如系統工程師可以修改/etc/passwd文件,找到剛才建立的用戶,並把這個用戶的UID設置為0即可。此時因為用戶的UID為0,故其就有超級用戶的特權。
另外需要注意的是,有時候系統工程師出於安全的考慮,可能希望這個用戶只具有關機或者重新啟動操作系統的權利,而不希望其做其他的事情。因為此時這個賬戶具有了系統root特權用戶的權限,故其對於Unix操作系統來說具有完全控制的權限。這對於Unix操作系統來說可能會存在一定的安全隱患。所以說系統工程師的這個考慮也是必要的。
如果要讓系統工程師之能夠執行shutdown或者reboot命令、而不能夠進行其他任何維護動作的話,則可以修改用戶的.profile文件,將shutdown等命令插入到這個用戶的profile文件中。另外一些有些專家說最好在這個命令前面再加上exec指令,對於這個做法筆者不知可否。筆者個人覺得有點畫蛇添足的味道。各位讀者可以自己去試試看,有否這個必要。
這次,我們關於Unix操作系統的知識,我們就講到這裡。