使用 TCP Wrapper 实现 xinetd 服务访问控制

使用 TCP Wrapper 能够管理对特定服务的访问,任何由 xinetd 管理的网络服务都能够使用 TCP Wrapper 实现对它的访问控制。

使用 TCP Wrapper 能够管理对特定服务的访问,任何由 xinetd 管理的网络服务都能够使用 TCP Wrapper 实现对它的访问控制。

在 Linux 中,xinetd 能够通过 /etc/hosts.allow/etc/hosts.deny 配置文件,实现对用户的服务访问控制。/etc/hosts.allow 与 /etc/hosts.deny 是可自定义的访问控制列表 (ACL),顾名思义,hosts.allow 文件包含了允许访问网络服务的规则,而 hosts.deny 包含了拒绝访问的规则,并且 hosts.allow 文件的优先级高于 hosts.deny 文件。用户可以定义基于 IP 地址主机名匹配字段的访问控制规则。

有关 TCP Wrapper 的详情可参考 hosts_access 的 man 文件(man 5 hosts_access)

xinetd 是 inetd 的安全升级版本。xinetd 一直保持运行状态,监听所有由它管理的服务的端口,当一个连接请求访问由它管理的服务时,xinetd 都会为那个服务启动相应的服务器。

 

xinetd 守护程序具有以下功能:

  • 节省系统资源
  • 提供访问控制和记录
  • 启动指定的服务
  • 添加或拒绝对指定主机的访问
  • 提供定时访问控制
  • 限制入栈连接的速率
  • 限制连接的负载
  • ……

xinetd 的配置文件是 /etc/xinetd.conf,但这个文件中只包含了一些默认配置,和一条包含 /etc/xinetd.d/ 目录的指令。要启用或禁用一个 xinetd 服务,只需编辑 /etc/xinetd.d/ 目录中的配置文件即可。如果配置文件中的 disable 属性被设置为 yes,这个服务则被禁用,设置为 no,则表示启用。你可以手动编辑 xinetd 文件来更改服务的启动状态,也可以使用服务配置工具、ntsysv 和 chkconfig 工具来管理服务的运行状态。

如果想要知道 xinetd 守护进行控制着哪些服务,只需要使用 ls /etc/xinetd.d 命令查看 /etc/xinetd.d/ 目录下的内容即可。


付费阅读