18.04: Bionic Beaver: imponi static /etc/resolv.conf


10

In precedenza, su Ubuntu 16.04, mi sentivo tradito quando un dnsmasqpacchetto di aggiornamento di Ubuntu lo installava , lo configurava e gli dava la precedenza sul mio server DNS BIND super stabile, ultra veloce e configurato. Sembrava esattamente che Ubuntu avesse violato la mia workstation.

Da quando mi è capitato di lavorare come amministratore di sistema, questo era estremamente inaccettabile. Questa è stata una chiamata fuori di testa. Questo è quando vai a risolvere un problema e in uno dei tuoi passaggi usi digo nslookupe rimani sbalordito nel vedere l' lointerfaccia che ti risponde. PANICO

Esiste un modo non solo per risolvere questo problema, ma anche garantire che /etc/resolv.confsarà a prova di manomissione?

Risposte:


5

Una semplice modifica /etc/NetworkManager/NetworkManager.confe disabilitazione systemd-resolved.service(come in questa risposta https://askubuntu.com/a/907249/719422 ). Ma questo da solo, sebbene essenziale, non garantisce a prova di manomissione resolv.conf.

Per imporre davvero una statica /etc/resolv.confche sai sopravviverà al riavvio di qualsiasi tipo, devi impostare l' attributo immutabile su di esso. Aggiungendo alla risposta di Bastian Voigt menzionata sopra, lo fai come SuperUser:

echo nameserver 8.8.8.8 > /etc/resolv.conf
chattr -e /etc/resolv.conf
chattr +i /etc/resolv.conf

... cambiando il nameservervalore scelto. In questo modo, puoi avere un effetto davvero statico /etc/resolv.conf.


3
Il file /etc/NetworkManager/NetworkManager.conf non esiste nel 18.04
hfranco

@hfranco, in caso contrario, ne dubito, quindi ne crei uno! E, tra l'altro, se questo è il tuo caso, allora non è una configurazione standard; il tuo caso è anormale. Direi che hai sbagliato a cercarlo!
MK

@hfranco A partire da 12.04 unix.stackexchange.com/questions/154338/…
MK

Questa è l'unica cosa che ha funzionato per me su Ubuntu 18.04
Lucas Bustamante il

1

La migliore soluzione che ho trovato è impedire a NetworkManager di aggiornare /etc/resolv.conf e quindi creare un nuovo file /etc/resolv.conf con un server DNS statico. Vedi https://www.ctrl.blog/entry/resolvconf-tutorial per come fare.


1
Grazie per lo spam! Ma ti manca l'attributo Immutable, comunque!
MK

0

Secondo la documentazione, potete scrivere il vostro resolv.confa /usr/lib/systemd/resolv.conf, che è un file statico che può essere collegato da /etc/resolv.conf. Non dovrebbe essere riscritto.

sudo ln -sf /usr/lib/systemd/resolv.conf /etc/resolv.conf

http://manpages.ubuntu.com/manpages/bionic/man8/systemd-resolved.service.8.html#contenttoc3

/etc/resolv.conf

Sono supportate quattro modalità di gestione /etc/resolv.conf (vedere resolv.conf (5)):

...

Viene fornito un file statico /usr/lib/systemd/resolv.conf che elenca lo stub DNS 127.0.0.53 (vedi sopra) come solo server DNS. Questo file può essere collegato simbolicamente da /etc/resolv.conf per connettere tutti i client locali che bypassano le API DNS locali a systemd-risolto. Questo file non contiene domini di ricerca.


2
No scusa. Cosa succede quando le specifiche cambiano o il metodo di configurazione si modifica in base alla volontà di Ubuntu ? Sai, questo è lo stesso fiasco per cui ho lasciato i sogni corrotti di Satya su un sistema operativo. E questo è lo stesso fiasco che Linux dovrebbe evitare. Cosa c'è di sbagliato con resol.conf? Perché la seccatura? Perché provare a imitare l'odiosa e noiosa configurazione della rete Redhat, in un modo o nell'altro? Spiacente, mi atterrò solo alla mia soluzione.
MK,

Come fai a sapere che il tuo file non verrà semplicemente ignorato in futuro? So che forzare il modo statico in cui alcune app funzionerebbero e altre no. Con la soluzione di wisbucky, almeno possiamo usare il modo attuale. Non ho visto nemmeno la necessità che cambiassero, ma non ho ottenuto un voto. Qualcuno ha retrocesso questa soluzione quando in realtà funziona ed è la più semplice. +1
Marlon,

@Marlon "Come fai a sapere che il tuo file non verrà semplicemente ignorato in futuro"? Perché è impostato immutabile; e, se /etc/resolv.conf verrà ignorato, allora perché la confusione costruisce comunque un framework attorno ad esso ?? Ignorare il file accadrà solo se alcuni pazzi di Ubuntu decidessero che è inutile (implementando qualcosa nel file interfacce, per esempio!)
MK

Se avessi voluto che qualcuno prendesse delle decisioni per me, sarei tornato al bizzarro Microsoft Windows, i cui programmatori e designer e Satya al di sopra di tutti pensano di conoscere il tuo bene meglio di te e che non hai il diritto di scegliere come eseguire il loro " creazione". Fuss!
MK,

Perché la confusione costruisce un sistema operativo per il bene dell'umanità, se l'umanità non può godere di eseguirlo? Quale clamore è l'attributo Immutabile se qualcuno mi dirà quando usarlo o no. Non si tratta di "seguire i manuali galattici di Vega", si tratta di libertà di scelta; nessuno dovrebbe mai posare su di te il suo rigido impulso risoluto. Sei un essere e hai diritti.
MK,

-2

Il file presente è un collegamento simbolico a un altro file. Elimina il file

rm /etc/resolve.conf
vim / etc resol.conf
Inserisci i tuoi dati
: wq

Il file non è più un collegamento simbolico ma un file persistente.


Passi già diretti alla cancellazione /etc/resolv.conf in anticipo.
MK
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.