1 | /etc/hosts.deny |
1 daemon基本介绍
1.1 daemon与sevice的区别
1.2 daemon的分类
按线程处理方式划分
☑ stand alone: 自行单独启动
☑ super daemon: 由一只特殊的daemon管理
- multi-threaded(多重线程)
- single-threaded(单线程)
按工作形态(响应方式)分
☑ signal-control
☑ interval-control
1.3 daemon的命名规则
1.4 服务与端口的对应
1 | $ cat /etc/services # 查看daemon对应的端口<daemon port> <port/封包协议> <该服务的说明> |
☑ 注意:尽量避免修改这个文件
1.5 daemon的启动脚本与启动方式
Stand alone启动方式
方式1: /etc/init.d/* [status|stop|restart|restart|condreatart]
1 | $ /etc/init.d/syslog # 不加参数会给出关于参数的提示 |
方式2: /sbin/service
1 | $ service crond restart |
利用 Super daemon 启动的方式
☑ 注意: xinetd 本身是 stand alone 的启动方式。
☑ 用途: 适合那些开放较多权限或本身不具备防火墙等管理机制的服务。
1 | $ grep -i 'disable' /etc/xinetd.d/* # 查看super daemon管理的程序是否启动(disable=yes代表取消) |
1 | $ grep 'rsync' /etc/services # 观察服务使用的端口 |
1.6 通过 server 的管理使 daemon 对不同 client 拥有不同权限
案例一:一个简单的rsync(提供同步文件夹服务)案例
1 | $ cat /etc/xinetd.d/rsync # 查看一下原来的设置 |
1 | #针对内部王网域进行限制 |
1 | $ netstat -tnlp | grep 873 # 配置完后看一下873端口的状态 |
2 服务的防火墙管理 xinetd,TCP Wrappers
2.1 /etc/hosts.allow,/etc/hosts.deny的管理
☑ 注意:一个服务受xinetd管理或者支持TCP Wrappers就可以使用这两个配置文件
范例一:测试一下sshd和httpd这两支程序是否支持TCP Wrapper套件
1 | $ ldd $(which sshd httpd) # 查看sshd和httpd支持的动态链接库,如果有libwrap.so说明支持TCP Wrapper(发现sshd有而httpd没有) |
范例二:只允许 140.116.0.0/255.255.0.0
与140.116.0.0/255.255.0.0
这两个网域及203.71.38.123
这个主机可以进入我们的 rsync 服务器,其它的 IP 全部挡掉
1 | $ vim /etc/hosts.allow |
1 | $ vim /etc/host.deny |
2.2 TCP Wrapper的特殊功能
1 | $ rpm -q tcp_wrapper # 查看是否安装了tcp_wrapper |
案例一
1 | $ vim /etc/hosts.deny |
1 | # spawn指令,在自己的屏幕上显示"security notice from 自己的主机名" |
3 系统开机启动服务设定
3.1 观察系统启动的服务
1 | $ netstat -tulp # 找出目前系统启动的网络服务有哪些 |
3.2 设定开机启动的方法
系统开机流程
chkconfig: 管理系统服务默认开机启动与否
1 | $ chkconfig --list | more # 列出目前系统上所有被chkconfig管理的服务 |
案例一:先观察httpd这个服务是否启动,然后设定预设开机启动(并不会立即启动哦)
1 | $ /etc/init.d/httpd status # 观察httpd这个服务的运行状态 |
案例二:查看rsync是否启动,是则将其关闭
1 | $ /etc/init.d/rsync status # 发现不行,因为rsync不是stand alone的启动方式 |
chkconfig: 设定自定义系统服务
案例一
1 | $ vim /etc/init.d/mySystemService |
1 |
|
1 | $ chkconfig --list mySystemService # 这个时候还没有加入ckconfig管理 |
ntsysv: 类图型接口管理模式(redhat系列发行版特有)
4 centos5.x预设启动的服务列表
5 重点回顾
6 习题
案例
1 | $ rpm -q telnet-server # 查看telnet服务程序是否启动 |
简答题