服务器 频道

Linux服务器安全策略详解之服务管理工具

  4.4  Linux服务管理工具

  Linux提供了三种不同的服务(守护进程)管理工具:redhat-config-services、ntsysv、chkconfig,可以根据具体需要灵活运用。

  4.4.1  redhat-config-services

  redhat-config-services是一个图形化应用程序,它显示了每项服务的描述,以及每项服务是否在引导时启动(运行级别为3、4、5),并允许启动、停止,或重新启动/etc/rc.d/init.d中的那些SysV服务和xinetd服务。从桌面上启动服务配置工具,单击面板上的"主菜单"→"系统设置"→"服务器设置"→"服务",或在shell提示下,键入命令"redhat-config-services",进入redhat-config-services工作界面,如图4-6所示。

  redhat-config-services列出了/etc/rc.d/init.d中的服务和由xinetd控制的服务。单击左侧列表中的服务名来显示该服务的简短描述及它的服务状态。如果这个服务不是xinetd服务,状态窗口会显示该服务目前是否在运行。如果该服务被xinetd所控制,状态窗口会显示"xinetd服务"这个短语。要立即启动、停止,或重新启动某项服务,从列表中选择该项服务,然后单击工具栏上的相应按钮(或从"行动"下拉菜单中选择)。如果该服务是一个xinetd服务,行动按钮会被禁用,因为它们不能被单个地启动或停止。如果你通过选择或取消选择服务名旁的复选框来启用或禁用了xinetd服务,你必须从下拉菜单中选择"文件"→"保存改变"来重新启动xinetd,则立即启用或禁用你所改变的xinetd服务。xinetd还被配置成自动记忆设置,你可以同时启用或禁用多个xinetd服务,在结束后再保存改变。

 

  图4-6  redhat-config-services工作界面

 

  4.4.2  ntsysv

  ntsysv工具为启动或停止服务提供了简单的界面。你可以使用ntsysv来启动或关闭由xinetd管理的服务。你还可以使用ntsysv来配置运行级别。按照默认设置,只有当前运行级别会被配置。要配置不同的运行级别,使用"--level"选项来指定一个或多个运行级别。例如,命令"ntsysv --level 345"配置运行级别3、4和5。ntsysv的工作界面如图4-7所示。

  使用上下箭头来查看列表。使用空格键来选择或取消选择服务,或用"确定"和"取消"按钮。要在服务列表和"确定"、"取消"按钮中切换,可以使用"Tab"键。"*"表明某服务被设为启动。按"F1"键会弹出每项服务的简短描述。

 

  图4-7  ntsysv的工作界面

  4.4.3  chkconfig

  chkconfig命令也可以用来激活和解除服务。"chkconfig--list"命令显示系统服务列表,以及这些服务在运行级别0到6中已被启动(on)还是停止(off)。chkconfig 还能用来设置某一服务在某一指定的运行级别内被启动还是停止。

  chkconfig [--add][--del][--list][系统服务]

  chkconfig [--level <等级代号>][系统服务][on/off/reset]

  chkconfig是Red Hat公司遵循GPL规则所开发的程序,它可查询操作系统在每一个执行等级中会执行哪些系统服务,其中包括各类常驻服务。

  主要参数:

  -  --add:增加所指定的系统服务,让chkconfig指令可以管理它,同时在系统启动的叙述文件内增加相关数据。

  -  --del:删除所指定的系统服务,不再由chkconfig指令管理,同时在系统启动的叙述文件内删除相关数据。

  -  --level<等级代号>:指定系统服务要在哪一个执行等级中开启或关闭。

  例如,要在运行级别3、4、5中停止nfs服务,使用下面的命令:

  chkconfig --level 345 nfs off

 

  4.5  安全选择Linux服务

  运行不必要或有漏洞的守护进程会给操作系统带来安全和性能上的影响。就系统安全来说,操作系统中的任何一个漏洞,都可能使整个系统受到攻击。所以,增加系统安全的非常好的办法就是监视系统的功能。本章开始介绍了重要的守护进程,其中,crond、syslog、keytable、xinetd、kudzu、iptables等是需要运行的,echo、echo-udp、daytime、daytime-udp、chargen、chargen-udp主要是做调试用,普通用户基本用不到,可以关闭。

  r字开头的守护进程有rsh、rstatd、rsync、rusersd、rwalld,这些命令都是Berkley远程命令,因为都以字母r开头,故称r*命令。主要是用来使一台计算机上的某个用户以相同的账户远程执行另一台计算机的一个程序。但是,r*命令已经被证实存在安全风险。对于确实需要的守护进程,应该尽量选用最新的版本程序,以增加其安全防范。

  另外我们还要合理选择守护进程,例如,innd是运行新闻组服务的进程,如果用户不做Usenet服务器,应该关掉。

  4.6  本章小结

  基于开源代码的Linux给用户提供了这样一个平台:可以根据自己的软、硬件环境,定制自己的Linux系统服务。因此,根据每个用户不同的应用范围定制应用环境,可以将Linux系统的安全和性能提升到新的高度。

 

0
相关文章