[系統賬號清理]
將非登錄用戶的Shell設爲/sbin/nologin
如bin,daemon,adm,lp,mail,nobody,apache,mysql,dbus,ftp,gdm,haldaemon等
鎖定長期不使用的賬號
usermod -L abc //鎖定賬號
usermod -U abc //解鎖賬號
passwd -S //查看賬號狀態
刪除無用的賬號
如new,uucp,games,gopher等
鎖定賬號文件passwd、shadow
chattr +i /etc/passwd /etc/shadow //鎖定文件
chattr -i /etc/passwd /etc/shadow //解鎖文件
lsattr /etc/passwd /etc/shadow //查看鎖定狀態
[密碼安全控制]
設置密碼有效期
[root@steven ~]# vi /etc/login.defs #適用於新建的用戶 …… PASS_MAX_DAYS 30 [root@steven ~]# chage -M 30 lisi #使用於已有的lisi用戶
要求用戶下次登錄時修改密碼
[root@steven ~]# chage -d 0 zhangsan #強制在下次登錄時更改密碼
[命令歷史限制]
減少記錄的命令條數
[root@steven ~]# vi /etc/profile …… HISTSIZE=200 #適用於新登錄用戶 export HISTSIZE=200 #適用於當前用戶
註銷時自動清空命令歷史
[root@steven ~]# vi ~/.bash_logout …… history -c clear
[終端自動註銷]
閒置600秒後自動註銷
[root@steven ~]# vi ~/.bash_profile …… export TMOUT=600
[su用途及用法]
用途:Substitute User,切換用戶
格式:su - 目標用戶
"-"等同於"--login"或"-l",表示切換後進入目標用戶的登錄shell環境
密碼驗證
root → 任意用戶, 不驗證密碼
普通用戶 → 其他用戶,驗證目標用戶的密碼
限制使用su命令的用戶
啓用pam_wheel認證模塊
[root@steven ~]# vim /etc/pam.d/su #%PAM-1.0 auth required pam_wheel.so use_uid
將允許使用su命令的用戶加入wheel組
[root@steven ~]# gpasswd -a abc wheel Adding user abc group wheel
查看su操作記錄
安全日誌文件:/var/log/secure
[sudo用途及用法]
用途:以其他用戶身份(如root)執行授權的命令
用法:sudo 授權命令
密碼驗證
初次執行sudo命令時,驗證當前用戶的密碼
不需驗證目標用戶的密碼
配置sudo授權
visudo 或者 vi /etc/sudoers
記錄格式:用戶 主機名列表=命令程序列表
[root@steven ~]# visudo …… %wheel ALL=NOPASSWD: ALL jerry localhost=/sbin/ifconfig #支持“*”通配,“!”取反 syriane localhost=/sbin/*,!/sbin/ifconfig,!/sbin/route #支持命令別名,類似別名還包括:User_Alias、Host_Alias Cmnd_Alias PKGTOOLS=/bin/rpm,/usr/bin/yum mike localhost=PKGTOOLS
查看sudo操作記錄
需啓用 Defaults logfile 配置
默認日誌文件:/var/log/sudo
[root@steven ~]# visudo …… Defaults logfile = "/var/log/sudo"
查詢授權的sudo操作
sudo -l
[abc@steven ~]$ sudo -l [sudo] password for syrianer: #初次使用sudo時需驗證當前用戶的密碼 …… User syrianer may run the following commands on this host: (root) /sbin/*, (root) !/sbin/ifconfig, (root) !/sbin/route #默認超時爲5分鐘,在此期間不再重複驗證 [abc@steven ~]$ sudo /sbin/fdisk -l …… Device Boot Start End Blocks Id System /dev/sda1 * 1 13 104391 83 Linux /dev/sda2 14 10443 83778975 8e Linux LVM
[開關機安全控制]
調整BIOS引導設置
將第一引導設備設爲當前系統所在硬盤
禁止從其他設備(光盤、U盤、網絡)引導系統
將安全級別設爲setup,並設置管理員密碼
禁用重啓熱鍵Ctrl+Alt+Del
避免因用戶誤操作導致重啓
[root@steven ~]# vi /etc/inittab …… #ca::ctrlaltdel:/sbin/shutdown -t3 -r now [root@steven ~]# init q #重新讀取配置
GRUB菜單限制
未經授權禁止修改啓動參數
未經授權禁止進入指定系統
密碼設置方式(grub.conf)
password 明文密碼串
password --md5 加密密碼串
密碼記錄的位置
全局部分(第一個“title”之前)
系統引導部分(每個“title”部分之後)
GRUB限制的實現
使用grub-md5-crypt獲得加密字串
[root@steven ~]# grub-md5-crypt Password: Retype password: $1$Kndw50$wRW2w1v/jbZ8n5q2fON4y/
修改grub.conf文件,添加密碼記錄
[root@steven ~]# vi /boot/grub/grub.conf …… password --md5 $1$Kndw50$wRW2w1v/jbZ8n5q2fON4y/ title Red Hat Enterprise Linux Server (2.6.18-194.el5) root (hd0,0) kernel /vmlinuz-2.6.18-194.el5 ro root=/dev/VolGroup00/LogVol00 initrd /initrd-2.6.18-194.el5.img
修改系統登錄提示
本機登錄提示:/etc/issue
網絡登錄提示:/etc/issue.net
減少開放終端個數
[root@steven ~]# vi /etc/inittab …… #禁用三個終端:tty1、tty2、tty3 # Run gettys in standard runlevels #1:2345:respawn:/sbin/mingetty tty1 #2:2345:respawn:/sbin/mingetty tty2 #3:2345:respawn:/sbin/mingetty tty3 4:2345:respawn:/sbin/mingetty tty4 5:2345:respawn:/sbin/mingetty tty5 6:2345:respawn:/sbin/mingetty tty6 [root@steven ~]# init q
限制root只在安全終端登錄
安全終端配置:/etc/securetty
[root@steven ~]# vi /etc/securetty …… #禁止root用戶從終端tty5、tty6登錄 tty1 tty2 tty3 tty4 #tty5 #tty6
禁止普通用戶登錄
建立/etc/nologin文件
刪除nologin文件或重啓後即恢復正常
[root@steven ~]# touch /etc/nologin #禁止普通用戶登錄 [root@steven ~]# rm -rf /etc/nologin #取消上述登錄限制