systemd解析的服务做什么,它需要侦听所有接口吗?[关闭]


11

我正在从事一个涉及IOT设备(现已弃用的Intel Galileo)的项​​目。我正在加固这些设备,我注意到该systemd-resolved服务正在所有接口(0.0.0.0)上监听。

root@hostname:~# netstat -altnp
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp        0      0 0.0.0.0:5355            0.0.0.0:*               LISTEN      240/systemd-resolve

阅读服务的freedesktop.org描述之后这里,它指出,

systemd-resolved是一项系统服务,可为本地应用程序提供网络名称解析。

我跑了一个测试,我跑了pinggoogle.com了哪里systemd-resolved正在运行。然后,我禁用了该服务,并将发送pingyahoo.com。两个请求都没有丢包。

我的问题如下:

  1. 这项服务在做什么?

  2. 如果要为本地应用程序提供名称解析,为什么要在0.0.0.0接口上侦听?

  3. 这是安全问题吗?

  4. 禁用此服务有哪些潜在影响?

在此先感谢您提供任何信息/帮助。抱歉,如果我没有遵守问题格式,请第一时间发布。请根据需要进行编辑。


目前systemd-resolver存在安全问题,因此我将及时更新该服务的补丁程序,同时禁用它是可能的。最好的选择是创建一个测试装备并测试一切是否按预期进行。Systemd-resolver专为systemd进程间通信而设计,但是尚未为systemd编写许多遗留应用程序,因此不会引用systemd-resolver。
拉曼·塞洛帕尔

1
感谢@Raman的回复。我们正在测试禁用功能。我知道在Ubuntu wrt上发布的一个利用systemd-resolved的漏洞。再次感谢
jeeves'7

Answers:


11

systemd-resolved是systemd需要的。除非要安装备用DNS解析器,否则应保留它。

重要的是要注意,它实际上是在监听UDP数据包127.0.0.53:53以为您执行DNS解析:

# netstat -npa | grep systemd-resolve
tcp        0      0 0.0.0.0:5355            0.0.0.0:*               LISTEN      205/systemd-resolve
tcp6       0      0 :::5355                 :::*                    LISTEN      205/systemd-resolve
udp        0      0 127.0.0.53:53           0.0.0.0:*                           205/systemd-resolve
udp        0      0 0.0.0.0:5355            0.0.0.0:*                           205/systemd-resolve
udp6       0      0 :::5355                 :::*                                205/systemd-resolve

端口5355套接字用于实现链接本地多播名称解析(LLMNR),该功能仅在LAN中有用。

要禁用它,请编辑/etc/systemd/resolved.conf并更改行

#LLMNR=yes

LLMNR=no

然后使用重新启动服务,service systemd-resolved restart然后再次检查:

# netstat -npa | grep systemd-resolve
udp        0      0 127.0.0.53:53           0.0.0.0:*                           404/systemd-resolve
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.