打造LINUX系统安全(早期学习笔记)
1、LILO安全設(shè)置
vi /etc/lilo.conf.anaconda????? //修改LILO文件===============================================
……
restricted????????????????? //加入這行
password=111111???????????? //加入這行并設(shè)置密碼為111111
……
================================================
chmod 600 /etc/lilo.conf.anaconda?? //設(shè)置為ROOT權(quán)限讀取
/sbin/lilo -v?????????????????????? //更新系統(tǒng),使上述操作生效
chattr +i /etc/lilo.conf.anaconda?? //設(shè)置LILO文件是不可寫
2、設(shè)置默認(rèn)口令和帳號(hào)長(zhǎng)度與有效期
vi /etc/login.defs????????????? //修改login.defs文件================================================
……
PASS_MAX_DAYS 99999
PASS_MIN_DAYS 0
PASS_MIN_LEN?? 8?????????????????? //修改系統(tǒng)默認(rèn)密碼長(zhǎng)度為8位
PASS_WARN_AGE 7?????????????????? //口令有效期為7天
3、清除不設(shè)口令的帳號(hào)
vi /etc/passwd????????????????????? //修改passwd文件 =================================================
……
elain::500:501:elain:/home/elain:/bin/bash
……
//帳號(hào)elain 沒(méi)有設(shè)置口令。因?yàn)榈诙?xiàng)為空,說(shuō)明此帳號(hào)無(wú)密碼,這是非常危險(xiǎn)的,應(yīng)該將此類帳號(hào)刪除或給它設(shè)置口令。
4、特別的帳號(hào)處理
刪除無(wú)用的用戶和組用戶
命令如下:
刪除用戶 :userdel username
刪除組用戶:groupdel groupname
刪除下列的用戶:
adm
lp
sync
shutdown
halt
mail
--------------
news
uucp
operator
games????????????????????????? //若沒(méi)有MAIL服務(wù)器可刪除
--------------
gopher????????????????????????? //若沒(méi)有X Windows服務(wù)器可刪除
ftp???????????????????????????? //若不允許匿名訪問(wèn) FTP刪除此帳號(hào)
5、權(quán)限與文件系統(tǒng)
lsattr????????????????????????? //列出文件的屬性
chattr????????????????????????? //改變文件的屬性
a??????????????????????? //只可添加屬性
i??????????????????????? //不可改變屬性
修改系統(tǒng)中關(guān)鍵文件如下:
passwd
passwd._
shadow
shadown._
xinetd.conf
services
lilo.conf等
例:chmod 600 /etc/xinetd.conf???? //修改文件屬主為root
chattr +(-)i /etc/xinetd.conf????? //設(shè)置為不能(取消)修改
6、限制系統(tǒng)使用資源
vi /etc/security/limits.conf
=================================================
……
加入或修改下面這幾行:
*hard core 0???????????????? //禁止創(chuàng)建core文件
*hard rss?? 5000????????????? //除root外,其它用戶內(nèi)存使用為5M
*hard nproc 20??????????????? //限制最多進(jìn)程為20
vi /etc/pam.d/login
=================================================
……
session required /lib/security/pam_limits.so
//在文件末尾加入上面這一行
7、設(shè)置自動(dòng)注銷帳號(hào)的登錄
vi /etc/profile
===================================================
……
HOSTNAME='/bin/hostname'
HISTSIZE=1000?????? //這是歷史記錄數(shù),越小越好
tmout=300?????????? //添加此行,表示系統(tǒng)在五分鐘內(nèi)沒(méi)有任何操作,將自動(dòng)這個(gè)帳號(hào)注銷
8、/etc/securetty文件安全設(shè)置
vi /etc/securetty
====================================================
tty1
#tty2
……
#tty11????????????? //在默認(rèn)的內(nèi)容中注釋掉除tty1外的所有tty,表示root只能在tty1終端登錄
9、禁止外來(lái)PING請(qǐng)求,防止補(bǔ)攻擊
vi /etc/rc.d/rc.local
====================================================
echo 1>/proc/sys/net/ipv4/icmp_echo_ignore_all
//添加上面一行,可阻止系統(tǒng)響應(yīng)任何外來(lái)的PING請(qǐng)求
10、限制顯示出系統(tǒng)版本信息
當(dāng)用戶進(jìn)入LINUX系統(tǒng)時(shí)系統(tǒng)將告訴用戶LINUX版本號(hào),內(nèi)核版本號(hào)和服務(wù)器主機(jī)名。
vi /etc/rc.d/rc.local
=====================================================
在里面添加如下:
……
#This will overwrite /etc/issue at every boot.So,make any changesyou
#want to make to /etc/issue here oryou will lose them when you reboot.
#echo""> /etc/issue
#echo"$R">> /etc/issue
#echo"Kernel $(uname -r)on$a $(uname -m)">>/etc/issue
#
#cp -f /etc/issue /etc/issue.net
#echo >>/etc/issue
……
然后,執(zhí)行下面幾行命令
#rm -f /etc/issue
#rm -f /etc/issue.net
#touch /etc/issue
#touch /etc/issue.net
也可以單獨(dú)編輯一個(gè)命令(telnet),如修改/etc/inetd.conf
telnet stream tcp nowait root /usr/sbin/tcpd in.telnetd -h
這樣,用戶TELNET服務(wù)器時(shí),就不會(huì)顯示出系統(tǒng)版本信息等了,只顯示“l(fā)ogin:”。
11、設(shè)置文件/etc/host.conf,防止IP欺騙
vi /etc/host.conf
===================================================
……
#Lookup names via DNS first then fall back to /etc/hosts.
order bind,hosts
#We don't have machines with multipe IP addresses on the same card
(likevirtual server,IP Aliasing).
multi off
#Chesk for IP address spoofing.
nospoof on
IP Spoofing:IP-Spoofing is a security exploit that works by trichking
computers in a trust relationship that you are someone that you really aren.
//添加上面幾行來(lái)防止IP欺騙攻擊
12、禁止 su作為root
vi /etc/pam.d/su
======================================================
……
auth sufficient /lib/security/pam_rootok.so debug
auth required /lib/security/pam_wheel.so group=elain
在文件內(nèi)添加如上兩行,這表示只有用戶組elain里的成員可以用su作為root
若希望用記admin能su作為root,可運(yùn)行以下命令:
#usermod -G10 admin
13、禁止使用CTRL+ALT+DEL重啟服務(wù)器
vi /etc/inittab
……
#ca::ctrlaltdel:/sbin/shutdown -t3 -r now??????? //用“#”注釋掉此行即可
然后運(yùn)行:
#/sbin/init -q
14、注銷時(shí)刪除命令記錄
vi /etc/skel/.bash_logout
============================================================
rm -f $HOME/.bash_history
15、確保開啟的服務(wù)安全
常用服務(wù)方面的命令:
grep -v "#" /etc/services??????????????????????? //顯示沒(méi)有被注釋掉的服務(wù)
ps -eaf|wc -l??????????????????????????????????? //統(tǒng)計(jì)當(dāng)前系統(tǒng)打開服務(wù)的總數(shù)
netstat -na (遠(yuǎn)程后面可加ip)???????????????????? //查看當(dāng)前運(yùn)行的服務(wù)
netstat -an |grep LISTEN???????????????????????? //查看是否有可疑端口打開
當(dāng)然,也可以執(zhí)行如下命令:
shattr +i /etc/services????????????????????????? //設(shè)置為不可理性屬性
Linux啟動(dòng)時(shí)先檢測(cè)腳本文件,在REDHAT下,在/etc/rc.d/rc3.d(rc5.d)下(圖形化),腳本名字為啟動(dòng)順序。
K 表示殺死進(jìn)程
S 表示啟動(dòng)的服務(wù)
如在啟動(dòng)時(shí)禁止一個(gè)服務(wù),只需把該服務(wù)的腳本文件的大寫“S”更改為小寫“s”
注意,以下3個(gè)服務(wù)漏洞很多,強(qiáng)烈建議關(guān)閉
yppasswdd(NIS服務(wù)器)
ypserv(NIS服務(wù)器)
nfs(NFS服務(wù)器)
16、LINUX防火墻安全配置
system-config-securitylevel
17、LINUX系統(tǒng)安全工具
Sxid:檢查系統(tǒng)中的suid,sgid以及沒(méi)有主人的文件
Skey:一次性口令工具
Logrotate:日志循環(huán)工具
Logcheck:日志管理工具
Swatch:日志管理工具,比logcheck實(shí)時(shí)
Ssh(openssh):提供安全的連接認(rèn)證
Portsentry:反掃描工具,監(jiān)視自己的udp和tcp端口
Tripwire:提供系統(tǒng)完整性檢查
Gnupg:對(duì)單個(gè)文件進(jìn)行加密以及創(chuàng)建數(shù)字簽名
Hostsentry:基于主機(jī)的入侵檢測(cè),將連接記入日志
ipchains Linux:發(fā)行版自帶的包過(guò)濾形防火墻
Anti-sniff:反嗅探工具,檢查網(wǎng)絡(luò)中是否有嗅探器
Freeswan:在LINUX中實(shí)現(xiàn) VPN的工具
Syslog-ng:替代syslog的日志文件系統(tǒng)
Scandns:進(jìn)行DNS檢查追蹤工具
Whisker:CGI掃描器
Snoopy:通過(guò)跟蹤execve系統(tǒng)調(diào)用記錄文件的命令
Krnsniff:一個(gè)基于內(nèi)核的監(jiān)聽模塊
Iptable:用來(lái)替代ipchains包過(guò)濾防火墻
Imsafe:通過(guò)跟蹤系統(tǒng)調(diào)用來(lái)檢測(cè)緩沖溢出等問(wèn)題
Iplog:對(duì)來(lái)往的包進(jìn)行日志記錄
Solaris designer:內(nèi)核補(bǔ)丁,防止緩沖溢出等
Stackguard:作為補(bǔ)丁修補(bǔ)GCC,防止緩沖溢出
DTK:Honey port欺騙式防御
Antiroute:阻止和記錄基于路由的跟蹤
===========================================================
注:以上資料均收集于網(wǎng)絡(luò),版權(quán)歸原作者所有,本人只是在學(xué)習(xí)時(shí)總結(jié)規(guī)納了一下,希望對(duì)LINUX安全愛好者有所幫助!
?
轉(zhuǎn)載請(qǐng)注明: 轉(zhuǎn)載自http://www.elain.org
本文鏈接地址:打造LINUX系統(tǒng)安全
本文轉(zhuǎn)自 elain2012 51CTO博客,原文鏈接:http://blog.51cto.com/elain/627441
總結(jié)
以上是生活随笔為你收集整理的打造LINUX系统安全(早期学习笔记)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: shell之常用脚本
- 下一篇: Linux下Web网站压力测试工具Web