
HISTSIZE=0当然,我们也可以直接在命令行中输入如下命令: ln -s /dev/null ~/.bash_history5、为关键分区建立只读属性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文件的访问,禁止一般权限的用户去查看日志文件。当然,系统中内置的日志管理程序功能可能不是太强,我们应该采用专门的日志程序,来 观察那些可疑的多次连接尝试。另外,我们还要小心保护好具有根权限的密码和用户,因为黑客一旦知道了这些具有根权限的帐号后,他们就可以修改日志文件来隐 藏其踪迹了。 9、使用专用程序来防范安全有时,我们通过人工的方法来监视系统的安全比较麻烦,或者是不周密,因此我们还可以通过专业 程序来防范系统的安全,目前最典型的方法为设置陷井和设置蜜罐两种方法。所谓陷井就是激活时能够触发报警事件的软件,而蜜罐(honey pot)程序是指设计来引诱有入侵企图者触发专门的报警的陷井程序。通过设置陷井和蜜罐程序,一旦出现入侵事件系统可以很快发出报警。在许多大的网络中, 一般都设计有专门的陷井程序。陷井程序一般分为两种:一种是只发现入侵者而不对其采取报复行动,另一种是同时采取报复行动。 10、将入侵消灭在萌芽状态入侵者进行攻击之前最常做的一件事情就是端号扫瞄,如果能够及时发现和阻止入侵者的端号扫瞄 行为,那么可以大大减少入侵事件的发生率。反应系统可以是一个简单的状态检查包过滤器,也可以是一个复杂的入侵检测系统或可配置的防火墙。我们可以采用诸 如Abacus Port Sentry这样专业的工具,来监视网络接口并且与防火墙交互 *** 作,最终达到关闭端口扫瞄攻击的目的。当发生正在进行的端口扫瞄时,Abacus Sentry可以迅速阻止它继续执行。但是如果配置不当,它也可能允许敌意的外部者在你的系统中安装拒绝服务攻击。正确地使用这个软件将能够有效地防止对 端号大量的并行扫瞄并且阻止所有这样的入侵者。 11、严格管理好口令前面我们也曾经说到过,黑客一旦获取具有根权限的帐号时,就可以对系统进行任意的破坏和攻 击,因此我们必须保护好系统的 *** 作口令。通常用户的口令是保存在文件/etc/passwd文件中的,尽管/etc/passwd是一个经过加密的文件, 但黑客们可以通过许多专用的搜索方法来查找口令,如果我们的口令选择不当,就很容易被黑客搜索到。因此,我们一定要选择一个确保不容易被搜索的口令。另外,我们最好能安装一个口令过滤工具,并借用该工具来帮助自己检查设置的口令是否耐得住攻击。
题主说的Linux安全,应该指的是Linux *** 作系统的本身的安全吧。这个范围比较广,包括Linux内核层的安全与用户层的安全。用户层的安全包括Linux下的各种认证系统,比如目前流行的PAM认证机制,Ukey指纹认证机制,远程网络认证机制,LDAP认证机制,3A认证机制等。用户层安全还包括网络安全,比如通过iptables定制防火墙,关闭服务器不必要开启的端口等。内核态的安全,比如,缓冲区溢出攻击,当然这个安全漏洞在windows中也是存在的,各种各样的内核态提权漏洞等,现在有很多网络安全公司基于netfilter框架添加自已的勾子函数, 生产各种入侵检测系统等。
Linux系统安全之所以在互联网公司包括像阿里巴巴这样的公司不受重视,是因为这些公司觉得,做为暴露给用户的各种应用,如Web应用等,这些应用的安全显然比 *** 作系统的安全来得更加重要。当应用的安全得不到保障,Web程序被各种脚本小子植入如存储型XSS脚本,导致用户密码被盗,甚至导致一些更严重的结果,比如存储用户名与密码的数据库被脱库,这个就是相当严重的安全事故了。也许这个破坏者完成这些 *** 作,并不需要利用 *** 作系统的漏洞,也不需要取得 *** 作系统的用户名和密码,只是要取得一个具有较高权限的数据库管理员的密码即可完成上述 *** 作。当黑客取得Linux系统的普通用户名与密码时,当他需要root用户时,才会去利用 *** 作系统本身的漏洞进行提权。关于Linux *** 作系统提权漏洞,在2.6.18版本存在较多的提权漏洞,到了2.6.32内核,这种提权漏洞已经少了很多。
回到正题,对于现在的很多IT从业人员来说,前途最直接的体现就是工资,待遇。就目前国内来说,直接从事Linux *** 作系统安全的公司很少,大部分都是科研院校在做这方面的工作。比如中科院下属的一些研究所,国家电网、南方电网里面的研究院,当然还有各大高校的一些信息安全实验室,还有解放军叔叔,他们也在从事这些方面的工作。
当然,如同所有的IT技术一样,Linux *** 作系统的各种安全机制,也是国外在主导。现有的Linux安全框架叫做LSM,Linux security module。基于这个框架,可以实现各种各样的Linux安全机制,其中最著名的就是SELinux。因为Redhat的Linux自带的安全模块就是SELinux。SELinux最早是由NSA(美国国家安全局)主导的项目,后面开源了。Redhat在SELinux上做了大量的工作。但SELinux由于其配置比较复杂,再加上许多人认为Linux系统本身已经足够安全了,所以大部分人都将SELinux设置了disabled。想了解更多Linux命令,可查看《Linux命令大全》,具体搜索方式看下图:
姓名:黄婷 学号:19020100410 学院:电子工程学院
转自: https://blog.csdn.net/daqiang012/article/details/103947313?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522162848234916780357255732%2522%252C%2522scm%2522%253A%252220140713.130102334..%2522%257D&request_id=162848234916780357255732&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~top_click~default-2-103947313.first_rank_v2_pc_rank_v29&utm_term=Linux%E7%B3%BB%E7%BB%9F&spm=1018.2226.3001.4449#t8
【嵌牛导读】Linux系统安全隐患及加固措施
【嵌牛鼻子】Linux系统 安全隐患及加固措施
【嵌牛提问】Linux系统如何保护?
【嵌牛正文】
用户账户以及登录安全
删除多余用户和用户组。Linux是多用户 *** 作系统,存在很多种不一样的角色系统账号,当安装完成 *** 作系统之后,系统会默认为未添加许用户组及用户,若是部分用户或是用户组不需要,应当立即删除它们,否则黑客很有可能利用这些账号,对服务器实施攻击。具体保留哪些账号,可以依据服务器的用途来决定。
关闭不需要的系统服务。 *** 作系统安装完成之后,其会在安装的过程当中,会自主的启动各种类型的服务程序内容,对于长时间运行的服务器而言,其运行的服务程序越多,则系统的安全性就越低。所以,用户或是用户组就需要将一些应用不到的服务程序进行关闭,这对提升系统的安全性能,有着极大的帮助。
密码安全策略。在Linux之下,远程的登录系统具备两种认证的形式:即 密钥 与密码认证。其中,密钥认证的形式,主要是将 公钥 储存在远程的服务器之上, 私钥 存储在本地。当进行系统登陆的时候,再通过本地的私钥,以及远程的服务器公钥,进行配对认证的 *** 作,若是认证的匹配度一致,则用户便能够畅通无阻的登录系统。此类认证的方式,并不会受到暴力破解的威胁。与此同时,只需要确保本地私钥的安全,使其不会被黑客所盗取即可,攻击者便不能够通过此类认证方式登陆到系统中。所以,推荐使用密钥方式进行系统登陆。
有效应用su、 sudo 命令。su命令的作用的是对用户进行切换。当管理员登录到系统之后,使用su命令切换到超级用户角色来执行一些需要超级权限的命令。但是由于超级用户的权限过大,同时,需要管理人员知道超级用户密码,因此su命令具有很严重的管理风险。
sudo命令允许系统赋予普通用户一些超级权限,并且不需普通用户切换到超级用户。因此,在管理上应当细化权限分配机制,使用sudo命令为每一位管理员服务其特定的管理权限。
远程访问及登陆认证安全
远程登录应用 SSH 登陆方式。telnet是一类存在安全隐患的登录认证服务,其在网络之上利用明文传输内容,黑客很容易通过结果telnet数据包,获得用户的登陆口令。并且telnet服务程序的安全验证方式存在较大的安全隐患,使其成为黑客攻击的目标。SSH服务则会将数据进行加密传输,能够防止 DNS 欺骗以及IP欺骗,并且传输的数据是经过压缩,在一定程度上保证了服务器远程连接的安全。
文件系统的安全
加固系统重要文件。在Linux系统中,如果黑客取得超级权限,那么他在 *** 作系统里面就不会再有任何的限制地做任何事情。在这种情况下,一个加固的文件系统将会是保护系统安全的最后一道防线。管理员可通过 chattr 命令锁定系统一些重要文件或目录。
文件权限检查与修改。如果 *** 作系统当中的重要文件的权限设置不合理,则会对 *** 作系统的安全性,产生最为直接的影响。所以,系统的运行维护人员需要及时的察觉到权限配置不合理的文件和目录,并及时修正,以防安全事件发生。
安全设定/tmp、/var/tmp、/dev/shm。在该 *** 作系统当中,其用于存放临时文件的目录,主要有两个,分别为/tmp与/var/tmp。它们有个共同特点,就是所有的用户可读可写和执行,这样就对系统产生了安全隐患。针对这两个目录进行设置,不允许这两个目录下执行应用程序。
系统软件安全
绝大多数的服务器遭受攻击是因为系统软件或者应用程序有重大漏洞。黑客通过这些漏洞,可以轻松地侵入服务器。管理员应定期检查并修复漏洞。最常见的做法是升级软件,将软件保持在最新版本状态。这样就可以在一定程度上降低系统被入侵的可能性。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)