LINUX主機安全加固
阿新 • • 發佈:2019-01-22
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
檢查方法:
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