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

Linux系统安全隐患及加强安全管理的方法

世界上没有绝对安全的系统,即使是普遍认为稳定的Linux系统,在管理和安全方面也存在不足之处。我们期望让系统尽量在承担低风险的情况下工作,这就要加强对系统安全的管理。下面,我具体从两个方面来阐述Linux存在的不足之处,并介绍如何加强Linux系统在安全方面的管理。防止黑客的入侵在谈黑客入侵方面的安全管理之前,我先简单介绍一些黑客攻击Linux主

世界上没有绝对安全的系统,即使是普遍认为稳定的Linux系统,在管理和安全方面也存在不足之处。我们期望让系统尽量在承担低风险的情况下工作,这就要加强对系统安全的管理。

  下面,我具体从两个方面来阐述Linux存在的不足之处,并介绍如何加强Linux系统在安全方面的管理。

  防止黑客的入侵

  在谈黑客入侵方面的安全管理之前,我先简单介绍一些黑客攻击Linux主机的主要途径和惯用手法,让大家对黑客攻击的途径和手法有所了解。这样才能更好地防患于未然,做好安全防范。

  要阻止黑客蓄意的入侵,可以减少内网与外界网络的联系,甚至独立于其它网络系统之外。这种方式虽造成网络使用上的不便,但也是最有效的防范措施。

  黑客一般都会寻求下列途径去试探一台Linux或Unix主机,直到它找到容易入侵的目标,然后再开始动手入侵。常见的攻击手法如下:

  1、直接窃听取得root密码,或者取得某位特殊User的密码,而该位User可能为root。再获取任意一位User的密码,因为取得一般用户密码通常很容易。

  2、黑客们经常用一些常用字来破解密码。曾经有一位美国黑客表示,只要用“password”这个字,就可以打开全美多数的计算机。其它常用的单词还有:account、ald、 alpha、beta、computer、dead、demo、dollar、games、bod、hello、help、intro、kill、 love、no、ok、okay、please、sex、secret、superuser、system、test、work、yes等。

  3、使用命令:finger@some.cracked.host,就可以知道该台计算机上面的用户名称。然后找这些用户下手,并通过这些容易入侵的用户取得系统的密码文件/etc/passwd,再用密码字典文件搭配密码猜测工具猜出root的密码。

  4、利用一般用户在/tmp目录放置着的SetUID的文件或者执行着SetUID程序,让root去执行,以产生安全漏洞。

  5、利用系统上需要SetUID root权限的程序的安全漏洞,取得root的权限,例如:pppd。

  6、从.rhost的主机入侵。因为当用户执行rlogin登录时,rlogin程序会锁定.rhost定义的主机及账号,并且不需要密码登录。

  7、修改用户的.login、cshrc、.profile等Shell设置文件,加入一些破坏程序。用户只要登录就会执行,例如“if /tmp/backdoor exists run /tmp/backdoor”。

  8、只要用户登录系统,就会不知不觉地执行Backdoor程序(可能是Crack程序),它会破坏系统或者提供更进一步的系统信息,以利Hacker渗透系统。

  9、如果公司的重要主机可能有网络防火墙的层层防护,Hacker有时先找该子网的任何一台容易入侵的主机下手,再慢慢向重要主机伸出魔掌。例如:使用NIS共同联机,可以利用remote 命令不需要密码即可登录等,这样黑客就很容易得手了。

  10、Hacker会通过中间主机联机,再寻找攻击目标,避免被用逆查法抓到其所在的真正IP地址。

  11、Hacker进入主机有好几种 方式,可以经由Telnet(Port 23)、Sendmail(Port25)、FTP(Port 21)或WWW(Port 80)的方式进入。一台主机虽然只有一个地址,但是它可能同时进行多项服务,而这些Port都是黑客“进入”该主机很好的方式。

  12、Hacker通常利用 NIS(IP)、NFS这些RPC Service截获信息。只要通过简单的命令(例如showmount),便能让远方的主机自动报告它所提供的服务。当这些信息被截获时,即使装有 tcp_wrapper等安全防护软件,管理员依然会在毫不知情的情况下被“借”用了NIS Server上的文件系统,而导致/etc/passwd外流。

  13、发E-mail给anonymous账号,从FTP站取得/etc/passwd密码文件,或直接下载FTP站/etc目录的passwd文件。

  14、网络窃听,使用sniffer程序监视网络Packet,捕捉Telnet,FTP和Rlogin一开始的会话信息,便可顺手截获root密码,所以sniffer是造成今日Internet非法入侵的主要原因之一。

  15、利用一些系统安全漏洞入侵主机,例如:Sendmail、Imapd、Pop3d、DNS等程序,经常发现安全漏洞,这对于入侵不勤于修补系统漏洞的主机相当容易得手。

  16、被Hacker入侵计算机,系统的Telnet程序可能被掉包,所有用户Telnet session的账号和密码均被记录下,并发E-mail给Hacker,进行更进一步的入侵。

  17、Hacker会清除系统记录。一些厉害的Hacker都会把记录它们进入的时间、IP地址消除掉,诸如清除:syslog、lastlog、messages、wtmp、utmp的内容,以及Shell历史文件.history。

  18、入侵者经常将如ifconfig、tcpdump这类的检查命令更换,以避免被发觉。

  19、系统家贼偷偷复制/etc/passwd,然后利用字典文件去解密码。

  20、家贼通过su或sudo之类的Super User程序觊觎root的权限。

  21、黑客经常使用Buffer overflow(缓冲区溢位)手动入侵系统。

  22、cron是Linux操作系统用来自动执行命令的工具,如定时备份或删除过期文件等等。入侵者常会用cron来留后门,除了可以定时执行破译码来入侵系统外,又可避免被管理员发现的危险。

  23、利用IP spoof(IP诈骗)技术入侵Linux主机。

  以上是目前常见的黑客攻击Linux 主机的伎俩。如果黑客可以利用上述一种方法轻易地入侵计算机的话,那么该计算机的安全性实在太差了,需要赶快下载新版的软件来升级或是用patch文件来 修补安全漏洞。在此警告,擅自使用他人计算机系统或窃取他人资料的都是违法行为,希望各位读者不要以身试法。

  除了上面这些方法,很多黑客还可 以利用入侵工具来攻击Linux系统。这些工具常常被入侵者完成入侵以后种植在受害者服务器当中。这些入侵工具各自有不同的特点,有的只是简单地用来捕捉 用户名和密码,有的则非常强大可记录所有的网络数据流。总之,黑客利用入侵工具也是攻击Linux主机的常用方法。

  对黑客的安全防护

  如果要保护系统的安全,针对黑客入侵我们要做的第一步应该就是把预防工作提前做好。作为一名系统管理员一定要保证自己管理的系统在安全上没有漏洞。这样就不会给非法用户可乘之机。

  要提前做好预防工作,我认为主要有下面几点:

  第一,提前关闭所有可能的系统后门,以防止入侵者利用系统中的漏洞入侵。例如用“rpcinfo -p”来检查机器上是否运行了一些不必要的远程服务。一旦发现,立即停掉,以免给非法用户留下系统的后门。

  第二,确认系统当中运行的是较新的Linux、Unix守护程序。因为老的守护程序允许其它机器远程运行一些非法的命令。

  第三,定期从操作系统生产商那里获得安全补丁程序。

  第四,安装加强系统安全的程序,如:Shadow password、TCP wrappet、SSH、PGP等。

  第五,可以搭建网络防火墙,防止网络受到攻击。

  第六,利用扫描工具对系统进行漏洞检测,来考验主机容易受攻击的程度。

  第七,多订阅一些安全通报,多访问安全站点,以获得及时的安全信息来修补系统软硬件的漏洞。

  即使预防工作做好了也不能大意。随着 网络技术的不断发展,黑客的水平也在不断进步。他们的攻击手段可谓是层出不穷很多意想不到的事情都会发生,所以我们在做好预防工作的前提下,要每天对系统 进行安全检查。尤其作为一名系统管理员更要随时去观察系统的变化情况,如系统中进程、文件、时间等的变化情况。

  具体说来, 对系统进行安全检查有以下几个方法:

  1、充分利用Linux和Unix系统中内置的检查命令来检测系统。例如,下面的几个命令在Linux和Unix系统中就很有用处:

  -who,查看谁登陆到系统中;

  -w,查看谁登陆到系统中,且在做什么操作;

  -last,显示系统曾经被登陆的用户和TTYS;

  -history,显示系统过去被运行的命令;

  -netstat,可以查看现在的网络状态;

  -top,动态实时察看系统的进程;

  -finger,查看所有的登陆用户。

  2、定期检查系统中的日志、文件、时间和进程信息。如:

  -检查/var/log/messages日志文件查看外部用户的登陆状况;

  -检查用户目录下/home/username下的登陆历史文件(如:.history 文件);

  -检查用户目录下/home/username的.rhosts、.forward远程登陆文件;

  -用“find / -ctime -2 -ctime +1 -ls”命令来查看不到两天以内修改的一些文件;

  -用“ls -lac”命令去查看文件真正的修改时间;

  -用“cmp file1 file2”命令来比较文件大小的变化;

  -保护重要的系统命令、进程和配置文件以防止入侵者替换获得修改系统的权利。

  当然为了保证系统的绝对安全,除了做好预防和进行安全检查工作外,还要养成一个保证系统、网络安全的好习惯。这就是定期定时做好完整的数据备份。有了完整的数据备份,在遭到攻击或系统出现故障时也能迅速恢复系统。

  对于病毒入侵的安全防范

  如今DOS、Windows 9X/Me/NT/2000/XP系统下的病毒很流行,但人们几乎没听说过在Linux或Unix系统中有病毒,甚至有人认为Linux或Unix系统中 没有病毒存在。其实这是一个很大的错误认识。事实上世界上第一个计算机病毒就是Unix病毒。如果Linux系统中一旦发生病毒泛滥,后果将不堪设想。现 在很多种病毒都用标准的C程序来编写,以适应任何类的Linux和Unix操作系统。并且它们可以用make程序来跨平台编译。

  尽管Windows NT/2000和Linux、Unix的系统是有着非常高级的保护机制的系统,可以预防大多数的病毒的传染,但不是所有的。因此,对于Linux系统来 说,不是没有计算机病毒的危害存在。比如Morris、Ramen、Lion等蠕虫病毒都先后曾经对Linux甚至Unix系统进行过攻击。

  一般大多数的Linux网络主要 是由一台或多台安装Linux操作系统的服务器做Web Server或FTP Server,通常也会有Mail Server。目前工作站端大多是安装了Windows 9X/Me/NT/2000/XP等操作系统的计算机。对这种Linux网络计算机病毒防护主要还是基于工作站的单机防护。可以在Linux服务器上安装 Samba服务,利用病毒扫描工具从某个安全的工作站定期对服务器磁盘上的文件进行扫描,从而达到病毒防护的目的。

  计算机病毒是计算机制造商和政府 最头痛的问题,据估计目前约有数千种病毒在计算机上流行,而每天又会出三种新的计算机病毒。目前,大多数计算机都使用软件来防治病毒,使用病毒防火墙的却 不到一半,这使得计算机被感染的机会在不断增加。通常这些计算机病毒的感染来自企业内部网,这意味着公司中也许有许多计算机已遭受感染。在防不胜防的情况 之下,只有时常注意计算机健康,没有异常情况发生,才是确保资料不被破坏的最好方法。


推荐阅读
  • 如何在服务器主机上实现文件共享的方法和工具
    本文介绍了在服务器主机上实现文件共享的方法和工具,包括Linux主机和Windows主机的文件传输方式,Web运维和FTP/SFTP客户端运维两种方式,以及使用WinSCP工具将文件上传至Linux云服务器的操作方法。此外,还介绍了在迁移过程中需要安装迁移Agent并输入目的端服务器所在华为云的AK/SK,以及主机迁移服务会收集的源端服务器信息。 ... [详细]
  • Centos7.6安装Gitlab教程及注意事项
    本文介绍了在Centos7.6系统下安装Gitlab的详细教程,并提供了一些注意事项。教程包括查看系统版本、安装必要的软件包、配置防火墙等步骤。同时,还强调了使用阿里云服务器时的特殊配置需求,以及建议至少4GB的可用RAM来运行GitLab。 ... [详细]
  • CentOS 7部署KVM虚拟化环境之一架构介绍
    本文介绍了CentOS 7部署KVM虚拟化环境的架构,详细解释了虚拟化技术的概念和原理,包括全虚拟化和半虚拟化。同时介绍了虚拟机的概念和虚拟化软件的作用。 ... [详细]
  • 本文介绍了Python高级网络编程及TCP/IP协议簇的OSI七层模型。首先简单介绍了七层模型的各层及其封装解封装过程。然后讨论了程序开发中涉及到的网络通信内容,主要包括TCP协议、UDP协议和IPV4协议。最后还介绍了socket编程、聊天socket实现、远程执行命令、上传文件、socketserver及其源码分析等相关内容。 ... [详细]
  • Linux服务器密码过期策略、登录次数限制、私钥登录等配置方法
    本文介绍了在Linux服务器上进行密码过期策略、登录次数限制、私钥登录等配置的方法。通过修改配置文件中的参数,可以设置密码的有效期、最小间隔时间、最小长度,并在密码过期前进行提示。同时还介绍了如何进行公钥登录和修改默认账户用户名的操作。详细步骤和注意事项可参考本文内容。 ... [详细]
  • 本文介绍了在Hibernate配置lazy=false时无法加载数据的问题,通过采用OpenSessionInView模式和修改数据库服务器版本解决了该问题。详细描述了问题的出现和解决过程,包括运行环境和数据库的配置信息。 ... [详细]
  • 图解redis的持久化存储机制RDB和AOF的原理和优缺点
    本文通过图解的方式介绍了redis的持久化存储机制RDB和AOF的原理和优缺点。RDB是将redis内存中的数据保存为快照文件,恢复速度较快但不支持拉链式快照。AOF是将操作日志保存到磁盘,实时存储数据但恢复速度较慢。文章详细分析了两种机制的优缺点,帮助读者更好地理解redis的持久化存储策略。 ... [详细]
  • 全面介绍Windows内存管理机制及C++内存分配实例(四):内存映射文件
    本文旨在全面介绍Windows内存管理机制及C++内存分配实例中的内存映射文件。通过对内存映射文件的使用场合和与虚拟内存的区别进行解析,帮助读者更好地理解操作系统的内存管理机制。同时,本文还提供了相关章节的链接,方便读者深入学习Windows内存管理及C++内存分配实例的其他内容。 ... [详细]
  • 本文介绍了在RHEL 7中的系统日志管理和网络管理。系统日志管理包括rsyslog和systemd-journal两种日志服务,分别介绍了它们的特点、配置文件和日志查询方式。网络管理主要介绍了使用nmcli命令查看和配置网络接口的方法,包括查看网卡信息、添加、修改和删除配置文件等操作。 ... [详细]
  •     这里使用自己编译的hadoop-2.7.0版本部署在windows上,记得几年前,部署hadoop需要借助于cygwin,还需要开启ssh服务,最近发现,原来不需要借助cy ... [详细]
  • 大坑|左上角_pycharm连接服务器同步写代码(图文详细过程)
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了pycharm连接服务器同步写代码(图文详细过程)相关的知识,希望对你有一定的参考价值。pycharm连接服务 ... [详细]
  • Django + Ansible 主机管理(有源码)
    本文给大家介绍如何利用DjangoAnsible进行Web项目管理。Django介绍一个可以使Web开发工作愉快并且高效的Web开发框架,能够以最小的代价构建和维护高 ... [详细]
  • 现在比较流行使用静态网站生成器来搭建网站,博客产品着陆页微信转发页面等。但每次都需要对服务器进行配置,也是一个重复但繁琐的工作。使用DockerWeb,只需5分钟就能搭建一个基于D ... [详细]
  • 计算机存储系统的层次结构及其优势
    本文介绍了计算机存储系统的层次结构,包括高速缓存、主存储器和辅助存储器三个层次。通过分层存储数据可以提高程序的执行效率。计算机存储系统的层次结构将各种不同存储容量、存取速度和价格的存储器有机组合成整体,形成可寻址存储空间比主存储器空间大得多的存储整体。由于辅助存储器容量大、价格低,使得整体存储系统的平均价格降低。同时,高速缓存的存取速度可以和CPU的工作速度相匹配,进一步提高程序执行效率。 ... [详细]
  • Android源码深入理解JNI技术的概述和应用
    本文介绍了Android源码中的JNI技术,包括概述和应用。JNI是Java Native Interface的缩写,是一种技术,可以实现Java程序调用Native语言写的函数,以及Native程序调用Java层的函数。在Android平台上,JNI充当了连接Java世界和Native世界的桥梁。本文通过分析Android源码中的相关文件和位置,深入探讨了JNI技术在Android开发中的重要性和应用场景。 ... [详细]
author-avatar
花花花
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有