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

Linux系统安全加固

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

    一、安装和升级
        使用custom自定义安装,不必要的软件包尽量不装,如有必要给lilo/grub引导器加入口令限制,安装完成后使用up2date、yum或是apt(Debian)升级系统软件,有时升级内核也是必要的。
    编辑 /etc/sudoers 添加下面内容
    jinshuai    ALL=NOPASSWD:ALL

    二、帐号安全
        1、一般服务器都是放在IDC机房,需要通过远程访问进行管理,要限制root的远程访问,管理员通过普通帐号远程登录,然后su到root,开发人员只使用普通帐号权限。
    1) 在/etc/default/login 文件,增加一行设置命令:
      COnSOLE= /dev/tty01
    2)可以通过下面的脚本禁止对控制台的访问:
      # !/bin/sh
      cd /etc/pam.d
      for i in * ; do
       sed '/[^#].*pam_console.so/s/^/#/'  foo && mv foo $I
      done
    3) 通过下面的措施可以防止任何人都可以su为root,在/etc/pam.d/su中添加如下两行。
      auth       sufficient   /lib/security/$ISA/pam_rootok.so debug
      auth       required     /lib/security/$ISA/pam_wheel.so group=wheel
      然后把您想要执行su成为root的用户放入wheel组:
      usermod -G10 admin

    2、编辑/etc/securetty,注释掉所有允许root远程登录的控制台,然后禁止使用所有的控制台程序,其命令如下:
    rm -f /etc/security/console.apps/servicename

     三、采用最少服务原则,凡是不需要的服务一律注释掉。在/etc/inetd.conf中不需要的服务前加"#",较高版本中已经没有inetd,而换成了Xinetd;取消开机自动运行服务,把/etc/rc.d/rc3.d下不需要运行的服务的第一个字母"S"改成"K",其他不变.

    四.文件系统权限
    1) 找出系统中所有含s"位的程序,把不必要的"s"位去掉,或者把根本不用的直接删除,这样可以防止用户滥用及提升权限的可能性,其命令如下:
      find / -type f -perm -4000 -o -perm -2000 -print | xargs ls -lg
    2) 把重要文件加上不可改变属性(一般情况不用这么做):
      chattr +i /etc/passwd
    Immutable,系统不允许对这个文件进行任何的修改。如果目录具有这个属性,那么任何的进程只能修改目录之下的文件,不允许建立和删除文件。
    3) 找出系统中没有属主的文件:
      find / -nouser -o -nogroup
    4) 找出任何都有写权限的文件和目录:
      find / -type f -perm -2 -o -perm -20 |xagrs ls -lg
      find / -type d -perm -2 -o -perm -20 |xagrs ls -ldg
    5) ftp的上传目录不能给与执行权限,如提供可运行CGI的虚拟主机服务,应该做额外安全配置.编/etc/security/limits.conf,加入或改变如下行:
      hard core 0
      hard rss 5000
      hard nproc 20

    五.Banner伪装
    1) 入侵者通常通过操作系统、服务及应用程序版本来攻击,漏油列表和攻击程也是按此来分类,所以我们有必要作点手脚来加大入侵的难度。
    所以编辑/etc/rc.d/rc.local如下:
      echo "Kernel $(uname -r) on $a $(uname -m)" >/etc/issue
      echo "Kernel \r on an \m" >> /etc/issue
      cp -f /etc/issue /etc/issue.net
      echo >> /etc/issue
    2) 对于Apache的配置文件,找到ServerTokens和ServerSignature两个directive,修改其默认属性如下,使用不回显版本号:
      ServerTokens prod
      ServerSignature Off

    六、IPTABLES防火墙规则:
    iptables -A INPUT -p --dport 22 -j ACCEPT
    iptables -A INPUT -i eth0 -p tcp --dport 80 -j ACCEPT
    iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
    iptables -A INPUT -j DROP
    以上规则将阻止由内而外的TCP主动选接。上面是一个简单例子,IPTABLES功能十分强大,可以根据具体情况设置防火墙规则。

    七、tripwire是一个比较有名的工具,它能帮你判断出一些重要系统文件是否被修改过。现在的Linux发行版中一般部带有该工具的开源版本,在默认的校验对象配置文件中加入一些敏感文件就可以使用。
    八.自行扫描
    普通的安全加固基本上是做完了,我们可以自己做一个风险评估,推荐使用nessus latest version.

    九.日志策略
      主要就是创建对人侵相关的重要日志的硬拷贝,不致于应急响应的时候连最后的黑匣子都没有。可以把它们重定向到打印机,管理员邮件,独立的日志服务器及其热备份。

    十.Snort入侵检测系统
      对人侵响应和安全日志要求较高的系统有此必要;对于一般的系统而言,如果管理员根本不会去看一大堆日志,那么它白白占用系统资源,就如同鸡肋一样。
    对Linux平台下病毒的防范总结出以下几条建议,仅供参考:

    (1)做好系统加固工作。
    (2)留心安全公告,及时修正漏洞。
    (3)日常操作不要使用root权限进行。
    (4)不要随便安装来历不明的各种设备驱动程序。
    (5)不要在重要的服务器上运行一些来历不明的可执行程序或脚本。
    (6)尽量安装防毒软件,并定期升级病毒代码库。
    (7)对于连接到Internet的Linux服务器,要定期检测Linux病毒、蠕虫和木马是否存在。
    (8)对于提供文件服务的Linux服务器,最好部署一款可以同时查杀Windows和Linux病毒的软件。
    (9)对于提供邮件服务的Linux服务器,最好配合使用一个E-mail病毒扫描器。
    总而言之,对于Linux平台下病毒的防范要采取多种手段,决不可因为现在Linux病毒很少就掉以轻心。


推荐阅读
  • 主流操作系统简介
    主流操作系统简介子墨居士操作系统理论定义为管理计算机硬件资源,控制其他程序运行并为用户提供交互操作界面的系统软件的集合。操作系统是计算机系统的关键组成部分࿰ ... [详细]
  • 目录浏览漏洞与目录遍历漏洞的危害及修复方法
    本文讨论了目录浏览漏洞与目录遍历漏洞的危害,包括网站结构暴露、隐秘文件访问等。同时介绍了检测方法,如使用漏洞扫描器和搜索关键词。最后提供了针对常见中间件的修复方式,包括关闭目录浏览功能。对于保护网站安全具有一定的参考价值。 ... [详细]
  • 如何在服务器主机上实现文件共享的方法和工具
    本文介绍了在服务器主机上实现文件共享的方法和工具,包括Linux主机和Windows主机的文件传输方式,Web运维和FTP/SFTP客户端运维两种方式,以及使用WinSCP工具将文件上传至Linux云服务器的操作方法。此外,还介绍了在迁移过程中需要安装迁移Agent并输入目的端服务器所在华为云的AK/SK,以及主机迁移服务会收集的源端服务器信息。 ... [详细]
  • PHP组合工具以及开发所需的工具
    本文介绍了PHP开发中常用的组合工具和开发所需的工具。对于数据分析软件,包括Excel、hihidata、SPSS、SAS、MARLAB、Eview以及各种BI与报表工具等。同时还介绍了PHP开发所需的PHP MySQL Apache集成环境,包括推荐的AppServ等版本。 ... [详细]
  • 如何查看电脑系统版本_腾讯云服务器系统版本怎么看?Windows和Centos版本怎么选?...
    腾讯云服务器系统版本怎么看?想要知道自己的腾讯云服务器系统版本是哪个,可以登录云服务器后台管理系统查看,或者使用命令行查询,如果不会操作& ... [详细]
  • 如何监控 Linux 服务器状态?,分享
    Linux服务器我们天天打交道,特别是Linux工程师更是如此。为了保证服务器的安全与性能,我们经常需要监控服务器的一些状态,以保证工作能顺利开展。本文介绍的几个命令,不仅仅适用于 ... [详细]
  • Skywalking系列博客1安装单机版 Skywalking的快速安装方法
    本文介绍了如何快速安装单机版的Skywalking,包括下载、环境需求和端口检查等步骤。同时提供了百度盘下载地址和查询端口是否被占用的命令。 ... [详细]
  • 本文介绍了Python高级网络编程及TCP/IP协议簇的OSI七层模型。首先简单介绍了七层模型的各层及其封装解封装过程。然后讨论了程序开发中涉及到的网络通信内容,主要包括TCP协议、UDP协议和IPV4协议。最后还介绍了socket编程、聊天socket实现、远程执行命令、上传文件、socketserver及其源码分析等相关内容。 ... [详细]
  • 这是原文链接:sendingformdata许多情况下,我们使用表单发送数据到服务器。服务器处理数据并返回响应给用户。这看起来很简单,但是 ... [详细]
  • Centos7.6安装Gitlab教程及注意事项
    本文介绍了在Centos7.6系统下安装Gitlab的详细教程,并提供了一些注意事项。教程包括查看系统版本、安装必要的软件包、配置防火墙等步骤。同时,还强调了使用阿里云服务器时的特殊配置需求,以及建议至少4GB的可用RAM来运行GitLab。 ... [详细]
  • 本文介绍了在Hibernate配置lazy=false时无法加载数据的问题,通过采用OpenSessionInView模式和修改数据库服务器版本解决了该问题。详细描述了问题的出现和解决过程,包括运行环境和数据库的配置信息。 ... [详细]
  • 图解redis的持久化存储机制RDB和AOF的原理和优缺点
    本文通过图解的方式介绍了redis的持久化存储机制RDB和AOF的原理和优缺点。RDB是将redis内存中的数据保存为快照文件,恢复速度较快但不支持拉链式快照。AOF是将操作日志保存到磁盘,实时存储数据但恢复速度较慢。文章详细分析了两种机制的优缺点,帮助读者更好地理解redis的持久化存储策略。 ... [详细]
  • mac php错误日志配置方法及错误级别修改
    本文介绍了在mac环境下配置php错误日志的方法,包括修改php.ini文件和httpd.conf文件的操作步骤。同时还介绍了如何修改错误级别,以及相应的错误级别参考链接。 ... [详细]
  • .htaccess文件 ... [详细]
  • 原文地址http://balau82.wordpress.com/2010/02/28/hello-world-for-bare-metal-arm-using-qemu/最开始时 ... [详细]
author-avatar
我是田小勇2702932553
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有