如果您正在關(guān)注Linux系統(tǒng)的安全性,那么這些命令是您必須知道的。
Linux系統(tǒng)的安全性有很多問題——從設(shè)置帳戶到確保合法用戶的權(quán)限沒有超出工作所需。本文將介紹用于Linux系統(tǒng)日常工作的一些最基本的安全命令。
sudo
使用sudo運(yùn)行特權(quán)命令——而不是將用戶切換到根用戶,是一種必不可少的良好實(shí)踐,因?yàn)樗兄诖_保只在需要時(shí)使用根特權(quán),并限制錯(cuò)誤的影響。您對(duì)sudo命令的訪問取決于/etc/sudoers和/etc/group文件中的設(shè)置。
$%20sudo%20adduser%20shark
Adding%20user%20`shark'%20...
Adding%20new%20group%20`shark'%20(1007)%20...
Adding%20new%20user%20`shark'%20(1007)%20with%20group%20`shark'%20...
Creating%20home%20directory%20`/home/shark'%20...
Copying%20files%20from%20`/etc/skel'%20...
Enter%20new%20UNIX%20password:
Retype%20new%20UNIX%20password:
passwd:%20password%20updated%20successfully
Changing%20the%20user%20information%20for%20shark
Enter%20the%20new%20value,%20or%20press%20ENTER%20for%20the%20default
%20Full%20Name%20[]:%20shark
%20Room%20Number%20[]:
%20Work%20Phone%20[]:
%20Home%20Phone%20[]:
%20Other%20[]:
Is%20the%20information%20correct?%20[Y/n]%20Y
例如,如果您運(yùn)行sudo并詢問您是誰,您將得到以root身份運(yùn)行該命令的確認(rèn)。
$%20sudo%20whoami
root
如果要為用戶管理sudo設(shè)置,還需要熟悉visudo命令。
visudo
visudo命令允許您在文本編輯器中打開文件并檢查語法更改,從而更改/etc/sudoers文件。使用“sudo%20visudo”運(yùn)行命令,并確保理解語法。特權(quán)可以由用戶或組分配。在大多數(shù)Linux系統(tǒng)上,/etc/sudoers文件已經(jīng)配置了如下所示的組,這些組允許將特權(quán)分配給在/etc/group文件中設(shè)置的組。在這些情況下,您根本不需要使用visudo命令—只需熟悉以這種方式授予根特權(quán)的組,并更新/etc/group文件。
%admin%20ALL=(ALL)%20ALL
%sudo%20ALL=(ALL:ALL)%20ALL
%wheel%20ALL=(ALL:ALL)%20ALL
注意組名前面有%符號(hào)。
您可以像這樣在/etc/group文件中顯示提供sudo訪問的組,因?yàn)樗赡苁沁@些文件之一:
$%20egrep%20"admin|sudo|wheel"%20/etc/group
sudo:x:27:shs,jdoe
給某人sudo特權(quán)最簡(jiǎn)單的方法是將他們添加到/etc/group.中的授權(quán)組中但是,這意味著它們可以作為根用戶運(yùn)行任何命令。如果你想讓一些用戶對(duì)有限的命令集擁有根權(quán)限(例如,添加和刪除帳戶),你可以定義你想讓他們能夠通過命令別名運(yùn)行的命令:
Cmnd_Alias%20ACCT_CMDS%20=%20/usr/sbin/adduser,%20/usr/sbin/deluser
然后讓用戶或組能夠運(yùn)行這些命令使用sudo命令與這些命令之一:
nemo ALL=(ALL) ACCT_CMDS
%techs ALL=(ALL:ALL) ACCT_CMDS
第一行允許用戶“nemo”使用sudo運(yùn)行twp (adduser和deluser)命令,而第二行將相同的特權(quán)分配給/etc/group文件中“tech”組中的任何人。