1.5 安全隐患及加固措施
1.用户账户及登录安全
删除多余用户和用户组。Linux是多用户操作系统,存在很多种不一样的角色系统账号,当安装完操作系统后,系统会默认为未添加许多用户及用户组,若部分用户或用户组不再需要,则应当立即删除它们,否则黑客很有可能利用这些账号对服务器实施攻击。具体保留哪些账号,可以依据服务器的用途来决定。
(1)关闭不需要的系统服务。操作系统安装完成后,其在安装的过程中会自主地启动各种类型的服务程序。对于长时间运行的服务器而言,其运行的服务程序越多,则系统的安全性就越低,所以用户或用户组就需要关闭一些应用不到的服务程序,这对提升系统的安全性能有极大的帮助。
(2)密码安全策略。在Linux下,远程的登录系统具备两种认证形式,即密钥与密码认证。其中,密钥认证形式主要是将公钥存储在远程的服务器上,而将私钥存储在本地。当进行系统登录时,再通过本地的私钥以及远程的服务器公钥进行配对认证操作,若认证的匹配度一致,则用户便能够畅通无阻地登录系统。此类认证方式并不会受到暴力破解的威胁。与此同时,只需确保本地私钥的安全,使其不会被黑客盗取,攻击者便不能通过此类认证方式登录到系统中,所以推荐使用密钥方式进行系统登录。
(3)有效应用su、sudo命令。su命令的作用是对用户进行切换。当管理员登录到系统后,使用su命令切换到超级用户角色来执行一些需要超级权限的命令,但是由于超级用户的权限过大,同时,需要管理人员知道超级用户密码,因此su命令具有很严重的管理风险。
sudo命令允许系统赋予普通用户一些超级权限,并且不需普通用户切换到超级用户,因此,在管理上应当细化权限分配机制,使用sudo命令为每位管理员赋予其特定的管理权限。
2.远程访问及登录认证安全
远程登录应用SSH登录方式。telnet是一类存在安全隐患的登录认证服务,其在网络上利用明文传输内容,黑客很容易通过截获telnet数据包获得用户的登录口令,并且telnet服务程序的安全验证方式存在较大的安全隐患,使其成为黑客攻击的目标。SSH服务则会将数据进行加密传输,能够防止DNS欺骗及IP欺骗,并且传输的数据经过压缩,在一定程度上保证了服务器远程连接的安全。
3.文件系统安全
加固系统重要文件。在Linux系统中,如果黑客取得超级权限,则他在操作系统里就不再有任何限制即可以做任何事情。在这种情况下,一个加固的文件系统将是保护系统安全的最后一道防线。管理员可通过chattr命令锁定系统的一些重要文件或目录。
文件权限检查与修改。如果操作系统当中的重要文件的权限设置得不合理,则会对操作系统的安全性产生最为直接的影响,所以系统的运行维护人员需要及时地察觉到权限配置不合理的文件和目录,并及时修正,以防安全事件发生。
安全设定/tmp、/var/tmp、/dev/shm。在该操作系统中,其用于存放临时文件的目录主要有两个,分别为/tmp与/var/tmp。它们有个共同的特点,就是所有的用户都可读、可写和执行,这样就对系统产生了安全隐患。针对这两个目录进行设置,不允许在这两个目录下执行应用程序。
4.系统软件安全
绝大多数的服务器遭受攻击是因为系统软件或者应用程序有重大漏洞。黑客通过这些漏洞可以轻松地侵入服务器,管理员应定期检查并修复漏洞。最常见的做法是升级软件,将软件保持在最新版本状态。这样就可以在一定程度上降低系统被入侵的可能性。