如何使Linux服务器变得更安全

如何使Linux服务器变得更安全,第1张

1安装和配置一个防火墙

一个配置适当的防火墙不仅是系统有效应对外部攻击的第一道防线,也是最重要的一道防线。在新系统第一次连接上Internet之前,防火墙就应该被安装并且配置好。防火墙配置成拒绝接收所有数据包,然后再打开允许接收的数据包,将有利于系统的安全。Linux为我们提供了一个非常优秀的防火墙工具,它就是netfilter/iptables。它完全是免费的,并且可以在一台低配置的老机器上很好地运行。防火墙的具体设置方法请参见iptables使用方法。

2、关闭无用的服务和端口

任何网络连接都是通过开放的应用端口来实现的。如果我们尽可能少地开放端口,就使网络攻击变成无源之水,从而大大减少了攻击者成功的机会。把Linux作为专用服务器是个明智的举措。例如,希望Linux成为的Web服务器,可以取消系统内所有非必要的服务,只开启必要服务。这样做可以尽量减少后门,降低隐患,而且可以合理分配系统资源,提高整机性能。以下是几个不常用的服务:

① fingerd(finger服务器)报告指定用户的个人信息,包括用户名、真实姓名、shell、目录和****,它将使系统暴露在不受欢迎的情报收集活动下,应避免启动此服务。

② R服务(rshd、rlogin、rwhod、rexec)提供各种级别的命令,它们可以在远程主机上运行或与远程主机交互,在封闭的网络环境中登录而不再要求输入用户名和口令,相当方便。然而在公共服务器上就会暴露问题,导致安全威胁。

3、删除不用的软件包

在进行系统规划时,总的原则是将不需要的服务一律去掉。默认的Linux就是一个强大的系统,运行了很多的服务。但有许多服务是不需要的,很容易引起安全风险。这个文件就是/etc/xinetdconf,它制定了/usr/sbin/xinetd将要监听的服务,你可能只需要其中的一个:ftp,其它的类如telnet、shell、login、exec、talk、ntalk、imap、finger、auth等,除非你真的想用它,否则统统关闭。

4、不设置缺省路由

在主机中,应该严格禁止设置缺省路由,即default route。建议为每一个子网或网段设置一个路由,否则其它机器就可能通过一定方式访问该主机。

5、口令管理

口令的长度一般不要少于8个字符,口令的组成应以无规则的大小写字母、数字和符号相结合,严格避免用英语单词或词组等设置口令,而且各用户的口令应该养成定期更换的习惯。另外,口令的保护还涉及到对/etc/passwd和/etc/shadow文件的保护,必须做到只有系统管理员才能访问这2个文件。安装一个口令过滤工具加npasswd,能帮你检查你的口令是否耐得住攻击。如果你以前没有安装此类的工具,建议你现在马上安装。如果你是系统管理员,你的系统中又没有安装口令过滤工具,请你马上检查所有用户的口令是否能被穷尽搜索到,即对你的/ect/passwd文件实施穷尽搜索攻击。用单词作密码是根本架不住暴力攻击的。黑客们经常用一些常用字来破解密码。曾经有一位美国黑客表示,只要用“password”这个字,就可以打开全美多数的计算机。其它常用的单词还有:account、ald、alpha、beta、computer、dead、demo、dollar、games、bod、hello、help、intro、kill、love、no、ok、okay、please、sex、secret、superuser、system、test、work、yes等。

密码设置和原则:

a足够长,指头只要多动一下为密码加一位,就可以让攻击者的辛苦增加十倍;

b 不要用完整的单词,尽可能包括数字、标点符号和特殊字符等;

c混用大小写字符;

d经常修改。

6、分区管理

一个潜在的攻击,它首先就会尝试缓冲区溢出。在过去的几年中,以缓冲区溢出为类型的安全漏洞是最为常见的一种形式了。更为严重的是,缓冲区溢出漏洞占了远程网络攻击的绝大多数,这种攻击可以轻易使得一个匿名的Internet用户有机会获得一台主机的部分或全部的控制权!。

为了防止此类攻击,我们从安装系统时就应该注意。如果用root分区记录数据,如log文件,就可能因为拒绝服务产生大量日志或垃圾邮件,从而导致系统崩溃。所以建议为/var开辟单独的分区,用来存放日志和邮件,以避免root分区被溢出。最好为特殊的应用程序单独开一个分区,特别是可以产生大量日志的程序,还建议为/home单独分一个区,这样他们就不能填满/分区了,从而就避免了部分针对Linux分区溢出的恶意攻击。

很多Linux桌面用户往往是使用Windows、Linux双系统。最好使用双硬盘。方法如下:首先将主硬盘的数据线拆下,找一个10GB左右的硬盘挂在计算机上,将小硬盘设置为从盘,按照平常的操作安装Linux服务器版本,除了启动的引导程序放在MBR外,其它没有区别。 安装完成,调试出桌面后,关闭计算机。将小硬盘的数据线拆下,装上原硬盘,并设定为主盘(这是为了原硬盘和小硬盘同时挂接在一个数据线上),然后安装Windows软件。将两个硬盘都挂在数据线上,数据线是IDE 0接口,将原硬盘设定为主盘,小硬盘设定为从盘。如果要从原硬盘启动,就在CMOS里将启动的顺序设定为“C、D、CDROM”,或者是“IDE0(HDD-0)”。这样计算机启动的时候,进入Windows界面。如果要从小硬盘启动,就将启动顺序改为“D、C、CDROM”,或者是“IDE1(HDD-1)”,启动之后,将进入Linux界面。平时两个操作系统是互相不能够访问的。

7、防范网络嗅探:

嗅探器技术被广泛应用于网络维护和管理方面,它工作的时候就像一部被动声纳,默默的接收看来自网络的各种信息,通过对这些数据的分析,网络管理员可以深入了解网络当前的运行状况,以便找出网络中的漏洞。在网络安全日益被注意的今天我们不但要正确使用嗅探器还要合理防范嗅探器的危害嗅探器能够造成很大的安全危害,主要是因为它们不容易被发现。对于一个安全性能要求很严格的企业,同时使用安全的拓扑结构、会话加密、使用静态的ARP地址是有必要的。

8、完整的日志管理

日志文件时刻为你记录着你的系统的运行情况。当黑客光临时,也不能逃脱日志的法眼。所以黑客往往在攻击时修改日志文件,来隐藏踪迹。因此我们要限制对/var/log文件的访问,禁止一般权限的用户去查看日志文件。

另外要使用日志服务器。将客户机的日志信息保存副本是好主意,创建一台服务器专门存放日志文件,可以通过检查日志来发现问题。修改/etc/sysconfig/syslog文件加入接受远程日志记录。

/etc/sysconfig/syslog SYSLOGD_OPTIONS="-m r 0"

还应该设定日志远程保存。修改/etc/syslogconf文件加入日志服务器的设置,syslog将保存副本在日志服务器上。

/etc/syslogconf @log_server_IP

可以使用彩色日志过滤器。彩色日志loco过滤器,目前版本是032。使用loco /var/log/messages | more可以显示出彩色的日志,明显标记出root的位置和日志中异常的命令。这样可以减少分析日志时人为遗漏。还要进行日志的定期检查。Red Hat Linux中提供了logwatch工具,定期自动检查日志并发送邮件到管理员信箱。需要修改/etc/logd/conf/ logwatchconf文件,在MailTo = root参数后增加管理员的邮件地址。Logwatch会定期检查日志,过滤有关使用root、sudo、telnet、ftp登录等信息,协助管理员分析日常安全。完整的日志管理要包括网络数据的正确性、有效性、合法性。对日志文件的分析还可以预防入侵。例如、某一个用户几小时内的20次的注册失败记录,很可能是入侵者正在尝试该用户的口令。

9、终止正进行的攻击

假如你在检查日志文件时,发现了一个用户从你未知的主机登录,而且你确定此用户在这台主机上没有账号,此时你可能正被攻击。首先你要马上锁住此账号(在口令文件或shadow文件中,此用户的口令前加一个Ib或其他的字符)。若攻击者已经连接到系统,你应马上断开主机与网络的物理连接。如有可能,你还要进一步查看此用户的历史记录,查看其他用户是否也被假冒,攻击音是否拥有根权限。杀掉此用户的所有进程并把此主机的ip地址掩码加到文件hostsdeny中。

10、使用安全工具软件:

Linux已经有一些工具可以保障服务器的安全。如bastille linux和Selinux。 bastille linux对于不熟悉 linux 安全设定的使用者来说,是一套相当方便的软件,bastille linux 目的是希望在已经存在的 linux 系统上,建构出一个安全性的环境。增强安全性的Linux(SELinux)是美国安全部的一个研发项目,它的目的在于增强开发代码的Linux内核,以提供更强的保护措施,防止一些关于安全方面的应用程序走弯路,减轻恶意软件带来的灾难。普通的Linux系统的安全性是依赖内核的,这个依赖是通过setuid/setgid产生的。在传统的安全机制下,暴露了一些应用授权问题、配置问题或进程运行造成整个系统的安全问题。这些问题在现在的操作系统中都存在,这是由于他们的复杂性和与其它程序的互用性造成的。SELinux只单单依赖于系统的内核和安全配置政策。一旦你正确配置了系统,不正常的应用程序配置或错误将只返回错误给用户的程序和它的系统后台程序。其它用户程序的安全性和他们的后台程序仍然可以正常运行,并保持着它们的安全系统结构。用简单一点的话说就是:没有任何的程序配置错误可以造成整个系统的崩溃。安装SELinux SELinux的内核、工具、程序/工具包,还有文档都可以到增强安全性的Linux网站上上下载你必须有一个已经存在的Linux系统来编译你的新内核,这样才能访问没有更改的系统补丁包。

11使用保留IP地址

维护网络安全性最简单的方法是保证网络中的主机不同外界接触。最基本的方法是与公共网络隔离。然而,这种通过隔离达到的安全性策略在许多情况下是不能接受的。这时,使用保留IP地址是一种简单可行的方法,它可以让用户访问Internet同时保证一定的安全性。- RFC 1918规定了能够用于本地 TCP/IP网络使用的IP地址范围,这些IP地址不会在Internet上路由,因此不必注册这些地址。通过在该范围分配IP地址,可以有效地将网络流量限制在本地网络内。这是一种拒绝外部计算机访问而允许内部计算机互联的快速有效的方法。 保留IP地址范围:

---- 1000 0 - 10255255255

---- 1721600 - 17231255255

--- 19216800 - 192168255255。

来自保留IP地址的网络交通不会经过Internet路由器,因此被赋予保留IP地址的任何计算机不能从外部网络访问。但是,这种方法同时也不允许用户访问外部网络。IP伪装可以解决这一问题。

12、合理选择Linux发行版本:

对于服务器使用的Linux版本,既不使用最新的发行版本,也不选择太老的版本。应当使用比较成熟的版本:前一个产品的最后发行版本如RHEL 30等。毕竟对于服务器来说安全稳定是第一的。

13、部署Linux防范病毒软件

Linux操作系统一直被认为是Windows系统的劲敌,因为它不仅安全、稳定、成本低,而且很少发现有病毒传播。但是,随着越来越多的服务器、工作站和个人电脑使用Linux软件,电脑病毒制造者也开始攻击这一系统。对于Linux系统无论是服务器,还是工作站的安全性和权限控制都是比较强大的,这主要得力于其优秀的技术设计,不仅使它的作业系统难以宕机,而且也使其难以被滥用。Unix经过20多年的发展和完善,已经变得非常坚固,而Linux基本上继承了它的优点。在Linux里,如果不是超级用户,那么恶意感染系统文件的程序将很难得逞。速客一号(Slammer)、冲击波(Blast)、霸王虫(Sobig)、 米虫(Mimail)、劳拉(Win32Xorala)病毒等恶性程序虽然不会损坏Linux服务器,但是却会传播给访问它的Windows系统平台的计算机。

Linux的应用越来越普遍,且绝大多数嵌入式系统都使用的是Linux系统。但近期,黑客对Linux服务器进行DDoS攻击的次数飙升,受DDoS攻击影响的有70多个国家,其中77%的攻击都发生在中国,最容易受攻击的国家还有法国和荷兰。黑客主要是利用CC 服务器来集中管理并执行DDoS攻击,Linux服务器便成了其主要的攻击目标。面对如此猖獗的黑客攻击,Linux服务器如何做好预防工作呢?部署先进的安全解决方案,并利用且更新现有的Linux发行版,可以有效防护Linux服务器免受黑客的攻击。

1、做好硬件保护措施 不论什么样的设备都是十分脆弱的--包括运行在各类Linux系统上的服务器和台式机,以及交换机、路由器、调制解调器、无线设备等。在嵌入式Linux系统上运行的物联网设备同样也十分容易受到攻击。原因是大多数情况下用户无法及时更新或重新配置带有漏洞的软件,尤其是在工作负载量大的关键服务器上,也无法更新不受制造商设备支持的旧版软件。 所以租用Linux服务器的企业必须了解并实施SELinux,及时更新软件和内核,并采用强大的密码政策,以抵抗此类漏洞的威胁。而Linux服务器也必须强化或改进系统的安全性。

2、了解攻击病毒类型 在近期频繁发生的网络攻击中,黑客并没有采用新的攻击方式。据了解,今年第二季度SYN DDoS, TCP DDoS 和HTTP DDoS攻击依然是最常见的攻击类型。 据报告显示,基于Linux和基于Windows的DDoS bots病毒的活跃性比例首次失衡。Linux bots 病毒成为 SYN-DDoS最具攻击力的工具。

3、系统安全配置与及时更新 Linux是一个安全性比较高的操作系统。只要经过合理的配置和封锁,Linux就能够抵御目前许多的漏洞和攻击。此外,聘请专业的网络安全专业人员和购买安全软件对其进行维护,做好安全防护措施。 除此之外,虚拟主机商-bluehost建议使用Linux的企业应该及时安装系统补丁,并对系统进行安全配置和强化,这样无关的服务和应用程序就不会在系统上运行或安装。这种方法将有助于企业建立入侵防御系统以及新一代防火墙,将网络攻击对系统的伤害降至最低,而且还能够限制黑客入侵系统或利用系统发起僵尸网络攻击。

一、强化密码强度

只要涉及到登录,就需要用到密码,如果密码设定不恰当,就很容易被黑客破解,如果是超级管理员(root)用户,如果没有设立良好的密码机制,可能给系统造成无法挽回的后果。

很多用户喜欢用自己的生日、姓名、英文名等信息来设定,这些方式可以通过字典或者社会工程的手段去破解,因此建议用户在设定密码时,尽量使用非字典中出现的组合字符,且采用数字与字符、大小写相结合的密码,增加密码被破译的难度。

二、登录用户管理

进入Linux系统前,都是需要登录的,只有通过系统验证后,才能进入Linux操作系统,而Linux一般将密码加密后,存放在/etc/passwd文件中,那么所有用户都可以读取此文件,虽然其中保存的密码已加密,但安全系数仍不高,因此可以设定影子文件/etc/shadow,只允许有特殊权限的用户操作。

三、账户安全等级管理

在Linux操作系统上,每个账户可以被赋予不同的权限,因此在建立一个新用户ID时,系统管理员应根据需要赋予该账号不同的权限,且归并到不同的用户组中。每个账号ID应有专人负责,在企业中,如果负责某个ID的员工离职,该立即从系统中删除该账号。

四、谨慎使用"r"系列远程程序管理

在Linux操作系统中,有一系列r开头的公用程序,如rlogin、rcp等,非常容易被不法分子用来攻击我们的系统,因此千万不要将root账号开放给这些公用程序,现如今很多安全工具都是针对此漏洞而设计的,比如PAM工具,就可以将其有效地禁止掉。

五、root用户权限管理

root可谓是Linux重点保护对象,因为其权利是最高的,因此千万不要将它授权出去,但有些程序的安装、维护必须要求是超级用户权限,在此情况下,可以利用其他工具让这类用户有部分超级用户的权限。sudo就是这样的工具。

六、综合防御管理

防火墙、IDS等防护技术已成功应用到网络安全的各个领域,且都有非常成熟的产品,需要注意的是:在大多数情况下,需要综合使用这两项技术,因为防火墙相当于安全防护的第一层,它仅仅通过简单地比较IP地址/端口对来过滤网络流量,而IDS更加具体,它需要通过具体的数据包(部分或者全部)来过滤网络流量,是安全防护的第二层。综合使用它们,能够做到互补,并且发挥各自的优势,最终实现综合防御。

你好。

1安装和配置一个防火墙

一个配置适当的防火墙不仅是系统有效应对外部攻击的第一道防线,也是最重要的一道防线。在新系统第一次连接上Internet之前,防火墙就应该被安装并且配置好。防火墙配置成拒绝接收所有数据包,然后再打开允许接收的数据包,将有利于系统的安全。Linux为我们提供了一个非常优秀的防火墙工具,它就是netfilter/iptables。它完全是免费的,并且可以在一台低配置的老机器上很好地运行。防火墙的具体设置方法请参见iptables使用方法。

2、关闭无用的服务和端口

任何网络连接都是通过开放的应用端口来实现的。如果我们尽可能少地开放端口,就使网络攻击变成无源之水,从而大大减少了攻击者成功的机会。把Linux作为专用服务器是个明智的举措。例如,希望Linux成为的Web服务器,可以取消系统内所有非必要的服务,只开启必要服务。这样做可以尽量减少后门,降低隐患,而且可以合理分配系统资源,提高整机性能。以下是几个不常用的服务:

① fingerd(finger服务器)报告指定用户的个人信息,包括用户名、真实姓名、shell、目录和****,它将使系统暴露在不受欢迎的情报收集活动下,应避免启动此服务。

② R服务(rshd、rlogin、rwhod、rexec)提供各种级别的命令,它们可以在远程主机上运行或与远程主机交互,在封闭的网络环境中登录而不再要求输入用户名和口令,相当方便。然而在公共服务器上就会暴露问题,导致安全威胁。

3、删除不用的软件包

在进行系统规划时,总的原则是将不需要的服务一律去掉。默认的Linux就是一个强大的系统,运行了很多的服务。但有许多服务是不需要的,很容易引起安全风险。这个文件就是/etc/xinetdconf,它制定了/usr/sbin/xinetd将要监听的服务,你可能只需要其中的一个:ftp,其它的类如telnet、shell、login、exec、talk、ntalk、imap、finger、auth等,除非你真的想用它,否则统统关闭。

4、不设置缺省路由

在主机中,应该严格禁止设置缺省路由,即default route。建议为每一个子网或网段设置一个路由,否则其它机器就可能通过一定方式访问该主机。

5、口令管理

口令的长度一般不要少于8个字符,口令的组成应以无规则的大小写字母、数字和符号相结合,严格避免用英语单词或词组等设置口令,而且各用户的口令应该养成定期更换的习惯。另外,口令的保护还涉及到对/etc/passwd和/etc/shadow文件的保护,必须做到只有系统管理员才能访问这2个文件。安装一个口令过滤工具加npasswd,能帮你检查你的口令是否耐得住攻击。如果你以前没有安装此类的工具,建议你现在马上安装。如果你是系统管理员,你的系统中又没有安装口令过滤工具,请你马上检查所有用户的口令是否能被穷尽搜索到,即对你的/ect/passwd文件实施穷尽搜索攻击。用单词作密码是根本架不住暴力攻击的。黑客们经常用一些常用字来破解密码。曾经有一位美国黑客表示,只要用“password”这个字,就可以打开全美多数的计算机。其它常用的单词还有:account、ald、alpha、beta、computer、dead、demo、dollar、games、bod、hello、help、intro、kill、love、no、ok、okay、please、sex、secret、superuser、system、test、work、yes等。

密码设置和原则:

a足够长,指头只要多动一下为密码加一位,就可以让攻击者的辛苦增加十倍;

b 不要用完整的单词,尽可能包括数字、标点符号和特殊字符等;

c混用大小写字符;

d经常修改。

6、分区管理

一个潜在的攻击,它首先就会尝试缓冲区溢出。在过去的几年中,以缓冲区溢出为类型的安全漏洞是最为常见的一种形式了。更为严重的是,缓冲区溢出漏洞占了远程网络攻击的绝大多数,这种攻击可以轻易使得一个匿名的Internet用户有机会获得一台主机的部分或全部的控制权!。

为了防止此类攻击,我们从安装系统时就应该注意。如果用root分区记录数据,如log文件,就可能因为拒绝服务产生大量日志或垃圾邮件,从而导致系统崩溃。所以建议为/var开辟单独的分区,用来存放日志和邮件,以避免root分区被溢出。最好为特殊的应用程序单独开一个分区,特别是可以产生大量日志的程序,还建议为/home单独分一个区,这样他们就不能填满/分区了,从而就避免了部分针对Linux分区溢出的恶意攻击。

很多Linux桌面用户往往是使用Windows、Linux双系统。最好使用双硬盘。方法如下:首先将主硬盘的数据线拆下,找一个10GB左右的硬盘挂在计算机上,将小硬盘设置为从盘,按照平常的操作安装Linux服务器版本,除了启动的引导程序放在MBR外,其它没有区别。 安装完成,调试出桌面后,关闭计算机。将小硬盘的数据线拆下,装上原硬盘,并设定为主盘(这是为了原硬盘和小硬盘同时挂接在一个数据线上),然后安装Windows软件。将两个硬盘都挂在数据线上,数据线是IDE 0接口,将原硬盘设定为主盘,小硬盘设定为从盘。如果要从原硬盘启动,就在CMOS里将启动的顺序设定为“C、D、CDROM”,或者是“IDE0(HDD-0)”。这样计算机启动的时候,进入Windows界面。如果要从小硬盘启动,就将启动顺序改为“D、C、CDROM”,或者是“IDE1(HDD-1)”,启动之后,将进入Linux界面。平时两个操作系统是互相不能够访问的。

7、防范网络嗅探:

嗅探器技术被广泛应用于网络维护和管理方面,它工作的时候就像一部被动声纳,默默的接收看来自网络的各种信息,通过对这些数据的分析,网络管理员可以深入了解网络当前的运行状况,以便找出网络中的漏洞。在网络安全日益被注意的今天我们不但要正确使用嗅探器还要合理防范嗅探器的危害嗅探器能够造成很大的安全危害,主要是因为它们不容易被发现。对于一个安全性能要求很严格的企业,同时使用安全的拓扑结构、会话加密、使用静态的ARP地址是有必要的。

8、完整的日志管理

日志文件时刻为你记录着你的系统的运行情况。当黑客光临时,也不能逃脱日志的法眼。所以黑客往往在攻击时修改日志文件,来隐藏踪迹。因此我们要限制对/var/log文件的访问,禁止一般权限的用户去查看日志文件。

另外要使用日志服务器。将客户机的日志信息保存副本是好主意,创建一台服务器专门存放日志文件,可以通过检查日志来发现问题。修改/etc/sysconfig/syslog文件加入接受远程日志记录。

/etc/sysconfig/syslog SYSLOGD_OPTIONS="-m r 0"

还应该设定日志远程保存。修改/etc/syslogconf文件加入日志服务器的设置,syslog将保存副本在日志服务器上。

/etc/syslogconf @log_server_IP

可以使用彩色日志过滤器。彩色日志loco过滤器,目前版本是032。使用loco /var/log/messages | more可以显示出彩色的日志,明显标记出root的位置和日志中异常的命令。这样可以减少分析日志时人为遗漏。还要进行日志的定期检查。Red Hat Linux中提供了logwatch工具,定期自动检查日志并发送邮件到管理员信箱。需要修改/etc/logd/conf/ logwatchconf文件,在MailTo = root参数后增加管理员的邮件地址。Logwatch会定期检查日志,过滤有关使用root、sudo、telnet、ftp登录等信息,协助管理员分析日常安全。完整的日志管理要包括网络数据的正确性、有效性、合法性。对日志文件的分析还可以预防入侵。例如、某一个用户几小时内的20次的注册失败记录,很可能是入侵者正在尝试该用户的口令。

9、终止正进行的攻击

假如你在检查日志文件时,发现了一个用户从你未知的主机登录,而且你确定此用户在这台主机上没有账号,此时你可能正被攻击。首先你要马上锁住此账号(在口令文件或shadow文件中,此用户的口令前加一个Ib或其他的字符)。若攻击者已经连接到系统,你应马上断开主机与网络的物理连接。如有可能,你还要进一步查看此用户的历史记录,查看其他用户是否也被假冒,攻击音是否拥有根权限。杀掉此用户的所有进程并把此主机的ip地址掩码加到文件hostsdeny中。

10、使用安全工具软件:

Linux已经有一些工具可以保障服务器的安全。如bastille linux和Selinux。 bastille linux对于不熟悉 linux 安全设定的使用者来说,是一套相当方便的软件,bastille linux 目的是希望在已经存在的 linux 系统上,建构出一个安全性的环境。增强安全性的Linux(SELinux)是美国安全部的一个研发项目,它的目的在于增强开发代码的Linux内核,以提供更强的保护措施,防止一些关于安全方面的应用程序走弯路,减轻恶意软件带来的灾难。普通的Linux系统的安全性是依赖内核的,这个依赖是通过setuid/setgid产生的。在传统的安全机制下,暴露了一些应用授权问题、配置问题或进程运行造成整个系统的安全问题。这些问题在现在的操作系统中都存在,这是由于他们的复杂性和与其它程序的互用性造成的。SELinux只单单依赖于系统的内核和安全配置政策。一旦你正确配置了系统,不正常的应用程序配置或错误将只返回错误给用户的程序和它的系统后台程序。其它用户程序的安全性和他们的后台程序仍然可以正常运行,并保持着它们的安全系统结构。用简单一点的话说就是:没有任何的程序配置错误可以造成整个系统的崩溃。安装SELinux SELinux的内核、工具、程序/工具包,还有文档都可以到增强安全性的Linux网站上上下载你必须有一个已经存在的Linux系统来编译你的新内核,这样才能访问没有更改的系统补丁包。

11使用保留IP地址

维护网络安全性最简单的方法是保证网络中的主机不同外界接触。最基本的方法是与公共网络隔离。然而,这种通过隔离达到的安全性策略在许多情况下是不能接受的。这时,使用保留IP地址是一种简单可行的方法,它可以让用户访问Internet同时保证一定的安全性。- RFC 1918规定了能够用于本地 TCP/IP网络使用的IP地址范围,这些IP地址不会在Internet上路由,因此不必注册这些地址。通过在该范围分配IP地址,可以有效地将网络流量限制在本地网络内。这是一种拒绝外部计算机访问而允许内部计算机互联的快速有效的方法。 保留IP地址范围:

---- 1000 0 - 10255255255

---- 1721600 - 17231255255

--- 19216800 - 192168255255。

来自保留IP地址的网络交通不会经过Internet路由器,因此被赋予保留IP地址的任何计算机不能从外部网络访问。但是,这种方法同时也不允许用户访问外部网络。IP伪装可以解决这一问题。

12、合理选择Linux发行版本:

对于服务器使用的Linux版本,既不使用最新的发行版本,也不选择太老的版本。应当使用比较成熟的版本:前一个产品的最后发行版本如RHEL 30等。毕竟对于服务器来说安全稳定是第一的。

13、部署Linux防范病毒软件

Linux操作系统一直被认为是Windows系统的劲敌,因为它不仅安全、稳定、成本低,而且很少发现有病毒传播。但是,随着越来越多的服务器、工作站和个人电脑使用Linux软件,电脑病毒制造者也开始攻击这一系统。对于Linux系统无论是服务器,还是工作站的安全性和权限控制都是比较强大的,这主要得力于其优秀的技术设计,不仅使它的作业系统难以宕机,而且也使其难以被滥用。Unix经过20多年的发展和完善,已经变得非常坚固,而Linux基本上继承了它的优点。在Linux里,如果不是超级用户,那么恶意感染系统文件的程序将很难得逞。速客一号(Slammer)、冲击波(Blast)、霸王虫(Sobig)、 米虫(Mimail)、劳拉(Win32Xorala)病毒等恶性程序虽然不会损坏Linux服务器,但是却会传播给访问它的Windows系统平台的计算机。

材料:

Linux审计系统auditd 套件

步骤:

安装 auditd

REL/centos默认已经安装了此套件,如果你使用ubuntu server,则要手工安装它:

sudo apt-get install auditd

它包括以下内容:

auditctl : 即时控制审计守护进程的行为的工具,比如如添加规则等等。

/etc/audit/auditrules : 记录审计规则的文件。

aureport : 查看和生成审计报告的工具。

ausearch : 查找审计事件的工具

auditspd : 转发事件通知给其他应用程序,而不是写入到审计日志文件中。

autrace : 一个用于跟踪进程的命令。

/etc/audit/auditdconf : auditd工具的配置文件。

Audit 文件和目录访问审计

首次安装 auditd 后, 审计规则是空的。可以用 sudo auditctl -l 查看规则。文件审计用于保护敏感的文件,如保存系统用户名密码的passwd文件,文件访问审计方法:

sudo auditctl -w /etc/passwd -p rwxa

-w path : 指定要监控的路径,上面的命令指定了监控的文件路径 /etc/passwd

-p : 指定触发审计的文件/目录的访问权限

rwxa : 指定的触发条件,r 读取权限,w 写入权限,x 执行权限,a 属性(attr)

目录进行审计和文件审计相似,方法如下:

$ sudo auditctl -w /production/

以上命令对/production目录进行保护。

查看审计日志

添加规则后,我们可以查看 auditd 的日志。使用 ausearch 工具可以查看auditd日志。

sudo ausearch -f /etc/passwd

-f 设定ausearch 调出 /etc/passwd文件的审计内容

4 查看审计报告

以上命令返回log如下:

time->Mon Dec 22 09:39:16 2016

type=PATH msg=audit(1419215956471:194): item=0 name="/etc/passwd"

inode=142512 dev=08:01 mode=0100644 ouid=0 ogid=0 rdev=00:00 nametype=NORMAL

type=CWD msg=audit(1419215956471:194): cwd="/home/somebody"

type=SYSCALL msg=audit(1419215956471:194): arch=40000003 syscall=5 

success=yes exit=3 a0=b779694b a1=80000 a2=1b6 a3=b8776aa8 items=1 ppid=2090 pid=2231 auid=4294967295 uid=1000 gid=1000 euid=0 suid=0 fsuid=0 egid=1000 sgid=1000 fsgid=1000 tty=pts0 ses=4294967295

comm="sudo" exe="/usr/bin/sudo" key=(null)

time : 审计时间。

name : 审计对象

cwd : 当前路径

syscall : 相关的系统调用

auid : 审计用户ID

uid 和 gid : 访问文件的用户ID和用户组ID

comm : 用户访问文件的命令

exe : 上面命令的可执行文件路径

以上审计日志显示文件未被改动。

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » 如何使Linux服务器变得更安全

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情