ntalk 与 518 端口
518 的登记名是 ntalk,也叫 new talk,是 Unix talk 家族里改进版本的会话服务端口。talk 允许两台主机上的用户做分屏即时对话,需要双方终端同时在线,协议有简短的规范描述;随着即时通讯与终端多路复用工具的普及,这套交互方式已经退役。
基本信息
| 服务名 | ntalk(new talk) |
|---|---|
| 传输层 | TCP 与 UDP 各占一条登记记录 |
| 号码区间 | 0-1023 系统端口 |
| 技术背景 | Unix talk 家族的改进版本 |
| 交互模型 | 对等会话,双方同时在线才能通信 |
| 现状 | 已被即时通讯与 ssh/tmux 方案取代 |
什么情况下会遇到
- 老式 Unix 教材或运维手册中提到的会话端口,需要在资产里核对是否还有人用
- 扫描到内网主机开放低位 UDP 端口,需要逐个排除历史服务
- 合规核查要求说明遗留守护进程的用途与风险
- 老版本系统镜像里默认启用了 inetd/xinetd,带出一批废弃服务
- 排查跨主机异常会话时,需要判断是不是某种终端聊天工具
排查判定对照
| 观察到的情况 | 倾向判断 | 处理动作 |
|---|---|---|
| 由 inetd/xinetd 托管且可查配置 | 遗留服务 | 确认无依赖后停用并删除配置项 |
| 监听进程无法对应到任何已装软件 | 可疑 | 按未知服务流程取证 |
| 仅有 UDP 监听,无 TCP | 常见于该家族 | 两种传输层都查一遍再下结论 |
| 有跨主机会话且双方为业务主机 | 需核实用途 | 查会话发起方与账号,评估必要性 |
| 端口关闭且无配置引用 | 已清理 | 台账销项 |
四步定位
四步定位
ss -lntup 'sport = :518' # 监听面(含 UDP)
sudo lsof -i :518 -P -n # 进程路径
sudo grep -rnw 518 /etc/inetd.conf /etc/xinetd.d /etc/services 2>/dev/null
getent services ntalk # 本地登记名
sudo systemctl status inetd xinetd 2>/dev/null # 是否还有超级守护
sudo ss -tnp state established '( sport = :518 )' # 现存会话talk 家族的服务过去普遍由 inetd 或 xinetd 按需拉起,平时没有常驻进程,只在有连接时出现。因此「没看到进程」不能直接判为不存在,还要检查超级守护的配置文件与监听端口。
对等会话类服务的历史实现普遍缺少强认证与加密,用户身份主要依赖主机信任关系。即便业务上仍需跨主机通信,也应改用 ssh 或受控的即时通讯通道,而不是恢复旧协议。
该族服务的另一个历史用途是把消息写入对方终端。现代对应做法是 ssh 配合 wall 或专用通告平台,既可控也留痕,排查时不要把它与系统级广播机制混为一谈。