由于linux操作系统良好的网络功能,互联网中的大多数web服务器都使用Linux作为主要的操作系统。但是由于操作系统是多用户操作系统,黑客为了在攻击中隐藏自己,往往选择Linux作为第一个攻击目标。那么,作为一个Linux用户,如何才能采取合理的措施来防范Linux的安全性呢?笔者收集整理了一些防范Linux安全的措施,现投稿,恳请各位网友不断补充完善。
1、禁止使用ping命令。
Ping命令是计算机之间相互检测的应用程序,计算机之间通信数据的传输没有经过加密。因此,当我们使用ping命令检测某个服务器时,互联网上可能存在一些不法分子,他们通过专门的黑客程序中途窃取网络线路上传输的信息,并利用窃取的信息攻击指定的服务器或系统。因此,我们有必要禁止在Linux系统中使用Linux命令。在linux中,如果想让ping不响应,它是用来忽略icmp包的,那么我们可以在Linux的命令行中输入以下命令:echo 1/proc/sys/net/IP v4/ICMP _ echo _ igore _ all;如果要继续使用ping命令,可以输入命令echo 0/proc/sys/net/IP v4/ICMP _ echo _ igore _ all。
2.注意及时备份系统。
为了防止系统在使用过程中由于任何其他情况而无法正常运行,我们应该对完整的Linux系统进行备份。Linux系统的安装任务一完成,最好就对整个系统进行备份。以后可以根据这个备份来验证系统的完整性,这样就可以发现系统文件是否被非法修改过。如果系统文件已经损坏,还可以使用系统备份来恢复到正常状态。在备份信息时,我们可以将完整的系统信息备份在光盘上,然后定期将系统与光盘内容进行对比,验证系统的完整性是否被破坏。如果对安全级别的要求特别高,可以将光盘设置为可引导的,验证工作可以作为系统启动过程的一部分。只要它可以从光盘启动,就意味着系统没有被损坏。
3.改进登录服务器
将系统的登录服务器迁移到单独的机器上会增加系统的安全级别,使用更安全的登录服务器替代Linux自带的登录工具可以进一步提高安全性。在大型Linux网络中,最好为syslog服务使用单独的登录服务器。必须是能满足所有系统登录需求的服务器系统,并且有足够的磁盘空间。该系统上不应运行其他服务。更安全的登录服务器将大大削弱入侵者通过登录系统篡改日志文件的能力。
4.取消根命令历史记录。
在linux下,系统会自动记录用户输入的命令,而root用户发出的命令往往带有敏感信息。为了保证安全,root命令的历史一般不要记录或少记录。为了设置系统不记录每个人执行的命令,我们可以先在linux的命令行下用cd命令输入/etc命令,然后用edit命令打开这个目录下的profile文件,在里面输入以下内容:
HISTFILESIZE=0
HISTSIZE=0
当然,我们也可以直接在命令行输入以下命令:ln -s /dev/null ~/。bash _历史。
5.为键分区建立只读属性。
Linux的文件系统可以分为几个主要分区,每个分区的配置和安装都不同。一般情况下,至少要建立/、/usr/local、/var和/home分区。/usr可以以只读方式安装,并且被认为是不可修改的。如果/usr中的任何文件被更改,那么系统将立即发出安全警报。当然,这不包括用户自己更改/usr中的内容。/lib、/boot和/sbin的安装和设置是相同的。安装时应尽可能将它们设置为只读,对它们的文件、目录和属性的任何修改都会引起系统报警。
当然,不可能将所有主要分区都设置为只读。有些分区,比如/var,由于其本身的性质,不能设置为只读,但是不应该允许它们有执行权。
6.杀死攻击者的所有进程。
假设我们在系统的日志文件中发现一个用户从一个未知的主机登录,我们确定这个用户在这个主机上没有对应的账号,这就说明这个时候我们正在被攻击。为了确保系统的安全性不被进一步破坏,我们应该立即锁定指定的帐户。如果攻击者已经登录到指定的系统,我们应该立即断开主机和网络之间的物理连接。如果可能的话,我们还要进一步检查这个用户的历史,然后仔细检查是否有其他用户被假冒,攻击者是否有限制权限;最后,应该终止该用户的所有进程,并将该主机的IP地址掩码添加到hosts.deny文件中
7.完善系统内部安全机制。
我们可以通过改进Linux操作系统的内部函数来防止缓冲区溢出,从而加强Linux系统的内部安全机制,大大提高整个系统的安全性。然而,缓冲区溢出很难实现,因为入侵者必须能够判断潜在的缓冲区溢出何时发生,以及它将出现在内存中的什么位置。缓冲区溢出也很难防止,系统管理员必须彻底消除缓冲区溢出的条件才能防止这种攻击。正因为如此,很多人,包括Linux Torvalds自己,都认为这个安全Linux补丁非常重要,因为它防止了所有利用缓冲区溢出的攻击。但需要注意的是,这些补丁也会导致执行栈中一些程序和库的依赖,这也会给系统管理员带来新的挑战。
8.跟踪并记录系统。
为了密切监视黑客的攻击活动,我们应该启动日志文件来记录系统的运行情况。当黑客攻击系统时,其线索会被记录在日志文件中。所以很多黑客在开始攻击系统的时候,往往会先修改系统的日志文件,隐藏行踪。因此,我们必须限制对/var/log文件的访问,并禁止具有一般权限的用户查看日志文件。当然,系统内置的日志管理器功能可能不会太强。我们应该采用一个特殊的日志程序来观察那些可疑的多重连接尝试。另外,要注意保护密码和root权限的用户,因为黑客一旦知道这些root权限的账号,就可以修改日志文件隐藏踪迹。
9.使用特殊程序来防止安全。
有时候,用人工的方法来监控系统的安全性是很麻烦或者不彻底的,所以我们也可以通过专业的程序来防范系统的安全性。目前最典型的方法是设置陷阱和蜜罐。所谓陷阱,就是被激活时可以触发报警事件的软件,而蜜罐程序则是指用来引诱入侵者触发特殊报警的陷阱程序。通过设置陷阱和蜜罐程序,一旦发生入侵事件,系统可以快速报警。在许多大型网络中,一般会设计专门的陷阱程序。陷阱程序一般分为两种:一种是只找闯入者不报仇,一种是同时报仇。
10.将入侵消灭在萌芽状态
入侵者在攻击前最常做的一件事就是pin扫描。如果能够及时发现并阻止入侵者的pin扫描行为,就可以大大降低入侵事件的发生率。反应系统可以是简单的状态检查包过滤器、复杂的入侵检测系统或可配置的防火墙。我们可以使用Abacus Port Sentry等专业工具对网络接口进行监控,并与防火墙进行互操作,最终达到关闭端口扫描攻击的目的。当正在进行的端口扫描发生时,Abacus Sentry可以快速阻止它继续进行。但是如果配置不当,它也可能允许怀有敌意的外来者在您的系统中安装拒绝服务攻击。正确使用该软件将有效防止大量平行扫描对等号码,并阻止所有此类入侵者。
11.严格管理密码。
我们之前说过,黑客一旦获得root权限的账号,就可以随意破坏攻击系统,所以我们一定要保护好系统的操作密码。通常,用户的密码保存在/etc/passwd文件中。虽然/etc/passwd是一个加密文件,但是黑客可以通过许多专门的搜索方法找到密码。如果我们的密码选择不当,很容易被黑客搜索到。所以一定要选择不容易被搜索到的密码。另外,我们最好安装一个密码过滤工具,借用它来帮助资料管理流程检查设置的密码是否能抵御攻击。