(1)su與sudo
su:通過su可以在用戶之間切換,如果超級權限用戶root向普通或虛擬用戶切換不需要密碼,什么是權力?這就是!而普通用戶切換到其它任何用戶都需要密碼驗證;
sudo:
sudo扮演的角色注定了它要在安全方面格外謹慎,否則就會導致非法用戶攫取root權限。同時,它還要兼顧易用性,讓系統管理員能夠更有效,更方便地使用它。
# 1. sudo能夠限制指定用戶在指定主機上運行某些命令。
# 2. sudo可以提供日志,忠實地記錄每個用戶使用sudo做了些什么,并且能將日志傳到中心主機或者日志服務器。
# 3. sudo為系統管理員提供配置文件,允許系統管理員集中地管理用戶的使用權限和使用的主機。它默認的存放位置是/etc/sudoers。
# 4.sudo使用時間戳文件來完成類似“檢票”的系統。當用戶執行sudo并且輸入密碼后,用戶獲得了一張默認存活期為5分鐘的“入場券”(默認值可以在編譯的時候改變)。超時以后,用戶必須重新輸入密碼。
配置sudo
???????配置sudo必須通過編輯/etc/sudoers文件,而且只有超級用戶才可以修改它,還必須使用visudo編輯。之所以使用visudo有兩個原 因,一是它能夠防止 兩個用戶同時修改它;二是它也能進行有限的語法檢查。所以,即使只有你一個超級用戶,你也最好用visudo來檢查一下語法。
(2)linux普通用戶獲取管理員權限【待測試】
原文:http://www.cnblogs.com/likwo/p/3435404.html
測試環境:CentOS 5.5
1、添加用戶,首先用adduser命令添加一個普通用戶,命令如下:?
#adduser tommy?
#passwd tommy?? //修改密碼
Changing password for user tommy.
New UNIX password:???? //在這里輸入新密碼
Retype new UNIX password:? //再次輸入新密碼
passwd: all authentication tokens updated successfully.
2、賦予root權限?
方法一:?修改 /etc/sudoers 文件,找到下面一行,把前面的注釋(#)去掉
# Allows people in group wheel to run all commands
%wheel?? ?ALL=(ALL)?? ?ALL
然后修改用戶,使其屬于root組(wheel),命令如下:
#usermod -g root tommy
修改完畢,現在可以用tommy帳號登錄,然后用命令?su -?,即可獲得root權限進行操作。
方法二:?修改 /etc/sudoers 文件,找到下面一行,在root下面添加一行,如下所示:
## Allow root to run any commands anywhere
root?? ?ALL=(ALL) ?? ?ALL
tommy?? ALL=(ALL) ?? ?ALL
修改完畢,現在可以用tommy帳號登錄,然后用命令 su - ,即可獲得root權限進行操作。
方法三:?修改 /etc/passwd 文件,找到如下行,把用戶ID修改為 0 ,如下所示:
tommy:x:500:500:tommy:/home/tommy:/bin/bash
修改后如下
tommy:x:0:500:tommy:/home/tommy:/bin/bash
保存,用tommy賬戶登錄后,直接獲取的就是root帳號的權限。
友情提醒:雖然方法三看上去簡單方便,但一般不推薦使用,推薦使用方法二。?
<轉自結束>
#######################################################
不過貌似上面紅色加粗的那個su -?,我平時用的都是sudo。我不知道作者是筆誤還是什么,因為用su的話,是需要知道root的密碼的,所以sudo會好一點。
?
(3)Linux用戶、用戶組學習筆記
- /etc/passwd文件格式:用戶名:密碼:UID:GID:用戶信息:HOME目錄路徑:用戶shell;
- /etc/shadow保存用戶密碼信息,包括加密后的密碼,密碼過期時間,密碼過期提示天數等;
- /etc/group文件中保存用戶組信息格式如下:用戶組名:組密碼:GID:組內帳號(多個帳號用逗號分隔);查看當前用戶的用戶組命令:[root@local opt]#groups
查看當前用戶的用戶組命令:[root@local opt]#groups
root bin daemon sys adm disk wheel輸出的信息中,第一個用戶組為當前用戶的有效用戶組(當前用戶組)
切換有效用戶組命令:[root@local opt]#newgrp 用戶組名.要離開新的有效用戶組,則輸入exit回車。
新建用戶命令:[root@local opt]#useradd 用戶名 -g 初始用戶組 -G 其他用戶組(修改/etc/group) -c 用戶說明 -u 指定UID
建完用戶需要為用戶設置密碼:[root@local opt]#passwd 用戶名
用戶要修改自己密碼命令:[root@local opt]#passwd
修改用戶信息命令:[root@local opt]#usermod 參數 用戶名
參數:
-c 說明
-g 組名 初始用戶組
-e 過期日期 格式:YYYY-MM-DD
-G 組名 其他用戶組
-l 修改用戶名
-L 鎖定賬號(在/etc/shadow文件中用戶對應密碼密碼串的前面加上兩個嘆號(!!))
-U 解鎖
刪除用戶命令:[root@local opt]#userdel [-r] 用戶名
其中,參數-r為刪除用戶的home目錄。
其實,可能在系統其他地方也有該用戶文件,要完整刪除一個用戶和其文件要先找到屬于他的文件:
[root@local opt]#find / -user 用戶名
然后刪除,再運行userdel刪除用戶。
查看可用shell命令:[root@local opt]#chsh -l
修改自己的shell命令:[root@local opt]#chsh -s
查看自己或某人UID/GID信息:[root@local opt]#id [用戶名]返回信息中groups為有效用戶組
新增用戶組命令:[root@local opt]#groupadd 用戶組名
修改用戶組名命令:[root@local opt]#groupmod -n 名稱
刪除用戶組命令:[root@local opt]#groupdel 用戶組名
設置用戶組密碼命令:[root@local opt]#gpasswd 用戶組名
如果gpasswd加上參數則有其他功能
設置用戶組管理員命令:[root@local opt]#gpasswd -A 用戶名 用戶組名
添加某帳號到組命令:[root@local opt]#gpasswd -M 用戶名 用戶組名
從組中刪除某帳號命令:[root@local opt]#gpasswd -d 用戶名 用戶組名
passwd相關參數操作:
-l 鎖用戶
-u 解鎖用戶
-n 天數 密碼不可改天數
-x 天數 密碼過期天數
-w 天數 警告天數
?
(4)文件權限
[root@local opt]#ls -al
ls -al 命令是列出目錄的所有文件,包括隱藏文件。隱藏文件的文件名第一個字符為'.'
-rw-r--r--? 1 root root??? 81 08-02 14:54 gtkrc-1.2-gnome2
-rw-------? 1 root root?? 189 08-02 14:54 ICEauthority
-rw-------? 1 root root??? 35 08-05 10:02 .lesshst
drwx------? 3 root root? 4096 08-02 14:54 .metacity
drwxr-xr-x? 3 root root? 4096 08-02 14:54 nautilus
列表的列定義如下:
[權限屬性信息] [連接數] [擁有者] [擁有者所屬用戶組] [大小] [最后修改時間] [文件名]
權限屬性列表為10個字符:
第一個字符表示文件類型,d為目錄 -為普通文件 l為連接 b為可存儲的接口設備 c為鍵盤鼠標等輸入設備
2、3、4個字符表示所有者權限,5、6、7個字符表示所有者同組用戶權限,8、9、10為其他用戶權限
第二個字符表示所有者讀權限,如果有權限則為r,沒有權限則為-
第三個字符表示所有者寫權限,如果有權限則為w,沒有權限則為-
第四個字符表示所有者執行權限,如果有權限則為x,沒有權限則為-
第五個字符表示所有者同組用戶讀權限,如果有權限則為r,沒有權限則為-
第六個字符表示所有者同組用戶寫權限,如果有權限則為w,沒有權限則為-
第七個字符表示所有者同組用戶執行權限,如果有權限則為x,沒有權限則為-
第八個字符表示其他非同組讀權限,如果有權限則為r,沒有權限則為-
第九個字符表示其他非同組寫權限,如果有權限則為w,沒有權限則為-
第十個字符表示其他非同組執行權限,如果有權限則為x,沒有權限則為-
?
(5)Linux里的終端用mkdir創建目錄提示權限不夠
?
?
(6)LINUX 命令行變成-bash-4.2$?
?
?
?
參考帖子:
(1)linux?用戶創建、管理、權限分配(總結)
(2)Linux用戶、用戶組、文件權限學習筆記
?