111端口总被陌生IP连接:rpcbind是干嘛的,不用就关掉

举报
132807 发表于 2026/10/28 09:41:21 2026/10/28
【摘要】 如果你查过云服务器的监听端口,可能会发现一个奇怪的现象:111端口明明没配过什么服务,却一直在公网监听,还总有大量陌生IP来连。这多半是 rpcbind 在工作。先搞清它是什么,再决定关不关,就不会误伤业务。rpcbind 是干嘛的rpcbind 是 Linux 系统自带的一个小服务,叫 RPC 端口映射器,固定占 111 端口的 TCP 和 UDP。它的工作方式像个电话总机:使用 RPC(...

如果你查过云服务器的监听端口,可能会发现一个奇怪的现象:111端口明明没配过什么服务,却一直在公网监听,还总有大量陌生IP来连。这多半是 rpcbind 在工作。先搞清它是什么,再决定关不关,就不会误伤业务。

rpcbind 是干嘛的

rpcbind 是 Linux 系统自带的一个小服务,叫 RPC 端口映射器,固定占 111 端口的 TCP 和 UDP。

它的工作方式像个电话总机:使用 RPC(远程过程调用)的程序,比如 NFS 网络文件共享,先来问 rpcbind,查某个服务到底在哪个端口上,再去连真正的服务。rpcbind 自己不传输业务数据,只负责查号。

为什么它默认就在公网监听

很多发行版默认就装了 rpcbind,而且开机自启,还用了 socket 激活。也就是说,哪怕你从来没用过 NFS,它也会默认在 0.0.0.0:111 上监听,等着别人来查号。

这就解释了两个现象:第一,端口是你没配过的;第二,来连的IP大多不是你的用户,而是全网扫描器。111 是公开知名的端口,扫描器会批量来问你开了哪些 RPC 服务,严重的还可能被用来做反射放大攻击。所以,不用就关掉,是常规的安全收尾动作。

关之前,先确认两件事

不要一上来就杀进程。先确认有没有服务真的靠它:

1. 查反向依赖,看有没有别的服务依赖 rpcbind:systemctl list-dependencies --reverse rpcbind
2. 查有没有 NFS 挂载:mount | grep nfs
3. 查当前监听和连接,确认 111 上是不是只有扫描流量:ss -tlnp | grep ':111 ' ; ss -ulnp | grep ':111 '

如果确实在用 NFS,那就别直接关,先评估迁移方案;如果像大多数云服务器一样根本没用 NFS,就可以往下走。

怎么关才干净

只停服务是不够的,因为 socket 激活会让它在有人来连时又被拉起来。服务和 socket 要一起停、一起禁:

systemctl stop rpcbind.socket rpcbind.service
systemctl disable rpcbind.socket rpcbind.service

关完再验三点,缺一不可:

1. 111 不再监听:ss -tlnp 和 ss -ulnp 里都没有 111,systemctl is-active rpcbind rpcbind.socket 都是 inactive,is-enabled 都是 disabled。
2. 已有 111 连接清零:之前挂着的扫描连接会在服务停掉后断开。
3. 业务端口不受影响:原来在跑的业务服务进程还在,业务监听口都还在,从外部测业务口能通、111 不通,才算收尾完成。

这样关是可逆的:以后真要用 NFS,再把服务和 socket 重新启用并启动就行,不需要重装系统,也不需要重启机器验证。

一句话总结

rpcbind 不是木马,也不是业务服务,它就是系统自带的一个查号服务。你用不上 NFS,它在公网监听就只有被扫描的份。确认没依赖、没挂载之后,停掉加禁用,再验一遍业务口,就把这扇没用的门锁上了。

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0)

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。