歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux服務器 >> Red Hat Linux 安全設置指南

Red Hat Linux 安全設置指南

日期:2017/3/2 16:44:32   编辑:Linux服務器

1,最小化安全系統,刪除不必要的軟件,關閉不必要的服務.

# ntsysv
以下僅列出需要啟動的服務,未列出的服務一律推薦關閉,必要運行的服務再逐個打開.
atd
crond
irqbalance
microcode_ctl
network
sshd
syslog

2,刪除finger程序,具體方法如下

#rpm –e finger

3,BOIS安全設置

4,帳號安全設置

修改/etc/login.def文件
PASS_MAX_DAYS 120 ?設置密碼過期日期
PASS_MIN_DAYS 0 ?設置密碼最少更改日期
PASS_MIN_LEN 10 ?設置密碼最小長度
PASS_WARN_AGE 7 ?設置過期提前警告天數
確保/etc/shadow為root只讀
確保/etc/passwd為root讀寫

定期用密碼工具檢測用戶密碼強度

5, /etc/exports

如果通過NFS把文件共享出來,那麼一定要配置”/etc/exports”文件,使得訪問限制盡可能的嚴格.這就是說,不要使用通配符,不允許對根目錄有寫權限,而且盡可能的只給讀權限.在/etc/exports文件加入:
/dir/to/export host1.mydomain.com(ro,root_squash)
/dir/to/export host2.mydomain.com(ro,root_squash)
建議最好不要使用NFS.

6,inetd.conf或xinetd.conf
如果是inetd.conf建議注釋掉所有的r開頭的程序,exec等

7,TCP_Wrappers
在/etc/hosts.allow中加入允許的服務,在/etc/hosts.deny裡加入這麼一行ALL:ALL

8,/etc/aliases文件

Aliases文件如果管理錯誤或管理粗心就會造成安全隱患.把定義”decode”這個別名的行從aliases文件中刪除.
編輯aliases,刪除或注釋下面這些行:
#games: root
#ingres: root
#system: root
#toor: root
#uucp: root
#manager: root
#dumper: root
#operator: root
#decode: root
運行/usr/bin/nesaliases重新加載.

9,防止sendmail被沒有授權的用戶濫用

編輯sendmail.cf
把PrivacyOptions=authwarnings
改為PrivacyOptions=authwarnings,noexpn,novrfy

10,不響應ping

echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all

11,使TCP SYN Cookie保護生效

Echo 1 > /proc/sys/net/ipv4/tcp_syncookies

12,刪除不必要的用戶和組用戶

刪除的用戶,如adm,lp,sync,shutdown,halt,news,uucp,operator,games,gopher等
刪除的組,如adm,lp,news,uucp,games,dip,pppusers,popusers,slipusers等
可以設置不可更改位
chattr +i /etc/passwd
chattr +i /etc/shadow
chattr +i /etc/group
chattr +i /etc/gshadow

13,防止任何人都可以用su命令成為root

編輯su文件(vi /etc/pam.d/su),加入如下兩行
auth sufficient /lib/security/pam_rootok.so debug
auth required /lib/security/pam_wheel.so group=wheel
把能su為root的用戶加入wheel組
usermod -G10 username

14,使Control+Alt+Delete關機鍵無效

編輯inittab文件,注釋掉
Ca:ctrlaltdel:/sbin/shutdown –t3 –r now
運行/sbin/init q 使設置生效

15,創建所有重要的日志文件的硬拷貝

如果服務器比較重要,可以考慮把ssh,mail,引導信息等打印出來.在/etc/syslog.conf文件中加入一行.:
Authpriv.*;mail.*;local7.*;auth.*;daemon.info /dev/lp0
執行/etc/rc.d/init.d/syslog restart
或者把日志發送到其它服務器保存

authpriv.* /var/log/secure
要把它發送到192.168.0.2,就可以這樣修改
authpriv.* @192.168.0.2 /var/log/secure

16,改變/etc/rc.d/init.d目錄下的腳本文件的訪問許可

chmod –R 700 /etc/rc.d/init.d/*
注意:慎重修改此安全設置

17,/etc/rc.d/rc.local

把此文件中無關的信息全部注釋,不讓任何人看到任何有關主機的信息.
刪除/etc下的issue和issue.net

18,帶S位的程序

可以清除s位的程序包括但不限於:
從來不用的程序;
不希望非root用戶運行的程序;
偶爾用用,但是不介意先用su命令變為root後再運行.
find / -type f \( -perm 04000 –o –perm -02000 \) -print
chmod a-s 程序名

19,查看系統隱藏文件

find / -name “.*” –print

20,查找任何人都有寫權限的文件和目錄

find / -type f \( -perm -2 -o perm -20 \) ls
find / -type f \( -perm -2 –o –perm -20 \) ls

21,查找系統中沒有主人的文件

find / -nouser –o –nogroup

22,查找.rhosts文件

find /home -name ".rhosts"
如果有,請刪除它.

23,收回系統編譯器的權限或刪除

如: chmod 700 /usr/bin/gcc

Copyright © Linux教程網 All Rights Reserved