欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Linux 管理員手冊(cè)(7)

 更新時(shí)間:2006年10月24日 00:00:00   作者:  

    本章解釋如何產(chǎn)生新用戶帳戶,如何修改帳戶的屬性,如何刪除帳戶。不同的Linux系統(tǒng)有不同的工具實(shí)現(xiàn)。

    什么是帳戶?

  當(dāng)一臺(tái)計(jì)算機(jī)為多人所用時(shí),通常需要區(qū)分用戶,例如,使個(gè)人文件保持個(gè)人化。即使計(jì)算機(jī)同時(shí)只為一人所用,這也很重要,如多數(shù)微機(jī)。 因此,每個(gè)用戶給定一個(gè)單獨(dú)的用戶名,這個(gè)名字被用于登錄。

  用戶除了名字還有更多。一個(gè)帳戶是所有的文件、資源和屬于這個(gè)用戶的信息。這個(gè)屬于暗示是銀行,在一個(gè)商業(yè)系統(tǒng)中,每個(gè)帳戶通常與一些錢有關(guān),且這些錢依賴于用戶使用系統(tǒng)的多少以不同的速度被花掉。例如,磁盤空間可能有個(gè)每MB每天的價(jià)格,處理時(shí)間也可能有個(gè)每秒的價(jià)格。

    創(chuàng)建用戶

  Linux核心自己只不過視用戶為數(shù)字。每個(gè)用戶用一個(gè)單一的整數(shù)識(shí)別,user id或uid,因?yàn)閿?shù)字對(duì)計(jì)算機(jī)來說比文本名字處理更快更容易。核心之外的一個(gè)單獨(dú)的數(shù)據(jù)庫給每個(gè)user id安排了文本的名字,即用戶名username。這個(gè)數(shù)據(jù)庫還包含一些其他信息。

  要產(chǎn)生一個(gè)用戶,需要給用戶數(shù)據(jù)庫增加關(guān)于用戶的信息,并給他產(chǎn)生家目錄。培訓(xùn)用戶、建立合適的初始化環(huán)境也是必要的。

  多數(shù)Linux distributions有產(chǎn)生帳號(hào)的程序,而且有多個(gè)。 adduser 和useradd 是其中2個(gè);可能還有GUI的工具。 Whatever the program, the result is that there is little if any manual work to be done. Even if the details are many and intricate, these programs make everything seem trivial. However, section 8.2.4 describes how to do it by hand.

/etc/passwd和其他信息文件
  Unix系統(tǒng)的基本用戶數(shù)據(jù)庫是文本文件,/etc/passwd (叫口令文件),它列出所有有效用戶名及其相關(guān)信息。文件的每個(gè)用戶一行,分為用:分隔的7個(gè)域:

    用戶名
    加密格式的口令
    數(shù)字的user id
    數(shù)字的group id
    全名或帳戶的其他說明
    家目錄
    登錄shell(登錄時(shí)運(yùn)行的程序)

  詳細(xì)的格式說明在passwd (5)中。

  系統(tǒng)中的任何用戶可以讀口令文件,因此他們可以得到其他用戶的名字。即任何人也可以得到口令(第二個(gè)域)??诹钗募用芰丝诹?,所以利潤上說應(yīng)該沒有問題。但是,加密是可破解的,尤其是口令比較簡單時(shí)(例如太短,或能在詞典中找到的)。因此,口令存在口令文件中并不好。

  許多Linux系統(tǒng)有影子口令shadow passwords文件。這種方法將加密的口令存在另一個(gè)文件/etc/shadow 中,而這個(gè)文件只有root能讀。 /etc/passwd 文件在第二個(gè)域只有一個(gè)special marker。 Any program that needs to verify a user is setuid,那么可以存取影子口令文件。而只使用口令文件其他域的普通程序,不能得到口令。

    取得數(shù)字的用戶和組ID

  多數(shù)系統(tǒng)不管數(shù)字的用戶和組ID是什么,但如果使用網(wǎng)絡(luò)文件系統(tǒng)(NFS),所有系統(tǒng)必須使用相同的uid和gid。因?yàn)镹FS也用uid認(rèn)證用戶。如果不使用NFS,可以用帳戶產(chǎn)生工具自動(dòng)取得的uid。

  如果用NFS,必須用一個(gè)機(jī)制來同步帳戶信息。一個(gè)方法是使用NIS系統(tǒng) (見[Kir])。

  初始環(huán)境:/etc/skel

  當(dāng)新用戶的家目錄產(chǎn)生時(shí),用/etc/skel 目錄的文件初始化。系統(tǒng)管理員可以產(chǎn)生/etc/skel 里的文件給用戶提供一個(gè)好的缺省環(huán)境。例如,產(chǎn)生一個(gè)/etc/skel/.profile 設(shè)定EDITOR環(huán)境變量,提供新用戶一個(gè)友善的編輯器。

  然而,通常最好保持/etc/skel 盡量小,因?yàn)閕t will be next to impossible to update existing users' files. 例如,如果友善的編輯器的名字改變了,所有現(xiàn)存用戶必須編輯他們的.profile 。系統(tǒng)管理員可以用一個(gè)script自動(dòng)完成,但仍可能破壞某個(gè)用戶的文件。

  只要可能,最好把全局設(shè)置放在全局文件中,如/etc/profile 。這樣可以升級(jí),而避免破壞用戶自己的設(shè)置。

    手工創(chuàng)建用戶

  按以下步驟手工創(chuàng)建新用戶:

  用vipw (8)編輯/etc/passwd ,為新用戶增加一個(gè)新行。注意語法。 不要用編輯器直接編輯! vipw 鎖定了這個(gè)文件,其他命令這時(shí)不能更新它。設(shè)定口令域?yàn)?*",這樣不能登錄。

  類似,如果要?jiǎng)?chuàng)建新組,用vigr 編輯/etc/group 。

  用mkdir 產(chǎn)生用戶的家目錄。

  將/etc/skel 中的文件復(fù)制到新的家目錄中。

  用chown 和chmod 修改所有者和權(quán)限。 -R選項(xiàng)是最有用的。 The correct permissions vary a little from one site to another, but usually the following commands do the right thing:

cd /home/newusername
chown -R username.group .
chmod -R go=u,go-w .
chmod go= .

  用passwd (1)設(shè)定口令。

  最后一步設(shè)定完口令,這個(gè)帳戶就能用了。不應(yīng)該在其他所有事做完之前設(shè)定口令,否則這個(gè)用戶可能不允許登錄while you're still copying the files.

  有時(shí)需要產(chǎn)生不為任何人使用的虛假(dummy)帳戶 例如,建立一個(gè)匿名FTP服務(wù)器(這樣任何人都可以從它下載文件,無須得到一個(gè)帳戶),必須產(chǎn)生一個(gè)叫ftp的帳戶。這種情況,通常無須隨后一步的口令設(shè)定。而且,最好不設(shè),這樣沒有人可以使用這個(gè)帳戶,除非先變成root,因?yàn)閞oot可以變成任何用戶。

    改變用戶屬性

  有幾個(gè)改變帳戶不同屬性的命令(即/etc/passwd 中的相關(guān)域):

  chfn
  改變?nèi)颉?
  chsh
  改變登錄shell。
  passwd
  改變口令。

  超級(jí)用戶可以用這些口令改變?nèi)魏螏舻膶傩?。普通用戶只能改變自己帳戶的屬性。有時(shí)可能有必要使這些命令對(duì)普通用戶不可用(用chmod ),例如在一個(gè)有許多新手的環(huán)境中。

  其他任務(wù)需要手工完成。例如改變用戶名,需要編輯/etc/passwd (記?。河胿ipw )。同樣,要增加或刪除用戶to more groups,需要編輯/etc/group (用vigr )。這種任務(wù)較少,需要小心從事:例如,改變了用戶名,電子郵件就不能到達(dá)這個(gè)用戶,除非你同時(shí)產(chǎn)生一個(gè)郵件別名。

    刪除用戶

  要?jiǎng)h除用戶,必須先刪除他的所有文件,然后從/etc/passwd 和/etc/group 刪除相關(guān)的行。有些Linux distributions帶特定的命令,看看有沒有 deluser 或userdel 。然而,手工刪除也很簡單。

    臨時(shí)禁止一個(gè)用戶

  有時(shí)需要臨時(shí)禁止一個(gè)用戶,而不刪除它。例如用戶沒有付費(fèi),或系統(tǒng)管理員懷疑黑客得到了某個(gè)帳戶的口令。

  禁止一個(gè)用戶的最好方法是將它的shell變到一個(gè)特定的只打印出一條信息的程序,用這種方法,任何想登錄此帳戶的人將無法登錄,并得知原因。該信息可以告訴用戶與系統(tǒng)管理員聯(lián)系,以處理任何問題。

  也可以改變用戶名或口令,但這樣用戶不知道怎么回事。 Confused users mean more work.

  產(chǎn)生上述特定程序的一個(gè)簡單方法是寫"tail scripts":

#!/usr/bin/tail +2
This account has been closed due to a security breach.
Please call 555-1234 and wait for the men in black to arrive.
前2個(gè)字符("#!")告訴核心本行的其他部分是解釋本文件要運(yùn)行的命令。這樣tail 命令將輸出處理第一行外的所有東西到標(biāo)準(zhǔn)輸出。
如果懷疑billg是個(gè)安全缺口,系統(tǒng)管理員可以這樣做:

# chsh -s /usr/local/lib/no-login/security billg
# su - tester
This account has been closed due to a security breach.
Please call 555-1234 and wait for the men in black to arrive.
#
su 的目的是此時(shí)改變是否工作。
Tail scripts應(yīng)該放在一個(gè)分離的目錄中,這樣它們的名字不會(huì)干擾普通用戶的命令。


 

相關(guān)文章

最新評(píng)論