首页/安全/安全加固速查/xinetd/inetd 托管服务核查
服务与端口收敛50 条

xinetd/inetd 托管服务核查

xinetd 逐文件托管一大堆历史服务(tftp、finger、chargen 等):逐个文件核对 disable 状态,多数整包卸载更省事。

安全加固速查安全更新于 2026-10-13

超级守护进程为什么要清理

xinetd 与 inetd 是超级守护进程,按需拉起 tftp、finger、chargen、echo 等一批历史服务。这些服务在现在的服务器上基本没有使用场景,其中 chargen 与 echo 这类 UDP 小服务还常被当作 DDoS 反射放大的素材。核查方法是逐文件看 disable 状态,最省事的处置通常是整包卸载。

基本信息

加固项超级守护进程清理
适用平台Linux(xinetd 与 inetd)
配置目录/etc/xinetd.d/
判定要点disable = no 表示该服务处于启用状态
迁移趋势多数发行版已改用 systemd socket 单元
风险等级中

典型使用场景

  • 老系统基线核查:早期 RedHat 系主机常带 xinetd
  • 反射攻击防护:chargen、echo、daytime 等 UDP 小服务必须关闭
  • 资产清理:确认没有未知服务被按需拉起
  • 迁移评估:仍有业务需求时把服务迁移到 systemd 单元托管
  • 合规检查:确认无冗余的按需服务

核查与处置

核查与处置
# 列出托管服务与其启用状态
grep -rE 'disable\s*=\s*(no|NO)' /etc/xinetd.d/ 2>/dev/null
# 确认实际监听情况
ss -tulnp | head
# 无业务需求时停用超级守护进程
systemctl disable --now xinetd 2>/dev/null
# 确认没有残留的服务被按需唤起
systemctl list-sockets --no-pager | head

配置写法判读

配置写法含义处置
disable = yes服务关闭保持现状
disable = no服务启用逐项确认业务需求后关闭
文件不存在未安装该服务无需处理
systemd socket 单元由 systemd 按需拉起与 xinetd 分别核查,两处都要看
语义是倒装的:disable = no 才是启用,逐文件核对比只看服务名可靠得多。
chargen、echo、daytime 这类小服务没有业务需求时应一律关闭,它们是放大反射攻击的常用素材。
只查 /etc/xinetd.d 会漏掉由 systemd socket 单元托管的按需服务,两处必须分别核查。
tftp 与 finger 这类服务还有信息泄露问题:前者可被用来传输文件,后者能枚举系统上的账号。

落地检查点

  • 逐文件核对 disable 状态,把仍启用的服务列成清单
  • 对照业务需求确认哪些服务可以关闭,哪些需要迁移到 systemd 单元
  • 关闭后用 ss 复核实际监听端口与服务进程
  • 把 xinetd 的清理结果纳入基线报告,注明保留服务的业务理由

易错点

  • 被倒装语义绕进去:把 disable = no 理解为已关闭,实际这类服务仍在启用
  • 只查 xinetd 不查 systemd socket:新版系统上按需服务改由 systemd 托管,漏检等于没查
  • 直接卸载不确认依赖:老应用依赖 tftp 等服务的场景会中断,先盘点调用方
  • 清理后不做端口复核:配置文件关了但进程仍在监听,以实际端口与进程为准

数据来源与参考

  • CIS Benchmark:inetd/xinetd 条目
  • US-CERT:UDP 放大攻击指南

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌