当前位置: 首页 > 文档资料 > Debian 学习笔记 >

10.2. 安全策略

优质
小牛编辑
143浏览
2023-12-01

在这个世界上没有绝对的安全,我们说这台服务器安全并不是说它绝对不会有安全风险,不会受到损害。只能说明该台服务器的安全可信度高,不易受到侵害。相反,如果我们说这台服务器不安全,即可信度低,则这台服务器可能是一些服务的配置有安全漏洞或没有做数据冗余。每种环境、每种应用的可信度要求是有不同的,不能一概而论,如作为企业中心数据库服务器的可信度要求就比内部WEB服务器的可信度要求高。需投入更多的资金和时间对数据库服务器进行配置和优化。为确保系统安全,我们需制定安全策略。安全策略涉及系统、网络、数据和人员等方方面面,制定的安全策略应考虑以下几个安全要素。

  • 机密性,信息或信息片段只应由合法用户访问,防止信息被非法用户访问。

  • 数据完整性,防止数据被非法修改或删除。

  • 可用性,防止服务的中断。

  • 一致性,确保提供的服务行为保持一致。

  • 可控性,控制用户对系统的访问。

  • 审计,记录用户的正常操作和错误操作,一旦发生事故,可通过日志追查事故的发生过程。

为了使安全策略更有效,更符合实际情况,我们在制定安全策略前需先进行风险评估,风险评估的内容包括:

  • 保护的范围和内容,并对所保护内容的价值进行估算。

  • 需防御的侵害。

  • 你可利用的资源,包括资金、人员、时间。

风险评估的步骤:

  • 收集、识别安全策略需保护的资产。这里说的资产不仅仅指计算机,还应包括数据、文档、企业利益和人人利益等。我们可把这些资产分成有形资产和无形资产两类。

    有形资产包括:

    • 计算机及其外设

    • 网络设备及线路

    • 电子文档

    • 软件

    • 系统日志

    无形资产包括:

    • 员工安全及健康

    • 员工的合法权益

    • 企业的形象

    • 客户的满意度

    • 员工的经验和知识

    • 系统密码

  • 收集、识别可能发生的侵害与威胁。包括:

    • 员工离职

    • 员工被收买

    • 员工无意或蓄意破坏

    • 电脑失窃

    • 计算机病毒

    • 黑客入侵

    • 网络线路故障

    • 洪水、雷击和台风等自然灾害

    • 硬件故障

    • 系统Bug

  • 费用-效益分析,分别计算损失费用和预防费用,并按损失的大小和发生机率的大小排列。优先处理损失大,发生机率高的项目。费用-效益分析可产生大量的数据,通过数据的展现,使管理层能更好地理解IT系统安全的重要性,投入更多的资源,提高可信息度。

无论你采取什么措施和投入多少资源,安全风险都是不能完全消除的。但我们可以把风险减低到我们可以接收的程度。同时,要求系统管理员不断跟踪系统变化和最新威胁,及时更新系统,才能使系统处于高可信度的状态。

一个完善的安全系统还包含一系列的说明文档,如安全策略、安全标准和安全指南。

  • 安全策略是一种指导性的文档,具有通用性,一旦确定,很少改动。安全策略应该包含以下内容。第一,它明确保护的对象和原因。第二,它明确了保护的责任。第三,它为解析和解决后续可能出现的冲突提供基础。

  • 安全标准通常需要用"必须"这个词来强调。如数据备份标准,网络使用标准。标准并不牵涉具体的技术实现,它只是一种安全事务的描述。

  • 安全指南是指安全事务的具体操作指南,可指引用户进行一步步的操作,指南会涉及具体的技术和工具。

制定安全策略应注意的内容:

  • 在编制安全文档时,需明确指定责任人,使大家明确自已所担当的责任。

  • 使用肯定的语气,明确指出用户应该做什么和应该怎么做。

  • 要培训用户,培养他们的安全意识。

  • 制定的规定或制度要权责一致,谁具有相应的安全职责就应该赋予他相应的权力,使他能保证安全职责的顺利执行。

  • 确定安全管理范围,应该包括的范围有:在家办公的计算机,外来的临时接入的计算机,PDA,远程接入的计算机,移动存储设备(U盘,CD,DVD等)。

  • 使用"没有特别声明禁止的事,默认是允许的"或"没有特别声明允许的事,默认是禁止的"两句中的一句作为安全描述的补充说明。

  • 在安全要求高的地方,可以设置二层或多层防御。加多几把锁虽然不能彻底防止入侵的风险,但可增加入侵的难度和时间。

安全是一个过程,需不断改进、验证和调整。

下面介绍的内容将帮助你提高系统安全。

  • 在lilo.conf里设置密码控制,使用户在开机时需输入开机密码。

    ...
    timeout=00         #系统启动不进行倒数,直接启动指定内核
    restricted         #启用安全控制
    password=xxxxxx    #设置安全控制密码
    ...
    

    由于lilo.conf包含有开机密码,所以我们需把该文件的访问权限设置成只有root用户可访问,且不能更改。操作步骤如下:

    debian:~# chmod 0600 /etc/lilo.conf
    debian:~# chattr +i /etc/lilo.conf
    debian:~# lilo -v            #使lilo.conf配置生效
    

    chattr +i这个命令也适用于一些重要的文件,以防被破坏恶意修改。

  • 在bash shell下输入的每条命令,都会存放在内存,当退出当前shell时,内存中的命令就会保存在.bash_history文件中。它们最多可记录500条命令。该功能的好处是可以记录你输入过的命令,方便查询和重复调用。但如果你在命令行上输入过密码,则很可能会泄漏给其他人,造成安全问题。所以我们要根据自已的安全要求和使用习惯,重新设置历史命令的记录情况。保存的命令行数受bash shell的HISTSIZE和HISTFILESIZE这两个环境变量控制。HISTSIZE控制当前shell中保存在内存中的历史命令行数,这些命令可用上下方向键来重复调用。HISTFILESIZE控制退出当前shell时保存在.bash_history文件中的命令行数,.bash_history里记录的命令行会在下一次登录shell时被读入内存供用户调用。这两个命令在/etc/profile文件中设置,设置方法如下:

    HISTSIZE=20
    HISTFILESIZE=0
    
  • 在/etc/profile时设置TIMEOUT环境变量,使bash shell在一定的时间内没有操作的情况下自动注销。如:

    TIMEOUT=60              #60秒没操作,bash shell将自动注销
    
  • 口令限制

  • 终端使用限制

  • 登录限制

  • 防火墙

  • 身份验证

  • 加密

  • 数字签名

  • 内容检查

  • 反病毒、反垃圾邮件