热门标签 | HotTags
当前位置:  开发笔记 > 运维 > 正文

构建安全Linux系统十二守则

文章标题:构建安全Linux系统十二守则。Linux是中国IT实验室的一个技术频道。包含桌面应用,Linux系统管理,内核研究,嵌入式系统和开源等一些基本分类

  计算机系统的核心是操作系统,因此,操作系统的安全与否直接决定着信息是否安全。是开放源代码的操作系统安全还是不开放源代码的操作系统安全?这一点在业界有不同的声音。但有一点可以肯定,开放源代码有利于迅速地对缺乏安全性的代码进行及时修改,以达到安全要求。
  
    由于Linux的开放性,使得我们可以通过修改系统源代码,结合现有的系统安全技术以及加入我们自有的加密算法,构建一个安全的Linux操作系统。这里需要解决以下12个方面的问题。
  
    1. 身份识别和认证
    身份识别和认证是信息系统的最基本要求。一般的Linux系统采用用户名和口令对的形式来进行身份识别和认证。这包含了一些不安全因素,比如系统的密码文件被窃,入侵者采用穷举的方式侵入等。我们可以通过加入其他认证形式来提高系统身份识别和认证的安全性,例如使用公钥算法,将用户的私钥存于用户随身携带的硬件介质上(如IC卡、USB钥匙),系统只保留用户认证信息中的公钥信息。这样,即使公钥信息被窃,入侵者也不可能算出私钥,攻入系统。
  
    2. 基本的入口控制
    通过提供明显的警告信息,用户登录时相关信息的显示,以及对登录失败次数的限制,也能有效的防范入侵者。
  
    3. 安全的审计
    改善Linux原有的审计功能,对用户、进程及其他客体行为进行完善的跟踪审计。首先,审计要保证本身的审计信息不会被篡改或者删除。其次,系统要能够对所有的敏感操作进行记录。
  
    4. 访问控制
    在Linux系统中加入必须的访问控制的实现,比如强制访问控制(MAC)以及自主访问控制(DAC)。自主访问控制允许系统的用户对于属于自己的客体,按照自己的意愿,允许或者禁止其他用户访问。目前Linux提供类似传统UNIX系统的“属主用户/同组用户/其他组”权限保护机制。为了对用户信息提供更好的保护,应能够为用户提供用户级的控制力度。使自主存取控制更接近真实的情况。强制存取控制是由系统管理员进行的安全访问权限设置,提供比自主存取控制更严格的访问约束。
  
    5. 加密文件系统
    通过在系统中加入加密文件系统机制,保证系统的数据安全,即使系统的存储介质被窃,在入侵者没有取得密钥的情况下,数据依然是不可读的。Linux的开放源代码为我们了解认识Linux的文件系统构架成为可能,也方便了我们对文件系统进行修改,这就使得加密文件系统的实施成为可能。
  
    6. 完整性保护
    通过对文件和文件系统的跟踪及维护相应的数据库,我们可以对系统中的变化一清二楚,在系统的某些数据发生非法的变化时,我们能够迅速地发现,从而避免入侵者后门程序的存在。这种保护与备份机制相结合,使系统能够迅速地进行自我恢复。
  
    7. 入侵攻击检测与防范
    采用对敏感资源、IP或者端口进行监测等办法,可以及时地发现入侵行为,并采取相应的措施。比如大量半开的TCP连接,源地址为非法IP的外部数据包,对138和139端口的操作等等,都有可能是入侵的特征。我们通过编写相应的代码,和系统有机地结合在一起,就能有效地防范这类入侵。
  
    8. 提供完善的安全API
    在系统中为用户提供一套完善的安全API,有利于用户结合系统实现自己的安全应用。
  
    9. 修改系统中的服务,加入安全的机制
    升级系统服务版本,修改服务中的安全漏洞。
  
    10.提供安全的服务和应用
    比如支持SSL的Web服务、SSH、IPSEC、支持PGP的邮件程序等。
  
    11.提供完善的系统安全扫描与检测工具
    在系统中提供完善的安全扫描与检测工具,管理员可以经常对系统进行安全检测,及时发现安全隐患。
  
    12.采用安全的加密算法
    采用更长密钥(128位以上)的公认安全加密算法来实现系统中的加密应用。
  
    开放源代码的Linux为我们实现安全的操作系统平台提供了新的机遇。通过对基于Linux的安全操作系统的研究,将有助于我们实现自有版权的安全操作系统,构建国人自己的信息安全平台。
  
推荐阅读
  • 在现代网络环境中,两台计算机之间的文件传输需求日益增长。传统的FTP和SSH方式虽然有效,但其配置复杂、步骤繁琐,难以满足快速且安全的传输需求。本文将介绍一种基于Go语言开发的新一代文件传输工具——Croc,它不仅简化了操作流程,还提供了强大的加密和跨平台支持。 ... [详细]
  • 1:有如下一段程序:packagea.b.c;publicclassTest{privatestaticinti0;publicintgetNext(){return ... [详细]
  • 在计算机技术的学习道路上,51CTO学院以其专业性和专注度给我留下了深刻印象。从2012年接触计算机到2014年开始系统学习网络技术和安全领域,51CTO学院始终是我信赖的学习平台。 ... [详细]
  • 本文探讨了Hive中内部表和外部表的区别及其在HDFS上的路径映射,详细解释了两者的创建、加载及删除操作,并提供了查看表详细信息的方法。通过对比这两种表类型,帮助读者理解如何更好地管理和保护数据。 ... [详细]
  • 本文详细介绍了如何在BackTrack 5中配置和启动SSH服务,确保其正常运行,并通过Windows系统成功连接。涵盖了必要的密钥生成步骤及常见问题解决方法。 ... [详细]
  • 本文详细介绍了如何在Linux系统上安装和配置Smokeping,以实现对网络链路质量的实时监控。通过详细的步骤和必要的依赖包安装,确保用户能够顺利完成部署并优化其网络性能监控。 ... [详细]
  • 在金融和会计领域,准确无误地填写票据和结算凭证至关重要。这些文件不仅是支付结算和现金收付的重要依据,还直接关系到交易的安全性和准确性。本文介绍了一种使用C语言实现小写金额转换为大写金额的方法,确保数据的标准化和规范化。 ... [详细]
  • 网络攻防实战:从HTTP到HTTPS的演变
    本文通过一系列日记记录了从发现漏洞到逐步加强安全措施的过程,探讨了如何应对网络攻击并最终实现全面的安全防护。 ... [详细]
  • 本文深入探讨了Linux系统中网卡绑定(bonding)的七种工作模式。网卡绑定技术通过将多个物理网卡组合成一个逻辑网卡,实现网络冗余、带宽聚合和负载均衡,在生产环境中广泛应用。文章详细介绍了每种模式的特点、适用场景及配置方法。 ... [详细]
  • 掌握远程执行Linux脚本和命令的技巧
    本文将详细介绍如何利用Python的Paramiko库实现远程执行Linux脚本和命令,帮助读者快速掌握这一实用技能。通过具体的示例和详尽的解释,让初学者也能轻松上手。 ... [详细]
  • 本文详细分析了Hive在启动过程中遇到的权限拒绝错误,并提供了多种解决方案,包括调整文件权限、用户组设置以及环境变量配置等。 ... [详细]
  • 2023年京东Android面试真题解析与经验分享
    本文由一位拥有6年Android开发经验的工程师撰写,详细解析了京东面试中常见的技术问题。涵盖引用传递、Handler机制、ListView优化、多线程控制及ANR处理等核心知识点。 ... [详细]
  • 从 .NET 转 Java 的自学之路:IO 流基础篇
    本文详细介绍了 Java 中的 IO 流,包括字节流和字符流的基本概念及其操作方式。探讨了如何处理不同类型的文件数据,并结合编码机制确保字符数据的正确读写。同时,文中还涵盖了装饰设计模式的应用,以及多种常见的 IO 操作实例。 ... [详细]
  • 网络运维工程师负责确保企业IT基础设施的稳定运行,保障业务连续性和数据安全。他们需要具备多种技能,包括搭建和维护网络环境、监控系统性能、处理突发事件等。本文将探讨网络运维工程师的职业前景及其平均薪酬水平。 ... [详细]
  • 从零开始构建完整手机站:Vue CLI 3 实战指南(第一部分)
    本系列教程将引导您使用 Vue CLI 3 构建一个功能齐全的移动应用。我们将深入探讨项目中涉及的每一个知识点,并确保这些内容与实际工作中的需求紧密结合。 ... [详细]
author-avatar
想要把迩贴上私人标签92
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有