Linux 的系統(tǒng)安全不容忽視.然而系統(tǒng)加固又不是一件很容易的事.本文作者簡(jiǎn)單介紹了一下 Linux 系統(tǒng)深度安全加固.
Linux 系統(tǒng)深度安全加固
author : ayazero drdos@163.com
Personal web -- http://ph4nt0m.net
注:以下內(nèi)容可能不適用于某些場(chǎng)合,請(qǐng)對(duì)號(hào)入座
1. 安裝和升級(jí)
盡量選用最新的 Linux 發(fā)行版本,安裝前拔掉網(wǎng)線,斷開物理連接,安裝時(shí)建議用 custom 自定義方式安裝軟件包,數(shù)量以少為好,一般來(lái)說(shuō)服務(wù)器沒(méi)有必要安裝 X-windows,在 lilo/grub 引導(dǎo)器中加入口令限制,防止能夠物理接觸的惡意用戶因?yàn)?Linux 安裝光盤的 rescue 模式可以跳過(guò)這個(gè)限制,所以還要給bios加上密碼或服務(wù)器機(jī)箱上鎖 /var, /home, /usr, /root 等目錄用獨(dú)立的物理分區(qū),防止垃圾數(shù)據(jù)和日志填滿硬盤而導(dǎo)致 D.o.S 攻擊.
root 賬號(hào)給予強(qiáng)壯的口令.
安裝完畢立即用 up2date 或 apt 升級(jí)系統(tǒng)軟件,有時(shí)升級(jí)內(nèi)核也是必要的,因?yàn)閮?nèi)核出現(xiàn)問(wèn)題同樣會(huì)給攻擊者提供機(jī)會(huì)Apt 是 Debian GNU Linux 下的一個(gè)強(qiáng)大的包管理工具,也可用于其他版本的 Linux.
2. 賬號(hào)
如果系統(tǒng)中的用戶比較多,可以編輯 /etc/login.defs,更改密碼策略
刪除系統(tǒng)中不必要帳戶和組,
[root@ayazero /]# userdel -r username |
最安全的方式是本地維護(hù),可惜不太現(xiàn)實(shí),但還是需要限制 root 的遠(yuǎn)程訪問(wèn),管理員可以用普通賬戶遠(yuǎn)程登錄,然后 su 到 root,我們可以把使用 su 的用戶加到 wheel 組來(lái)提高安全性
在 /etc/pam.d/su 文件的頭部加入下面兩行:
auth sufficient /lib/security/pam_rootok.so debug auth required /lib/security/pam_wheel.so group=wheel |
[root@ayazero /]# usermod -G10 admin |
[root@ayazero /]# rm -f /etc/security/console.apps/servicename |
將命令歷史紀(jì)錄歸為零,盡可能的隱藏你做過(guò)的事情
[root@ayazero /]# unset HISTFILESIZE |
最少服務(wù)原則,凡是不需要的服務(wù)一律注釋掉
在 /etc/inetd.conf 中不需要的服務(wù)前加 "#",較高版本中已經(jīng)沒(méi)有 inetd 而換成了 Xinetd;取消開機(jī)自動(dòng)運(yùn)行服務(wù),把 /etc/rc.d/rc3.d 下不需要運(yùn)行的服務(wù)第一個(gè)字母大寫改稱小寫,或者由 setup 命令啟動(dòng)的 GUI 界面中的 service 更改
如果你希望簡(jiǎn)單一點(diǎn),可以使用 /etc/host.allow,/etc/host.deny 這兩個(gè)文件,但是本文計(jì)劃用 iptables 防火墻,所以不在此詳述.
4. 文件系統(tǒng)權(quán)限
找出系統(tǒng)中所有含 "s" 位的程序,把不必要得 "s" 位去掉,或者把根本不用的直接刪除
[root@ayazero /]# find / -type f ( -perm -04000 -o -perm -02000 ) -exec ls -lg {} [root@ayazero /]# chmod a-s filename |
把重要文件加上不可改變屬性
[root@ayazero /]# chattr +i /etc/passwd [root@ayazero /]# chattr +i /etc/shadow [root@ayazero /]# chattr +i /etc/gshadow [root@ayazero /]# chattr +i /etc/group [root@ayazero /]# chattr +i /etc/inetd.conf [root@ayazero /]# chattr +i /etc/httpd.conf |
找出系統(tǒng)中沒(méi)有屬主的文件:
[root@ayazero /]# find / -nouser -o -nogroup |
[root@ayazero /]# find / -type f ( -perm -2 -o -perm -20 ) -exec ls -lg {} [root@ayazero /]# find / -type d ( -perm -2 -o -perm -20 ) -exec ls -ldg {} |
找出并加固那些歷來(lái)被入侵者利用的文件,比如 .rhosts
編輯 /etc/security/limits.conf,加入或改變?nèi)缦滦?
* hard core 0 * hard rss 5000 * hard nproc 20 |
共2頁(yè): 1 [2] 下一頁(yè) | ||
|