第18章 认识系统服务(daemons)
实现service的程序就是daemon(其实两个差不多)
daemon分为两类,独立启动的 stand alone,通过super daemon统一管理的服务
stand_alone:响应速度较快
super daemon:1.具有安全控管的机制,2.不会一直占用系统资源
super daemon的处理模式有两种,分别是multi-threaded(多重线程,一次全部处理)和single-threaded(单个线程,一个个处理)
daemon的工作形态分为两种:
1.signal-control,通过信号来管理,对任何客户端的需求都立即处理
2.interval-control,每隔一段时间去执行某工作,用户主要是配置文件指定服务要进行的时间与工作
埠号(port number)是区分因特网服务类型的一个机制。
系统上让服务与埠号对应在一起的是 /etc/services
daemon相关文件和配置文件:
/etc/init.d/*:启动脚本放置处,公认的目录
/etc/sysconfig/*:各个服务的初始化环境配置文件放置处
/etc/xinetd.conf, /etc/xinetd.d/*:super daemon配置文件放置处
/etc/*:各服务各自的配置文件
/var/lib/*:各服务产生的数据库
/var/run/*:各服务的程序之PID记录处
Stand alone的 /etc/init.d/* 启动
service启动Stand alone
其实 Super daemon 本身是一支stand alone 服务,需要常驻内存。
查看super daemon是否已经启动所管理的服务
------------------------------------------------------------------------------------------
解析 super daemon 的配置文件
默认值配置文件 : xinetd.conf
attribute是一些 xinetd 的管理参数, assign_op则是参数的设定方法
assign_op的主要设定形式有:=(后面参数),+=(后面加入参数),-=(后面舍弃参数)
attribute的用法
---------------------------------------------------------------------------------------------------------
服务器的防火墙管理 xinetd,TCP Wrappers
任何以xinetd管理的服务,都可以通过 /etc/hosts.allow 和 /etc/hosts.deny 来设定防火墙。
ldd(library dependency discovery) 这个指令可以查询某个程序的动态函数库支持状态。
配置文件语法:deny文件的,其实 “deny”是默认的
基本上allow和deny文件都跟前几章介绍的差不多了,还有一些特殊参数:
*ALL:代表所有program_name或者是IP都接受
*LOCAL:代表来自本机
*UNKNOWN:代表不知道的IP或者是domain或者是服务
*KNOWN:代表可解析的IP,domain等
TCP Wrappers特殊功能
如果需要记录任何扫描“我”rsync port的 用户的IP, 就需要安装TCP Wrappers软件,细节动作有:
spawn(action),可以利用后续接的shell来进行额外的工作,且具有变量功能。
twist(action),立刻以后续的指令进行,且执行完后终止该次联机的要求。
------------------------------------------------------------------------------------------------------------
系统开启的服务
观察系统是否已经开启服务——netstat
chkconfig:管理系统服务默认开机启动与否
ntsysv:类图形接口管理模式
chkconfig:设定自己的系统服务
CentOS 5.x默认启动的服务说明
其他未默认启动的服务