在Linux进程分为:独立进程和非独立进程
非独立进程:是依赖于超级守护进程的进程, 且受Xinetd 管理,并在启动服务时 必须启动
例子:#chkconfig –level 2345 telnetd on
关与chkconfig 的命令:
#chkconfig –list 列出所有的启动的服务
#Chkconfig --list SERVICENAME: 可以查看SERVICENAME 是否启动
#chkconfig --add SERVICENAME 把一个新的服务通过chkconfig管理
# chkconfig --dele SERVICENAME 把一个服务从chkconfig 中移除、
#chkconfig --level [12345] SERVICENAME 把SERVICENAME 在12345级别中开机启动
然后启动
Xinetd : service xinted start | restart | stop | status
: /etc/rc.d/init.d/xinetd start| restart |stop | status
非独立进程在安装后会在/etc/xinetd.d/ 目录下面生成个和该服务名称相同的文件,在该文件中有一些关于该服务配置的规则,则需用户自己去创建该规则分别对应的:/etc/xinetd.d/SERVICE ,当然也可以在/etc/hosts.allow 和/etc/hosts.deny中定义规则;
同时有些独立进程只要是连接到libwrap.so都受tcp_wrappers管理,可以用命令:ldd `which SERVICENAME`
但是依赖于超级守护进程的进程也受tcp_wrappers 管理但是要找到执行该程序的二进制文件,
在linux 进程中,独立进程有自己的安全机制,且安全机制的优越性远远大于受tcp_wrappers ;
有两个文件分别是:/etc/hosts.allow ,/etc/hosts.deny
在开机启动时/etc/rc.d/rd.sysinit 依次读取文件/etc/hosts/hosts.allow 和/etc/hosts.deny文件,在两个文件中分别配置是每个服务的规则
2 在/etc/hosts.allow 中定义的规则,但是一般情况下在该文件下定义的都是允许的,可以不指明动作。但是这要和/etc/hosts.deny文件中要定义拒绝所有,不然在/etc/hosts.deny不作任何定义,默认情况下是被允许的,所以两个文件应该结合使用。当然在该文件下也可以定义服务被拒绝的,但是要指明动作,在/etc/hosts.deny中也可以定义服务被允许访问,但是要指明动作
在该文件中定义规则的格式:
在/etc/hosts.allow
SERVICENAME: IP| DOMAINNAME
SERVICENAME: IP| DOMAINNAME : DENY
SERVICENAME: NETWORK EXCEPT IP: [ALLOW] | DENY
ALL: ALL 是允许所有的服务
在/etc/hosts.deny
SERVICENAME: IP | DOMAINNAME 当指明域名是必须在家”.” ,只要在该域中的计算机都拒绝
SERVICENAME : IP | DOMAINNAME : ALLOW
SERVICENAME: ALL
ALL:ALL 拒绝所有的服务
3 在/etc/hosts.allow 和/etc/hosts.deny 也可以执行命令 spawn ,twist 和banners
spawn 可以执行后面的shell
twist 直接拒绝服务 并反会起后面的信息,并直接拒绝
banners 可以定义用户在登录服务是显示欢迎信息,但是给文件信息必须存在一个目录下面,文件的名字必须和是对应服务的进程名
在该文件中的规则格式:、
SERVICENAME: IP|DOMAINNAME: spawn echo `date` %c %s >> /var/log/tcp_wappers注:如果是重定向的到日志是不能的定义到家目录中
SERVICENAME: IP|DOMAINNAME: twist echo `date` %c %s >> /var/log/tcp_wappers 注: 该命令直接拒绝该服务
在/etc/hosts.allow 和 /etc/hosts.deny 文件中可以显示的信息
%c client information
%s server information
%h the client’name information
%p server PID
转载于:https://blog.51cto.com/freehat/278494