1、基本安全措施shell
一、系統帳號清理安全
(1)、將非登錄用戶的shell設爲/sbin/nologinbash
方法1、usermod -sless
方法2、chsh命令,交互式修改spa
方法3、chsh -s3d
usermod(修改用戶) userdel(刪除用戶) useradd(建立用戶)日誌
可用命令 tail -10 /etc/passwdblog
二、鎖定長期不使用的帳號it
方法一;passwd -l (將在密文前增長2個「!」) 解鎖 passwd -u 查看passwd -s變量
方法2、usermod -L{將在密文前增長一個「!")解鎖usermod -U
若用passwd -l +用戶 鎖定用usermod -u 解鎖必須輸入2次命令usermod -U
三、刪除無用的帳號 userdel{r}
四、鎖定帳號文件
/etc/passwd /etc/shadow
1>鎖定;chattr +/etc/passwd +/etc/shadow
2>解鎖;chattr -i /etc/passwd -i /etc/shadow
3>查看;lsattr /etc/passwd /etc/shadow
例;
二、密碼安全控制
(1)設置密碼有效期
1>修改某個已存在用戶的密碼有效期
chage -M 天數 用戶名
passwd -x 天數 用戶名
2>設置從此添加用戶時的默認密碼有效期
方法一;VI編輯/etc/login.defs文件,修改「pass_MAX_DAN"後面的數值
咧;
vi /etc/login.defs
將99999天改成60天 而後用 useradd wang(建立一個用戶) grep wang /etc/shadow (過濾查看)
(2)要求用戶下次登錄時修改密碼
1>方法:chage -d o 用戶名
三、命令歷史限制
(1)減小歷史的命令條數
1>方法一;vi編輯/ect/profile文件,修改」HISTSIZE="後面的數值
2>方法二;export HISTSIZE=數值
如;方法一;vi 編輯/etc/profile文件,修改「HISTSIZE=100"
把1000改成100
source /etc/profile 使/etc/profile配置文件生效,此時全局生效
方法二;export HISTSIZE=100 僅當前用戶環境生效
export 全局生效 /etc/profile 全局變量
export HISTSIZE=100
(2)註銷時自動清空歷史命令
1>方法;vi編輯宿主目錄下的」.bash_logout"文件,添加「history-c"
2>示例;設置amber用戶註銷時自動清空歷史命令
vi ~amber/.bash_logout
四、終端自動註銷
(1)方法一;VI編輯/etc/profile 文件,添加」TMOUT=數值「
(2)方法二;export TMOUT=數值
(3)示列;閒置600秒後自動註銷
方法一;VI編輯/etc/profile文件,添加」TMOUT=600"
vi /etc/profile
方法二;export TMOUT=600
export TMOUT=600 僅當前用戶環境生效
2、切換用戶
一、做用;切換用戶(Substitute User)
二、su[-]目標用戶 (有「-」初始化環境變量,無「-」環境變量不改變)
三、查看SU操做記錄
安全日誌文件;/var/log/secure
tac /var/log/secure|less
3、提高權限 Sudo 命令
一、SU命令的缺點;
在使用SU命令時,不指定用戶名以默認切換至root用戶,須要輸入root密碼,但實際生產中root密碼是不能夠被普遍告知的。若是須要執行root用戶纔有權限的命令,須要經過sudo命令或wheel組的設置來實現。
二、sudo命令
(1)做用;以其餘用戶身份(默認root身份)執行受權的命令
(2)用法;
sudo受權命令
默認設置爲首次執行時,需輸入當前用戶的登錄密碼,5分鐘內再次執行sudo命令時則無需再次輸入密碼
(3)配置sudo受權
1>方法一;添加單個用戶的sudo受權
visudo或者vi /etc/sudoers(效果相同),添加配置內容
格式;用戶 主機名列表=命令出現列表,命令前加「!」表示「除了」此命令
2>方法二;批量受權 wheel組
HOST Aliase主機名(下圖)
User Aliases用戶名
Command Aliases命令別名
根據示列以及實際需求,設置別名。(建議先複製,再粘貼修改)
設置別名後,添加格式;
用戶別名 主機別名=命令別名(全部別名均大寫)
(4)查看sudo操做記錄
第一步;visudo或者vi /etc/sudoers添加「Defaults logfile=/var/log/sudo"
第二步;cat/var/log/sudo
示列;啓用Defaults logfile 配置,給xiao用戶全部/sbin/以及/usr/sbin/下的命令執行權限,除了關機以及重啓。
visudo
sudo userdel -r xiao5 grep xiao5 /etc/passwd sudo init 0
對不起,用戶 xiao 無權以 root的身份在www.xiao.com上執行/sbin/init 0.
tac /var/log/sudo
五、查詢受權操做 sudo -l 用戶xiao 能夠在該主機上運行如下命令
(root)/sbin/*,(root) /usr/sbin/*,(root) ! /sbin/reboot, (root) !/sbin/init,(root), (root) !/sbin/poweroff, (root) !/sbin/shutdown