1、分两类:stand alone,super daemon(由xinetd这个deamon来负责)
2、相关目录:
/etc/init.d/* :启动脚本放置处
/etc/sysconfig/* :各服务的初始化环境设定档
/etc/xinetd.conf, /etc/xinetd.d/* :super daemon 设定档
/etc/* :各服务各自的设定档
/var/lib/* :各服务产生的资料库
/var/run/* :各服务的程序之 PID 记录处
/etc/services:设置端口号
3、stand alone启动方式:
service httpd start
或/etc/init.d/httpd start
4、super daemon启动方式:
查询是否启动:grep -i ‘disable’ /etc/xinetd.d/*
如果显示/etc/xinetd.d/rsync: disable = yes则是没有启动的,如果要启动,如启动rsync,则vim /etc/xinetd.d/rsync
找到disable = yes改为no,再重启服务 /etc/init.d/xinetd restart
或直接chkconfig rsync on ,再重启xinetd
5、super daemon配置文件
/etc/xinetd.d/下及/etc/init.d/xinetd 下,各参数说明见其他文档
6、xinetd 管理的服务“防火墙”
/etc/hosts.allow, /etc/hosts.deny
基本上只要一个服务受到 xinetd 管理,或者是该服务的程式支援 TCP Wrappers 函式的功能时,那么该服务的防火墙方面的设定就能够以 /etc/hosts.{allow,deny} 来处理啰。换个方式来说,只要不支援 TCP Wrappers 函式功能的软体程式就无法使用 /etc/hosts.{allow,deny} 的设定值。
判断有没有CP Wrappers 函式的功能的方法:
[root@www ~]# ldd $(which sshd httpd)
/usr/sbin/sshd:
libwrap.so.0 => /usr/lib64/libwrap.so.0 (0x00002abcbfaed000)
libpam.so.0 => /lib64/libpam.so.0 (0x00002abcbfcf6000)
….(中间省略)….
/usr/sbin/httpd:
libm.so.6 => /lib64/libm.so.6 (0x00002ad395843000)
libpcre.so.0 => /lib64/libpcre.so.0 (0x00002ad395ac6000)
….(底下省略)….
# 重点在于软体有没有支援 libwrap.so 那个函式库啰,有的话就是有这个功能。
7、/etc/hosts.allow, /etc/hosts.deny 格式
[root@www ~]# vim /etc/hosts.deny
rsync : 127.0.0.100 127.0.0.200 : deny
或
[root@www ~]# vim /etc/hosts.deny
rsync : 127.0.0.100 : deny
rsync : 127.0.0.200 : deny
/etc/hosts.allow 的设定优先于 /etc/hosts.deny,如果两个文件都没有,则表示不经过此防火墙,即接受。
ALL:代表全部的 program_name 或者是 IP 都接受的意思,例如 ALL: ALL: deny
LOCAL:代表来自本机的意思,例如: ALL: LOCAL: allow
UNKNOWN:代表不知道的 IP 或者是 domain 或者是服务时;
KNOWN:代表为可解析的 IP, domain 等等资讯时。
如:[root@www ~]# vim /etc/hosts.deny
rsync: ALL
8、TCP Wrappers 特殊功能:当有其他人扫瞄我的 rsync port 时,我就将他的 IP 记住,以做为未来的查询与认证之用
需要安装了 TCP Wrappers 软体才行。要确定有没有安装 TCP Wrappers 可以使用‘ rpm -q tcp_wrappers ’来查询。具体用法见其他资料。
9、查看系统启动哪些服务:netstat -tanlp
查看所有服务状态:service –status-all
查看开机启动服务:chkconfig –list |more
打开开机启动服务:chkconfig deamon_name on
10、把自己的服务放入chkconfig来管理:chkconfig [–add|–del] [服务名称]
a、自建的服务要放入/etc/init.d/
b、服务脚本的内容要写上:# chkconfig: 35 80 70
c、chkconfig –add 服务名