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

Linux系统安全设置全面坚固你的系统

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

    不久前,我以极大的耐心下载了最新的内核版本,那可是通过拨入连接完成的。在整个下载的过程中,我渴望有一天在家里就能使用高速的Internet连接。xDSL和线缆猫的到来使其成为可能,但这并不包括价格因素。

    在我写此文章的同时,在世界的某个地方,也许正有一个人在他家里的计算机上第一次安装发布的Linux.一个新的Linux 的管理员通过为其家人和朋友设置帐户来使系统运转起来。也许在初次安装完成后的不长时间里,这个Linux 系统就会以令人感激涕零的高速DSL 接入Internet.

    还是容易被攻击

    今天几近所有可用的linux 发布在安全方面存在漏洞,其中的多数漏洞是很容易被攻入的,但不幸的是依惯例和习惯做法,他们是开放的。典型安装的Linux首次启动时就提供了多种多样的可被攻击的服务,譬如SHELL ,IMAP和POP3. 这些服务经常会被游手好闲的网民按其需要用来作为系统突破的切入点,这不仅是Linux 的局限——久经风霜的商业UNIX也提供此类服务,而且也会被突破。

    不用抱怨和指责,新系统的锁定(坚固系统的专业说法)是非常重要的。信不信由你,一个Linux 系统的坚固过程是不需要过多的系统安全专门知识。实际上,你可以在5 分钟之内就可以将百分之九十的不可靠因素屏蔽掉。

    开始吧

    在开始坚固系统前,要问清自己你的机器担当的角色和用来接入Internet的舒适度。要仔细确定你要对整个世界范围提供的服务,如果你还不能确定,最好什么也不要做。明确自己的安全策略是非常重要的。要决定你自己的系统上哪些使用是可接受的而哪些是不可接受的。

    本文中范例机器的目标是作为工作站用来收发mail,阅读新闻,浏览网页等等。

    确立网络服务安全

    首先,以超级用户(root)登入系统,用netstat 命令(这是多数Linux 系统标配的网络工具)查看一下当前的网络状态,输出的结果譬如是:
   

root@percy / ]# netstat -a 
  Active Internet connections (servers and established) 
  Proto Recv-Q Send-Q Local Address Foreign Address State 
  tcp 0 0 *:imap2 *:* LISTEN 
  tcp 0 0 *:pop-3 *:* LISTEN 
  tcp 0 0 *:linuxconf *:* LISTEN 
  tcp 0 0 *:auth *:* LISTEN 
  tcp 0 0 *:finger *:* LISTEN 
  tcp 0 0 *:login *:* LISTEN 
  tcp 0 0 *:shell *:* LISTEN 
  tcp 0 0 *:telnet *:* LISTEN 
  tcp 0 0 *:ftp *:* LISTEN 
  tcp 0 0 *:6000 *:* LISTEN 
  udp 0 0 *:ntalk *:* 
  udp 0 0 *:talk *:* 
  udp 0 0 *:xdmcp *:* 
  raw 0 0 *:icmp *:* 7 
  raw 0 0 *:tcp *:* 7


    如你所见到的输出结果,最初的安装对一定数量的服务并未侦听,而这些服务的大多数就是麻烦的制造者,在配置文件/etc/inetd.conf中就可以行使禁止。

    用你喜欢的文本编辑器打开这个文件,注销你不想提供的服务,这只需在包含服务内容的行前面添加一个``#'',在本例中所有的服务都被注销了,当然,如果你决定要提供这些服务中的某几个,那由你自己来决定。

    现在,重新启动 inetd 来使这些改变的内容起作用,这根据系统的不同会有多种方法,一个例子是: killall -HUP inetd,依诀窍,重新用netstat检查开放的socket并注意发生的变化。接下来,查看还有哪些进程在运行。通常会看到sendmail、lpd和snmd 在等待接入的请求。因此机器不对此类的任何请求提供服务,所以他们应当终止运行。

    通常,这些服务是由系统初始化脚本启动,脚本会因发布的不同而异,一般可以在/etc/init.d 或 /etc/rc.d中找到。如果你还不能确定,请参照你所用发布的文档。目标是在系统启动时禁止脚本启动这些服务。

    如果你的Linux发布使用的是打包的系统,花点时间移掉你不需的服务。在此范例机器中,包括了sendmail和r字头的服务进程(rwho、rwall等),lpd、ucd-snmp和apache。这是确保此类服务不会因意外而激活的最简捷的途径。

    X坚固手段

   近来多数的发布都支持机器首次启动时就登陆进入X窗口例如xdm进行管理,不幸的是,这也是主要的攻击点。默认方式下,机器允许任何主机请求登陆窗口,即使此机器仅仅只有一个用户直接从控制台登陆,这种特性亦需屏蔽。

   配置文件会赖于你所使用的登陆管理器而变化。本机选用xdm,故而/usr/X11R6/lib/X11/Xaccess文件需进行修改,添加一个``#''符号来阻止启动此服务。我的Xaccess如下设置:

#* #any host can get a login window 
  #* #any indirect host can get a chooser


   再次启动xdm时此设置有效。

   软件升级

   现在一些基本的坚固措施已完成,需要时时注意发行商对发布的升级和增强。缺乏甚至没有维护会是危及系统安全的一大因素。

   对开放源代码软件的保障之一是其在不断的发展中,有许多人花费大量的时间在不停地寻找安全方面存在的缺陷。这直接导致了Linux发布不断的维护过程,经常会有升级程序、臭虫补丁程序和安全方面的指导出现在网页中。隔几天或几周就浏览一下发布商的网页看是否有补丁或升级程序贴出来。

   后续工作

   现在,经处理过的机器比其初次安装后的安全性已提高了,但决不是对任何攻击就牢不可破了,但已不存在明显的可攻击之处了。在此列出的方法就象给你的车子或房子加了锁,一般水平的小偷就会被这类措施所动摇,意识到这是落锁的转而寻找其他没有加以保护的系统。

   如果你认定这些措施没有提供足够的安全性能,也许你还想通过Internet提供一些网络服务,在进行之前需要花费一些时间寻找更高级的安全技术。

   但不幸的是,许多Linux的发布商假定他们的客户已经熟知这些服务而且也想使用他们。但对初始用户通常这不是事实,当然,在Linux系统的安全性完全保障之前还有大量的未开发领域。而这些步骤就是对已知晓的系统漏洞加以最基本的安全保障。

   时至今日,对于危及系统和网络安全的多数保护手段还相对较弱,而随着Linux的流行且高速Internet存取逐渐实现的时刻,涌向未经预防的Linux 系统的攻击会越来越多


推荐阅读
  • 本文详细介绍了如何在Linux系统上安装和配置Smokeping,以实现对网络链路质量的实时监控。通过详细的步骤和必要的依赖包安装,确保用户能够顺利完成部署并优化其网络性能监控。 ... [详细]
  • 如何配置Unturned服务器及其消息设置
    本文详细介绍了Unturned服务器的配置方法和消息设置技巧,帮助用户了解并优化服务器管理。同时,提供了关于云服务资源操作记录、远程登录设置以及文件传输的相关补充信息。 ... [详细]
  • 本文详细分析了Hive在启动过程中遇到的权限拒绝错误,并提供了多种解决方案,包括调整文件权限、用户组设置以及环境变量配置等。 ... [详细]
  • 基于KVM的SRIOV直通配置及性能测试
    SRIOV介绍、VF直通配置,以及包转发率性能测试小慢哥的原创文章,欢迎转载目录?1.SRIOV介绍?2.环境说明?3.开启SRIOV?4.生成VF?5.VF ... [详细]
  • 本文介绍如何在现有网络中部署基于Linux系统的透明防火墙(网桥模式),以实现灵活的时间段控制、流量限制等功能。通过详细的步骤和配置说明,确保内部网络的安全性和稳定性。 ... [详细]
  • 作者:守望者1028链接:https:www.nowcoder.comdiscuss55353来源:牛客网面试高频题:校招过程中参考过牛客诸位大佬的面经,但是具体哪一块是参考谁的我 ... [详细]
  • NFS(Network File System)即网络文件系统,是一种分布式文件系统协议,主要用于Unix和类Unix系统之间的文件共享。本文详细介绍NFS的配置文件/etc/exports和相关服务配置,帮助读者理解如何在Linux环境中配置NFS客户端。 ... [详细]
  • 三星W799在2011年的表现堪称经典,以其独特的双屏设计和强大的功能引领了双模手机的潮流。本文详细介绍其配置、功能及锁屏设置。 ... [详细]
  • 本文探讨了Hive中内部表和外部表的区别及其在HDFS上的路径映射,详细解释了两者的创建、加载及删除操作,并提供了查看表详细信息的方法。通过对比这两种表类型,帮助读者理解如何更好地管理和保护数据。 ... [详细]
  • 本文详细介绍了 Dockerfile 的编写方法及其在网络配置中的应用,涵盖基础指令、镜像构建与发布流程,并深入探讨了 Docker 的默认网络、容器互联及自定义网络的实现。 ... [详细]
  • 从 .NET 转 Java 的自学之路:IO 流基础篇
    本文详细介绍了 Java 中的 IO 流,包括字节流和字符流的基本概念及其操作方式。探讨了如何处理不同类型的文件数据,并结合编码机制确保字符数据的正确读写。同时,文中还涵盖了装饰设计模式的应用,以及多种常见的 IO 操作实例。 ... [详细]
  • 在现代网络环境中,两台计算机之间的文件传输需求日益增长。传统的FTP和SSH方式虽然有效,但其配置复杂、步骤繁琐,难以满足快速且安全的传输需求。本文将介绍一种基于Go语言开发的新一代文件传输工具——Croc,它不仅简化了操作流程,还提供了强大的加密和跨平台支持。 ... [详细]
  • GIMP 2.99.2 发布:UI 采用 GTK3 实现、原生支持高分屏和 Wayland
    开源项目评选最后一周,手里的5票再不用就没用了https:www.oschina.netprojecttop_cn_2020GIMP2.99.2已发布,同时这也标志着GIMP3.0的到来,其中最显著的变化是从GTK2过渡到GTK3工具包。基于 ... [详细]
  • 深入解析TCP/IP五层协议
    本文详细介绍了TCP/IP五层协议模型,包括物理层、数据链路层、网络层、传输层和应用层。每层的功能及其相互关系将被逐一解释,帮助读者理解互联网通信的原理。此外,还特别讨论了UDP和TCP协议的特点以及三次握手、四次挥手的过程。 ... [详细]
  • 如何使用PyCharm及常用配置详解
    对于一枚pycharm工具的使用新手,正确了解这门工具的配置及其使用,在使用过程中遇到的很多问题也可以迎刃而解,文中有非常详细的介绍, ... [详细]
author-avatar
ALI韩帅该
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有