close
 

ManagerUser


使用者帳號和群組的管理:

登入:login
遠端登入:
rlogin HostName�?��只能在雙方互相信賴的主機才能使用,
登入對方主機時,是直接以所使用的登入帳號登入,對方只會提示密碼而已。
 
顯示目前所使用的登入帳號:whoami
顯示目前已登入的帳號:who
am i/-m : 只列出和自己相關的登入訊息。
-i/-u/--idle: 顯示閒置時間。. 表示閒置時間在 1 分鐘之內。old 表示閒置時間已在 1 天以上。
-q/--count : 只顯示登入系統的帳號名稱和總人數。
-w/-t/mesg/message/--writable : 顯示使用者是否接受別人傳送過來的訊息。+ : 允許。- : 不允許。? : 無法判斷。
 
得知曾經登入過的使用者:last,它會解讀 /var/log/wtmp 檔案,然後在螢幕上印出。
 
得知曾經登入過的特定使用者:last UserName�?��
 
檢視所有已登入的使用者的動作:w
顯示的結果:
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
USER:登入使用者。
TTY:終端機代號。
FROM:遠端主機的 IP Address 或 Host Name。
LOGIN@:使用者登入時間。
IDLE:使用者閒置時間。
JCPU:該終端機所正在使用的 Process 所佔用的 CPU 時間。
PCPU:執行What 指令所佔用的 CPU 時間。
WHAT:正在執行的指令。
(註每開啟一個 Console 或是 Terminal,w 的使用者數量便加 1。)
 
檢視特定的登入使用者的動作:w UserName
 
以其它的帳號登入,su ( Switch Useraccount ):su [-] username,- 表示使用新登入的帳號的環境變數。
使用su 指令會在/var/log/messages 上留下一筆記錄。
 
只需 Key In 使用者的密碼就能暫時切換成 root 的權限:sudo Command。
權限的相關設定在 /etc/sudoers 中。(Debian GNU/Linux 內定不會安裝這個程式。)
 
除了 root 之外不允許其它帳號登入:使用 touch /etc/nologin,如此會產生 nologin 這一個檔案,
這時系統會除了 root 之外不允許其它帳號登入。
只要不是 root,使用者在 Key In 帳號後,還沒要求密碼之前就被踢出去了。
 
使用單人模式( Single-User Mode):在開機時輸入 linux S。
* 權限相當於 Root。
* 不會掛載檔案系統。
* 無法進入 X-Window,只能使用 Console。
* Server Services 仍會在背景執行。
* 如果在 inittab 中沒有執行 sulogon,則登入時不會要求輸入密碼。
 
/etc/passwd:使用者帳號資料庫,一般的使用者皆可讀取,在讀取檔案權限等狀況下使用。
格式:username:password:uid:gid:gecos:homedir:shell
username : 即使用者帳號。必須是唯一的,最長為 8 個字元。在最前面加 # 號表示帳號停用。
password : 使用 passwd 指令編碼過的密碼。
第一個字元為 *:表示該帳號已經停用或已使用 Shadow Password。
第一個字元為 x:表示該帳號已使用 Shadow Password。
uid : User ID,必須是唯一的。系統內部使用。root 的 User ID 是零。一般使用者的 User ID 由 1000 開始編起。
gid: : Group ID,該帳號的預設群組。對映到 /etc/group。root 的 Group ID 是零。
gecos : General Electric Comprehensive Operating System。關於該帳號的各種資訊。
可以使用 chfn 來改變放在這裡的資料。
homedir : 使用者的主目錄。通常是在 /home/UserName�?��
shell : 該使用者所使用的 Shell 完整目錄名稱。
使用 /bin/false 表示使用者無法使用任何 Shell。(即無法使用 Telnet 或 FTP登入)
 
Shadow Password:/etc/shadow,影子密碼。只有 root 才能讀取。
一般的密碼最多為 8 個字,若使用 MD5 則可以多達 256 個字。
格式:UserName:Password:LastChanged:PassChange:PasswdExpired:ExpiredWarning:DisableTime:AccountExpired
UserName : 即使用者帳號。
Password : 使用 passwd 指令編碼過的密碼。
LastChanged? : 最後一次變更密碼的時間。日期從 1970/01/01 起跳。
PasswdChange? : 使用者可以再次變更密碼最短的間隔。
PasswdExpired? : 使用者下次一定要變更密碼的時間。
ExpiredWarning? : 下次一定要變更密碼的前幾天警告使用者。
DisableTime? : 如果使用者沒有變更密碼,則在幾天之後該帳號即失效。
AccountExpired? : 帳號的使用期限。日期從 1970/01/01 起跳。
 

 

修改使用者的設定:usermod [-c comment] [-d home_dir[ -m]] [-e expire_date] [-f inactive_time] [-g initial_group] [-G group[,...]] [-l login_name] [-p passwd] [-s shell] [-u uid[ -o]] [-L|-U] login
/etc/login.defs:UserID�?��GroupID�?��使用者過期日、信箱位置的設定檔。
/etc/skel:包含了新帳號所需的基本檔案,在建立新帳號時會複製至使用者的主目錄下。
 
新增使用者:(Edit)/etc/passwd / vipw。可以使用 vipw -s 來編輯 /etc/shadow 檔。
  
確認某個使用者帳號是否存在:finger UserName�?��
(但 Debian 預設不會安裝 finger 這個 Daemon。)
 
刪除使用者帳號:
1. 刪除帳號:
移除 /etc/passwd 和 /etc/group 中有關該帳號的項目,並刪除該帳號的主目錄。
userdel [-r] UserName�?��刪除指定的帳號,並刪除該帳號的主目錄。
-r 表示強制刪除主目錄 (/home/UserName) 和郵件目錄 ( /var/spool/mail/UserName )。
2. 刪除使用者在背景所執行的程式。
ps -aux | grep "UserName"
kill [#]ProcessID?
3. 刪除使用者的計時器:
crontab -u UserName -l
crontab -u UserName -r
(Delete)/var/spool/cron/UserName
 
PAM:Pluggable Authentication Method,可抽換的認證法。改變帳號密碼的認證方法。
 
/etc/group:群組資料庫。每一個使用者都至少隸屬於一個群組。
格式:groupname:password:gid:members
groupname : 即群組名稱。必須是唯一的。一般群組的 Group ID 由 1000 開始編起。
password : 群組的密碼,但可有可無。使用者可以使用 newgrp 指令暫時成為某群組的成員。
第一個字元為 * 或是空白:使用者不可以使用 newgrp 指令來暫時成為該群組的成員。
沒有預設的指令可以用來設定群組的密碼。
gid : Group ID,群組識別碼。
members : 群組成員名單。
 
新增群組:groupadd -g GroupID? GroupName?
 
刪除群組:
groupdel GroupName?
移除 /etc/group 中有關該帳號的項目。
 
groups:目前所登入的使用者所屬的群組。
 
groups Usernane1 UserName2 ...:列出 Usernane1 UserName2 ... 所屬的群組。
 
找出使用者所擁有的檔案:
find / -user UserName -ls
find / -uid UserID? -ls(如果帳號已經刪除了。)
 
更新檔案的擁有人:因為系統內部是以 UserID? 來分辨使用者,
所以在刪除帳號後或因故變更 User ID 時,
可以利用 chown -R UserName:DirectoryName 來變更檔案的擁有人。
arrow
arrow
    全站熱搜
    創作者介紹
    創作者 Bluelove1968 的頭像
    Bluelove1968

    藍色情懷

    Bluelove1968 發表在 痞客邦 留言(0) 人氣()