Linux操作系统的基本安全措施
Linux操作系统的基本安全措施
Linux操作系统跟普通的系统一样,系统安全是需要维护的。下面由学习啦小编整理了Linux操作系统的基本安全措施,希望对你有帮助。
Linux操作系统的基本安全措施一
1. 使用SELinux
SELinux是用来对Linux的进行安全加固的,有了它,用户和管理员们就可以对访问控制进行更多控制。SELinux为访问控制添加了更细的颗粒度控制。与仅可以指定谁可以读、写或执行一个文件的权限不同的是,SELinux可以让你指定谁可以删除链接、只能追加、移动一个文件之类的更多控制。(LCTT译注:虽然NSA也给SELinux贡献过很多代码,但是目前尚无证据证明SELinux有潜在后门)
2. 订阅漏洞警报服务
安全缺陷不一定是在你的操作系统上。事实上,漏洞多见于安装的应用程序之中。为了避免这个问题的发生,你必须保持你的应用程序更新到最新版本。此外,订阅漏洞警报服务,如SecurityFocus。
3. 禁用不用的服务和应用
通常来讲,用户大多数时候都用不到他们系统上的服务和应用的一半。然而,这些服务和应用还是会运行,这会招来攻击者。因而,最好是把这些不用的服务停掉。(LCTT译注:或者干脆不安装那些用不到的服务,这样根本就不用关注它们是否有安全漏洞和该升级了。)
4. 检查系统日志
你的系统日志告诉你在系统上发生了什么活动,包括攻击者是否成功进入或试着访问系统。时刻保持警惕,这是你第一条防线,而经常性地监控系统日志就是为了守好这道防线。
5. 考虑使用端口试探
设置端口试探(Port knocking)是建立服务器安全连接的好方法。一般做法是发生特定的包给服务器,以触发服务器的回应/连接(打开防火墙)。端口敲门对于那些有开放端口的系统是一个很好的防护措施。
6. 使用Iptables
Iptables是什么?这是一个应用框架,它允许用户自己为系统建立一个强大的防火墙。因此,要提升安全防护能力,就要学习怎样一个好的防火墙以及怎样使用Iptables框架。
7. 默认拒绝所有
防火墙有两种思路:一个是允许每一点通信,另一个是拒绝所有访问,提示你是否许可。第二种更好一些。你应该只允许那些重要的通信进入。(LCTT译注:即默认许可策略和默认禁止策略,前者你需要指定哪些应该禁止,除此之外统统放行;后者你需要指定哪些可以放行,除此之外全部禁止。)
8. 使用入侵检测系统
入侵检测系统,或者叫IDS,允许你更好地管理系统上的通信和受到的攻击。Snort是目前公认的Linux上的最好的IDS。
9. 使用全盘加密
加密的数据更难窃取,有时候根本不可能被窃取,这就是你应该对整个驱动器加密的原因。采用这种方式后,如果有某个人进入到你的系统,那么他看到这些加密的数据后,就有得头痛了。根据一些报告,大多数数据丢失源于机器被盗。
Linux操作系统的基本安全措施二
1、BIOS的安全设置
这是最基本的了,也是最简单的了。一定要给你的BIOS设置密码,以防止通过在BIOS中改变启动顺序,而可以从软盘启动。这样可以阻止别有用心的试图用特殊的启动盘启动你的系统,还可以阻止别人进入BIOS改动其中的设置,使机器的硬件设置不能被别人随意改动。
2、LILO的安全设置
LILO是linux LOader的缩写,它是linux的启动模块。可以通过修改“/etc/lilo.conf”文件中的内容来进行配置。在/etc/lilo.conf文件中加如下面两个参数:restricted,password.这三个参数可以使你的系统在启动lilo时就要求密码验证。
第一步:编辑lilo.conf文件(vi /etc/lilo.comf),假如或改变这三个参数:
boot=/dev/hda map=/boot/map install=/boot/boot.b prompt timeout=00 #把这行该为00,这样系统启动时将不在等待,而直接启动linux message=/boot/message linear default=linux restricted #加入这行 password= #加入这行并设置自己的密码 image=/boot/vmlinuz-2.4.2-2 label=linux root=/dev/hda6 read-only
第二步:因为“/etc/lilo.conf”文件中包含明文密码,所以要把它设置为root权限读取。
# chmod 0600 /etc/lilo.conf
第三步:更新系统,以便对“/etc/lilo.conf”文件做的修改起作用。
# /sbin/lilo -v
第四步:使用“chattr”命令使“/etc/lilo.conf”文件变为不可改变。
# chattr +i /etc/lilo.conf
这样可以在一定程度上防止对“/etc/lilo.conf”任何改变(意外或其他原因)
3、让口令更加安全
口令可以说是系统的第一道防线,目前网上的大部分对系统的攻击都是从截获口令或者猜测口令开始的,所以我们应该选择更加安全的口令。
首先要杜绝不设口令的帐号存在。这可以通过查看/etc/passwd文件发现。例如,存在的用户名为test的帐号,没有设置口令,则在/etc/passwd文件中就有如下一行:
test::100:9::/home/test:/bin/bash
其第二项为空,说明test这个帐号没有设置口令,这是非常危险的!应将该类帐号删除或者设置口令。
其次,在旧版本的linux中,在/etc/passwd文件中是包含有加密的密码的,这就给系统的安全性带来了很大的隐患,最简单的方法就是可以用暴力破解的方法来获得口令。可以使用命/usr/sbin/pwconv或者/usr/sbin/grpconv来建立/etc/shadow或者/etc/gshadow文件,这样在/etc/passwd文件中不再包含加密的密码,而是放在/etc/shadow文件中,该文件只有超级用户root可读!
第三点是修改一些系统帐号的Shell变量,例如uucp,ftp和news等,还有一些仅仅需要FTP功能的帐号,一定不要给他们设置/bin/bash或者/bin/sh等Shell变量。可以在/etc/passwd中将它们的Shell变量置空,例如设为/bin/false或者/dev/null等,也可以使用usermod -s /dev/nullusername命令来更改username的Shell为/dev/null.这样使用这些帐号将无法Telnet远程登录到系统中来!
第四点是修改缺省的密码长度:在你安装linux时默认的密码长度是5个字节。但这并不够,要把它设为8.修改最短密码长度需要编辑login.defs文件(vi/etc/login.defs),把下面这行
PASS_MIN_LEN 5 改为 PASS_MIN_LEN 8
login.defs文件是login程序的配置文件。
4、自动注销帐号的登录
在unix系统中root账户是具有最高特权的。如果系统管理员在离开系统之前忘记注销root账户,那将会带来很大的安全隐患,应该让系统会自动注销。通过修改账户中“TMOUT”参数,可以实现此功能。TMOUT按秒计算。编辑你的profile文件(vi/etc/profile),在“HISTFILESIZE=”后面加入下面这行:
TMOUT=300
300,表示300秒,也就是表示5分钟。这样,如果系统中登陆的用户在5分钟内都没有动作,那么系统会自动注销这个账户。你可以在个别用户的“。bashrc”文件中添加该值,以便系统对该用户实行特殊的自动注销时间。
改变这项设置后,必须先注销用户,再用该用户登陆才能激活这个功能。
5、取消普通用户的控制台访问权限
你应该取消普通用户的控制台访问权限,比如shutdown、reboot、halt等命令。
# rm -f /etc/security/console.apps/
是你要注销的程序名。
6、取消并反安装所有不用的服务
取消并反安装所有不用的服务,这样你的担心就会少很多。察看“/etc/inetd.conf”文件,通过注释取消所有你不需要的服务(在该服务项目之前加一个“#”)。然后用“sighup”命令升级“inetd.conf”文件。
补充:Linux操作系统的基础安全知识
1、基本的系统安全
安全的磁盘布局
使用挂装选项提高文件系统的安全性
查找并取消文件/目录的非必要的特殊权限
避免安装不必要的软件包
配置软件包更新的Email通知
关闭不必要的服务
关闭IPv6的内核功能