Cosa fa il servizio risolto da systemd e deve essere in ascolto su tutte le interfacce? [chiuso]


11

Sto lavorando a un progetto che coinvolge un dispositivo IOT (l'ormai deprecato Intel Galileo). Sto cercando di rafforzare questi dispositivi e ho notato che il systemd-resolvedservizio è in ascolto su tutte le interfacce ( 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

Dopo aver letto la descrizione del servizio freedesktop.org qui , si afferma che,

systemd-resolved è un servizio di sistema che fornisce la risoluzione dei nomi di rete alle applicazioni locali.

Ho eseguito un test in cui mi sono imbattuto pingper google.comcui l' systemd-resolvedera in funzione. Ho quindi disabilitato il servizio e inviato un pinga yahoo.com. Non ci sono state perdite di pacchetti per nessuna delle due richieste.

Le mie domande sono le seguenti:

  1. Cosa sta facendo questo servizio?

  2. Se fornisce la risoluzione dei nomi alle applicazioni locali, perché è in ascolto 0.0.0.0sull'interfaccia?

  3. È un problema di sicurezza?

  4. Quali sono i potenziali impatti della disabilitazione di questo servizio?

Grazie in anticipo per qualsiasi informazione / aiuto. Mi scuso se non ho rispettato il formato della domanda, prima volta che scrivo. Modifica come richiesto.


Al momento esiste un problema di sicurezza con systemd-resolver e quindi mi terrei aggiornato con le patch per questo servizio e nel frattempo disabilitarlo è possibile. La migliore opzione sarebbe quella di creare un banco di prova e testare che tutto funzioni come previsto. Systemd-resolver è progettato per la comunicazione tra processi di systemd ma molte applicazioni legacy non sono state scritte per systemd e quindi non fanno riferimento a systemd-resolver.
Raman Sailopal,

1
Grazie per la risposta @Raman. Stiamo testando la disabilitazione. Ero a conoscenza di un exploit emesso su Ubuntu e risolto da systemd. Grazie ancora
jeeves il

Risposte:


11

systemd-resolvedè necessario per systemd. A meno che tu non stia installando un resolver DNS alternativo, dovresti tenerlo.

È importante notare che sta effettivamente ascoltando i pacchetti UDP su 127.0.0.53:53per fare la risoluzione DNS per te:

# 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

I 5355socket delle porte devono implementare la risoluzione dei nomi multicast Link-Local (LLMNR) che è una funzione utile solo nelle LAN.

Per disabilitarlo, modifica /etc/systemd/resolved.confe cambia la linea

#LLMNR=yes

per

LLMNR=no

e quindi riavviare il servizio con service systemd-resolved restarte ricontrollare:

# netstat -npa | grep systemd-resolve
udp        0      0 127.0.0.53:53           0.0.0.0:*                           404/systemd-resolve
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.