1. 程式人生 > >LINUX主機安全加固

LINUX主機安全加固

1.1 檢查是否存在空口令賬號
檢查方法:
awk -F: '($2 == ""){print}' /etc/passwd
 
備份方法:
cp -p /etc/passwd  /etc/passwd_bak
 
加固方法:
使用命令passwd  <使用者名稱>設定密碼。
 
回退方法:
rsync –avp  /etc/passwd_bak  /etc/passwd
 
1.2 檢查是否設定除root之外UID為0的使用者
檢查方法:
awk -F: '($3 == "0") {print}'/etc/passwd
 
備份方法:
cp -p /etc/passwd  /etc/passwd_bak
 
加固方法:
使用命令passwd -l <使用者名稱>鎖定不必要的超級賬戶。
使用命令passwd -u <使用者名稱>解鎖需要恢復的超級賬戶。
 
回退方法:
rsync –avp  /etc/passwd_bak  /etc/passwd
 
1.3 檢查是否按組進行賬號管理
檢查方法:
cat /etc/pam.d/system-auth
 
備份方法:
cp -p /etc/pam.d/system-auth /etc/pam.d/system-auth_bak
加固方法:
新增以下內容
auth  required pam_tally.so deny=5 unlock_time=600 no_lock_time
account  required  pam_tally.so
 
回退方法:
rsync –avp  /etc/pam.d/system-auth_bak /etc/pam.d/system-auth
 
1.4 檢查是否設定系統引導管理器密碼
檢查方法:
cat /boot/grub/grub.conf
備份方法:
cp -p /boot/grub/grub.conf  /boot/grub/grub.conf_bak
 
加固方法:
grub-md5-crypt
將執行之後的結果集新增配置檔案中/boot/grub/grub.conf
 
回退方法:
rsync –avp  /boot/grub/grub.conf_bak /boot/grub/grub.conf
 
二、       檔案訪問控制
1.1 檢查使用者目錄預設訪問許可權設定
檢查方法:
cat /etc/login.defs
備份方法:
cp -p cat /etc/login.defs   /etc/login.defs_bak
 
加固方法:
vi /etc/login.defs
在末尾增加umask 027或UMASK  027,將預設訪問許可權設定為750。
 
回退方法:
rsync –avp  /etc/login.defs_bak /etc/login.defs
1.2 檢查重要目錄或檔案許可權設定
檢查方法:
cat /etc/profile
 
備份方法:
cp -p /etc/profile/etc/profile_bak
 
加固方法:
在檔案/etc/profile中設定umask 077或UMASK 077
 
回退方法:
rsync –avp  /etc/profile_bak  /etc/profile
 
三、       日誌管理
檢查安全事件日誌配置
檢查方法:
cat /etc/syslog.conf
 
備份方法:
cp -p /etc/syslog.conf/etc/syslog.conf_bak
 
加固方法:
編輯/etc/syslog.conf
配置:
*.err;kern.debug;daemon.notice                          /var/adm/messages
其中/var/adm/messages為日誌檔案。
如果該檔案不存在,則建立該檔案,命令為:
touch /var/adm/messages,並修改許可權為666.命令為:chmod666 /var/adm/messages.  
重啟日誌服務:/etc/init.d/syslogrestart
 
回退方法:
rsync –avp  /etc/syslog.conf_bak  /etc/syslog.conf
 
四、       遠端登入
1.1 檢查是否修改snmp預設團體字
檢查方法:
cat /etc/snmp/snmpd.conf
 
備份方法:
cp -p /etc/snmp/snmpd.conf/etc/snmp/snmpd.conf_bak
 
加固方法:
編輯/etc/snmp/snmpd.conf,修改public預設團體字為使用者自定義團體字。
 
回退方法:
rsync –avp  /etc/snmp/snmpd.conf_bak  /etc/snmp/snmpd.conf
1.2 檢查系統openssh安全配置
檢查方法:
cat /etc/ssh/sshd_config
 
備份方法:
cp -p /etc/ssh/sshd_config/etc/ssh/sshd_config_bak
 
加固方法:
在新增內容/etc/ssh/sshd_config
Protocol 2
PermitRootLogin NO
 
回退方法:
rsync –avp  /etc/ssh/sshd_config_bak /etc/ssh/sshd_config
五、       系統服務
1.1 檢查NFS(網路檔案系統)服務配置
檢查方法:
cat /etc/hosts.allow
 
備份方法:
cp -p /etc/hosts.allow /etc/hosts.allow_bak
 
加固方法:
限制能夠訪問NFS服務的IP範圍,編輯檔案vi /etc/hosts.allow增加一行:portmap允許訪問的IP
 
回退方法:
rsync –avp  /etc/hosts.allow_bak /etc/hosts.allow
 
1.2 檢查是否使用NTP(網路時間協議)保持時間同步
檢查方法:
cat /etc/ntp.conf
 
備份方法:
cp -p /etc/ntp.conf/etc/ntp.conf_bak
 
加固方法:
vi /etc/ntp.conf
配置:server IP地址(提供ntp服務的機器)
 
回退方法:
rsync –avp  /etc/ntp.conf_bak /etc/ntp.conf