在使用Linux系統(tǒng)的時(shí)候,要堅(jiān)持最小權(quán)限原則
.最小權(quán)限原則(least priviledge)
是指Linux通常希望用戶或者進(jìn)程只擁有足夠完成其工作的權(quán)限,而系統(tǒng)不賦予其更多的特權(quán)读慎。
最高權(quán)限的用戶通常是root
用戶,root
用戶想做什么都可以(代表著最大權(quán)限)暮蹂。如果都使用每個(gè)進(jìn)程都用root
權(quán)限粹断,這對(duì)于系統(tǒng)來說是一個(gè)巨大的安全漏洞杏瞻,因此不能使用root
用戶部署服務(wù)所刀,降低部署進(jìn)程的權(quán)限。使用一個(gè)特定用戶用來做部署特定的服務(wù)是一種比較常用的方式捞挥。對(duì)于該用戶要收縮其所享有的特權(quán)浮创,以防權(quán)限的濫用。因此在Ubuntu中需要管理好相關(guān)用戶砌函。
新建用戶
使用命令useradd
可以新建一個(gè)用戶:
sudo useradd jjz
adduser會(huì)自動(dòng)創(chuàng)建用戶目錄
和shell
,并且自動(dòng)創(chuàng)建分組
蒸矛。
使用passwd命令可以為用戶設(shè)置密碼:
sudo passwd jjz
sudo: unable to resolve host
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully
這樣就可以給用戶jjz設(shè)置一個(gè)密碼了。
使用id
命令可以查看用戶的信息:
sudo id jjz
uid=1000(jjz) gid=100(users) groups=100(users)
使用finger命令可以查看用戶的目錄,shell和輸入的地址等詳細(xì)信息:
sudo finger jjz
Login: jjz Name:
Directory: /home/jjz Shell: /bin/sh
Never logged in.
No mail.
No Plan.
修改和刪除用戶
命令usermod用來修改用戶信息雏掠,修改用戶的登錄名:
usermod -l jjz jjz1
也可以用來把用戶加入到分組中例如:
usermod -g users jjz
還可以用來修改用戶的用戶目錄:
usermod -d /user/jjz jjz
如果想刪除用戶可以使用命名userdel:
userdel jjz
刪除用戶的時(shí)候斩祭,同時(shí)刪除用戶的工作目錄可以使用命令:
userdel -r jjz
用戶與root用戶的切換
使用非root用戶登錄之后,有時(shí)需要執(zhí)行一些具有root權(quán)限的操作乡话,比如安裝系統(tǒng)級(jí)別的軟件摧玫,修改系統(tǒng)文件等,經(jīng)常需要用sudo權(quán)限绑青,這個(gè)時(shí)候我們也可以切換到root用戶進(jìn)行操作,切換root
用戶可以使用命令:
sudo su
切換到root用戶需要驗(yàn)證當(dāng)前用戶密碼诬像。
使用完root用戶之后,可以使用命令切換到登錄其他用戶:
su jjz
或者直接使用exit
即可退出root用戶闸婴,回到登錄用戶坏挠。
給用戶賦予執(zhí)行sudo權(quán)限
當(dāng)新用戶執(zhí)行sudo
的時(shí)候會(huì)提示xxx is not in the sudoers file. This incident will be reported.
,也就是說當(dāng)前用戶是沒有執(zhí)行sudo權(quán)限的。如果我們想讓該用戶擁有執(zhí)行sudo的權(quán)限邪乍,需要給用戶授權(quán)降狠,sudo
權(quán)限的授權(quán)需要修改文件/etc/sudoers
。
首先進(jìn)入root用戶模式:
su
添加文件的寫權(quán)限:
chmod u+w /etc/sudoers
編輯/etc/sudoers
:
vim /etc/sudoers
找到root ALL=(ALL)ALL
在它的下面添加:
jjz ALL=(ALL)ALL
這樣jjz
即可執(zhí)行sudo
庇楞。
如果要撤銷文件的寫權(quán)限可以使用命令:
chmod u-w /etc/sudoers
禁用和啟用root用戶
為了系統(tǒng)的充分執(zhí)行最小授權(quán)原則榜配,我們也可以禁止root用戶登錄,禁用root用戶的命令:
sudo passwd -l root
這樣就禁用了root用戶登錄吕晌,但是root的密碼還保存著蛋褥。
再次啟動(dòng)root登錄,執(zhí)行命令:
sudo passwd -u root