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系统平台的计算机。
建置高效能虚拟机器的同时又要跟上日益增长的核心 Java API 集合,这样做所带来的复杂性在很大程度上使开发 Java 平台的开放来源程序代码「Clean Room」实作的早期行动困难重重。Java 技术的特许实作最终可用于 Linux,但这些实作并不是开放来源程序代码。因此,大多数 Linux 分发版没有包括该特许实作。尽管有这些困难,Java 平台还是提供了许多好处,从而导致在 Linux 上越来越多地使用该特许实作,尤其是对于服务器应用程序。在本文中,我回顾了 Java 平台给服务器应用程序带来的优点,然后研究了在 Linux 上简单且安全地部署 Java 服务所涉及的问题。作为一个实际范例,我将讨论设定 Apache Software Foundation 的广泛使用的 Tomcat Java servlet 引擎的详细信息以用于独立作业。Java 应用程序提供了跨多种 *** 作系统和硬件平台的二进制兼容性。对于非 GUI 服务器应用程序尤其是这样,在此类别应用程序中,通常在实际目标系统中需要执行非常少的测试。工作人员可以在任何他们喜欢的平台上进行编码和除错,同时仍可以将这些应用程序部署到他们也许不能直接控制的环境中。Java 虚拟机器(Java Virtual Machine,JVM)环境的执行时特性以几种方式来加强程序安全性。最显著的方面之一是严格的类别型检查、数组边界检查和自动垃圾收集的组合彻底防止了最具破坏性形式的服务器程序代码攻击︰缓冲区溢位、重复释放的错误和游离的指针。Java 语言早期用于 applet,经过不断发展,该语言还有一个完善的系统,用于对那些已确信存在安全性风险的设施进行细微的存取控制。这些方法可供独立应用程序选择使用,但它们已建置在许多 Java 服务的架构中。这些执行时程序安全特性还提供了用 Java 语言开发的便利性。要对便利性这类别问题作任何精确测量是困难的,但大多数具有诸如 C 和 C++ 之类别语言背景而转向 Java 程序化的工作人员都承认在转变之后他们的生产力提高了。其中部分是因为在编译时和执行时严格执行类别型确定,以及自动内存管理的简单性。另一个因素是为 Java 平台开发的标准 API 扩充的集合。这些 API 对于新的工作人员可能是一个重大挑战,但是一旦学会了,API 会为各种企业需求提供优秀的跨平台支持。当然,对于某些应用程序而言,Java 平台可能是一个糟糕的选择。尽管 JVM 体系结构在持续改进,但 Java 应用程序通常会比使用相同算法的 C 或 C++ 应用程序执行得稍微慢一点。根据我的经验和测试,我估计这个速度差异对于在特许 JVM 上执行的大多数服务器应用程序来说大约是在 20% 到 50% 的范围内,然而这很大程度上取决于程序代码的质量。与独立程序相比,在这些 JVM 上执行的 Java 应用程序还忍受着比较慢的启动,但是这对于长时间执行的服务器应用程序通常并不是一个重大问题。在大多数情况中,降低的效能和较慢的启动祇是为获得 Java 平台的增强的安全性和更快速的开发优点所付出的微小代价。开放来源码替代选择除了标准特许 JVM(免费使用,但是来源码受到限制;可用于 Sun、IBM、BEA 和 Blackdown 组织的 Linux)之外,对于 Linux 还有其它几个替代选择。这些选择包括「Clean Room」开放来源码 JVM 实作,其中使用最广泛的可能是 Kaffe(在许多 Linux 分发版中都包括它)。Kaffe 是一个非常有意义的项目,它已经完成了一些令人惊讶的工作,但它只能提供与目前特许 JVM 有限的兼容性。因此,它通常无法使用于本文所关注的企业类别型的服务器应用程序。用于Java程序的本机程序代码编译器的开放来源码工作也有几个替代选择。这里最重要的项目是 GNU 编译器集(GNU Compiler Collection)的 GCJ使用诸如 CGJ 之类别的本机程序代码编译器会将独立于平台的 Java 字节码在其执行之前转换成特定于平台的程序代码(这与在 JVM 中执行成对比,在 JVM 中执行通常在执行时将字节码转换成特定于平台的程序代码)。本机程序代码编译显示出它极有可能成为一种避免在 JVM 中执行的 Java 应用程序启动较慢的方法。但是,使用这种方法的编译器通常都不能与当代特许 JVM 的稳定状态效能相匹配。如果 Java 应用程序使用 Java 平台的动态特性(如使用反射来存取字段或加载在执行时选择的类别),这种情况尤其突出。根据所使用的实作和编译选项,本机程序代码编译也许还会削弱 Java 平台的许多执行时安全特性。最后,由于许可证问题,许多 Java API 不能与已编译的本机程序代码一起使用。由于这些限制,本机程序代码编译目前还不是 Java 平台服务器应用程序的一个好选择。与 Java 执行时环境有许多共同点的一个替代方法是 Microsoft 的 C# 语言和相关的公共语言执行时(Common Language Runtime,CLR)。C# 是 Java 语言的关系紧密的衍生物,CLR 可能容许 C# 在许多平台上使用。CLR 还提供了 JVM 的许多执行时安全特性(尽管有严重削弱安全保证的逃离出口)。Microsoft Net 实作还支持预编译成本机程序代码的选项以获得更快速启动,这与 GCJ 对 Java 字节码所做的工作相同。当然,Linux 使用者并不能直接使用这项功能,因为 Net 只适用于 Windows系统。Mono Project 正致力于为多种Linux产品建置「CLean Room」开放来源码 C# 和等价于 CLR 的产品。现在,该项目中的 C# 编译器已开发完成,而且还完成了大部分的 CLR,Microsoft 已发布将它用于标准化。但是,无论从效能还是功能角度来看,在它成为合理的 Java 平台替代选择之前还有许多工作要做。CLR 只包括了与 Java 核心类别库等价的基本内容。在可以将它看作是企业软件开发的合理选项之前,还需要用许多额外 API 来补充它。Mono Project 正在致力于开发 CLR 以外的 Net 其它部分的移植,如果这些移植成功了 ─ 并且如果 Microsoft 不对 Net 的这些部分强加它的专利权 ─ 那么它们会有助于满足 C# 成为 Linux 上服务器软件开发的可靠平台的需要。但要使那些假设成为现实,还需要做很多工作,同时,Java 程序的本机程序代码编译器和开放来源码 JVM 向那些确实想要避免使用特许 JVM 并可以忍受有限功能性的使用者提供了比较稳定的替代选择。Apache Tomcat最普遍存在的 Java 平台服务器应用程序之一是 Apache TomcatTomcat 是基于最初由 Sun 捐赠的来源码的开放来源码项目。它是一个 >
题主说的Linux安全,应该指的是Linux *** 作系统的本身的安全吧。这个范围比较广,包括Linux内核层的安全与用户层的安全。用户层的安全包括Linux下的各种认证系统,比如目前流行的PAM认证机制,Ukey指纹认证机制,远程网络认证机制,LDAP认证机制,3A认证机制等。用户层安全还包括网络安全,比如通过iptables定制防火墙,关闭服务器不必要开启的端口等。内核态的安全,比如,缓冲区溢出攻击,当然这个安全漏洞在windows中也是存在的,各种各样的内核态提权漏洞等,现在有很多网络安全公司基于netfilter框架添加自已的勾子函数, 生产各种入侵检测系统等。
Linux系统安全之所以在互联网公司包括像阿里巴巴这样的公司不受重视,是因为这些公司觉得,做为暴露给用户的各种应用,如Web应用等,这些应用的安全显然比 *** 作系统的安全来得更加重要。当应用的安全得不到保障,Web程序被各种脚本小子植入如存储型XSS脚本,导致用户密码被盗,甚至导致一些更严重的结果,比如存储用户名与密码的数据库被脱库,这个就是相当严重的安全事故了。也许这个破坏者完成这些 *** 作,并不需要利用 *** 作系统的漏洞,也不需要取得 *** 作系统的用户名和密码,只是要取得一个具有较高权限的数据库管理员的密码即可完成上述 *** 作。当黑客取得Linux系统的普通用户名与密码时,当他需要root用户时,才会去利用 *** 作系统本身的漏洞进行提权。关于Linux *** 作系统提权漏洞,在2618版本存在较多的提权漏洞,到了2632内核,这种提权漏洞已经少了很多。
回到正题,对于现在的很多IT从业人员来说,前途最直接的体现就是工资,待遇。就目前国内来说,直接从事Linux *** 作系统安全的公司很少,大部分都是科研院校在做这方面的工作。比如中科院下属的一些研究所,国家电网、南方电网里面的研究院,当然还有各大高校的一些信息安全实验室,还有解放军叔叔,他们也在从事这些方面的工作。
当然,如同所有的IT技术一样,Linux *** 作系统的各种安全机制,也是国外在主导。现有的Linux安全框架叫做LSM,Linux security module。基于这个框架,可以实现各种各样的Linux安全机制,其中最著名的就是SELinux。因为Redhat的Linux自带的安全模块就是SELinux。SELinux最早是由NSA(美国国家安全局)主导的项目,后面开源了。Redhat在SELinux上做了大量的工作。但SELinux由于其配置比较复杂,再加上许多人认为Linux系统本身已经足够安全了,所以大部分人都将SELinux设置了disabled。想了解更多Linux命令,可查看《Linux命令大全》,具体搜索方式看下图:
但由于该 *** 作系统是一个多用户 *** 作系统,黑客们为了在攻击中隐藏自己,往往会选择 Linux作为首先攻击的对象。那么,作为一名Linux用户,我们该如何通过合理的方法来防范Linux的安全呢?下面笔者搜集和整理了一些防范 Linux安全的几则措施,现在把它们贡献出来,恳请各位网友能不断补充和完善。 1、禁止使用Ping命令Ping命令是计算机之间进行相互检测线路完好的一个应用程序,计算机间交流数据的传输没有 经过任何的加密处理,因此我们在用ping命令来检测某一个服务器时,可能在因特网上存在某个非法分子,通过专门的黑客程序把在网络线路上传输的信息中途 窃取,并利用偷盗过来的信息对指定的服务器或者系统进行攻击,为此我们有必要在Linux系统中禁止使用Linux命令。在Linux里,如果要想使 ping没反应也就是用来忽略icmp包,因此我们可以在Linux的命令行中输入如下命令: echo 1 > /proc/sys/net/ipv4/icmp_echo_igore_all 如果想恢复使用ping命令,就可以输入 echo 0 > /proc/sys/net/ipv4/icmp_echo_igore_all2、注意对系统及时备份为了防止系统在使用的过程中发生以外情况而难以正常运行,我们应该对Linux完好的系统进 行备份,最好是在一完成Linux系统的安装任务后就对整个系统进行备份,以后可以根据这个备份来验证系统的完整性,这样就可以发现系统文件是否被非法修 改过。如果发生系统文件已经被破坏的情况,也可以使用系统备份来恢复到正常的状态。备份信息时,我们可以把完好的系统信息备份在CD-ROM光盘上,以后 可以定期将系统与光盘内容进行比较以验证系统的完整性是否遭到破坏。如果对安全级别的要求特别高,那么可以将光盘设置为可启动的并且将验证工作作为系统启 动过程的一部分。这样只要可以通过光盘启动,就说明系统尚未被破坏过。 3、改进登录服务器将系统的登录服务器移到一个单独的机器中会增加系统的安全级别,使用一个更安全的登录服务器 来取代Linux自身的登录工具也可以进一步提高安全。在大的Linux网络中,最好使用一个单独的登录服务器用于syslog服务。它必须是一个能够满 足所有系统登录需求并且拥有足够的磁盘空间的服务器系统,在这个系统上应该没有其它的服务运行。更安全的登录服务器会大大削弱入侵者透过登录系统窜改日志 文件的能力。 4、取消Root命令历史记录在Linux下,系统会自动记录用户输入过的命令,而root用户发出的命令往往具有敏感的 信息,为了保证安全性,一般应该不记录或者少记录root的命令历史记录。为了设置系统不记录每个人执行过的命令,我们可以在Linux的命令行下,首先 用cd命令进入到/etc命令,然后用编辑命令来打开该目录下面的profile文件,并在其中输入如下内容: HISTFILESIZE=0
HISTSIZE=0当然,我们也可以直接在命令行中输入如下命令: ln -s /dev/null ~/bash_history5、为关键分区建立只读属性Linux的文件系统可以分成几个主要的分区,每个分区分别进行不同的配置和安装,一般情况 下至少要建立/、/usr/local、/var和/home等分区。/usr可以安装成只读并且可以被认为是不可修改的。如果/usr中有任何文件发生 了改变,那么系统将立即发出安全报警。当然这不包括用户自己改变/usr中的内容。/lib、/boot和/sbin的安装和设置也一样。在安装时应该尽 量将它们设置为只读,并且对它们的文件、目录和属性进行的任何修改都会导致系统报警。 当然将所有主要的分区都设置为只读是不可能的,有的分区如/var等,其自身的性质就决定了不能将它们设置为只读,但应该不允许它具有执行权限。 6、杀掉攻击者的所有进程假设我们从系统的日志文件中发现了一个用户从我们未知的主机登录,而且我们确定该用户在这台 主机上没有相应的帐号,这表明此时我们正在受到攻击。为了保证系统的安全被进一步破坏,我们应该马上锁住指定的帐号,如果攻击者已经登录到指定的系统,我 们应该马上断开主机与网络的物理连接。如有可能,我们还要进一步查看此用户的历史记录,再仔细查看一下其他用户是否也已经被假冒,攻击者是否拥有有限权 限;最后应该杀掉此用户的所有进程,并把此主机的IP地址掩码加入到文件hostsdeny中。 7、改进系统内部安全机制我们可以通过改进Linux *** 作系统的内部功能来防止缓冲区溢出,从而达到增强Linux系 统内部安全机制的目的,大大提高了整个系统的安全性。但缓冲区溢出实施起来是相当困难的,因为入侵者必须能够判断潜在的缓冲区溢出何时会出现以及它在内存 中的什么位置出现。缓冲区溢出预防起来也十分困难,系统管理员必须完全去掉缓冲区溢出存在的条件才能防止这种方式的攻击。正因为如此,许多人甚至包括 Linux Torvalds本人也认为这个安全Linux补丁十分重要,因为它防止了所有使用缓冲区溢出的攻击。但是需要引起注意的是,这些补丁也会导致对执行栈的 某些程序和库的依赖问题,这些问题也给系统管理员带来的新的挑战。 8、对系统进行跟踪记录为了能密切地监视黑客的攻击活动,我们应该启动日志文件,来记录系统的运行情况,当黑客在攻 击系统时,它的蛛丝马迹都会被记录在日志文件中的,因此有许多黑客在开始攻击系统时,往往首先通过修改系统的日志文件,来隐藏自己的行踪,为此我们必须限 制对/var/log文件的访问,禁止一般权限的用户去查看日志文件。当然,系统中内置的日志管理程序功能可能不是太强,我们应该采用专门的日志程序,来 观察那些可疑的多次连接尝试。另外,我们还要小心保护好具有根权限的密码和用户,因为黑客一旦知道了这些具有根权限的帐号后,他们就可以修改日志文件来隐 藏其踪迹了。 9、使用专用程序来防范安全有时,我们通过人工的方法来监视系统的安全比较麻烦,或者是不周密,因此我们还可以通过专业 程序来防范系统的安全,目前最典型的方法为设置陷井和设置蜜罐两种方法。所谓陷井就是激活时能够触发报警事件的软件,而蜜罐(honey pot)程序是指设计来引诱有入侵企图者触发专门的报警的陷井程序。通过设置陷井和蜜罐程序,一旦出现入侵事件系统可以很快发出报警。在许多大的网络中, 一般都设计有专门的陷井程序。陷井程序一般分为两种:一种是只发现入侵者而不对其采取报复行动,另一种是同时采取报复行动。 10、将入侵消灭在萌芽状态入侵者进行攻击之前最常做的一件事情就是端号扫瞄,如果能够及时发现和阻止入侵者的端号扫瞄 行为,那么可以大大减少入侵事件的发生率。反应系统可以是一个简单的状态检查包过滤器,也可以是一个复杂的入侵检测系统或可配置的防火墙。我们可以采用诸 如Abacus Port Sentry这样专业的工具,来监视网络接口并且与防火墙交互 *** 作,最终达到关闭端口扫瞄攻击的目的。当发生正在进行的端口扫瞄时,Abacus Sentry可以迅速阻止它继续执行。但是如果配置不当,它也可能允许敌意的外部者在你的系统中安装拒绝服务攻击。正确地使用这个软件将能够有效地防止对 端号大量的并行扫瞄并且阻止所有这样的入侵者。 11、严格管理好口令前面我们也曾经说到过,黑客一旦获取具有根权限的帐号时,就可以对系统进行任意的破坏和攻 击,因此我们必须保护好系统的 *** 作口令。通常用户的口令是保存在文件/etc/passwd文件中的,尽管/etc/passwd是一个经过加密的文件, 但黑客们可以通过许多专用的搜索方法来查找口令,如果我们的口令选择不当,就很容易被黑客搜索到。因此,我们一定要选择一个确保不容易被搜索的口令。另外,我们最好能安装一个口令过滤工具,并借用该工具来帮助自己检查设置的口令是否耐得住攻击。
以上就是关于如何让租用的Linux服务器更安全全部的内容,包括:如何让租用的Linux服务器更安全、如何设定执行Java程序的Linux安全环境、LINUX真的很安全吗等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)