web-dev-qa-db-ja.com

18.04:Bionic Beaver:静的/etc/resolv.confを強制する

以前、Ubuntu 16.04で、Ubuntuの更新がdnsmasqパッケージをインストールして構成し、それを自分の超安定、超高速、および独自に構成したBIND DNSサーバーよりも優先したときに裏切られたと感じました。 Ubuntuが私のワークステーションをハッキングしたように感じました。

私はたまたまシステム管理者として働いていたので、これは非常に受け入れがたいものでした。これはフリークアウトコールでした。これは、問題のトラブルシューティングを行うときに、ステップの1つでDigまたはnslookupを使用し、loインターフェースが応答するのを見て驚いたときです。 パニック

この問題を修正するだけでなく、/etc/resolv.confが改ざんされないことを保証する方法はありますか?

10
M K

/etc/NetworkManager/NetworkManager.confの簡単な編集とsystemd-resolved.serviceの無効化(この回答のように https://askubuntu.com/a/907249/719422 )。しかし、それだけでは不可欠ですが、改ざん防止resolv.confを保証するものではありません。

あらゆる種類の再起動に耐えることがわかっている静的/etc/resolv.confを実際に適用するには、immutable属性を設定する必要があります。上記のBastian Voigtの答えに加えて、スーパーユーザーとしてこれを行います。

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

...nameserverを選択した値に変更します。そうすれば、reallystatic /etc/resolv.confを持つことができます。

5
M K

私が見つけた最善の解決策は、NetworkManagerが/etc/resolv.confを更新してから、静的DNSサーバーで新しい/etc/resolv.confファイルを作成するのを防ぐことです。 https://www.ctrl.blog/entry/resolvconf-tutorial をご覧ください。

0
Scubadoo

ドキュメントによると、resolv.conf/usr/lib/systemd/resolv.confに書き込むことができます。これは、/etc/resolv.confからリンクできる静的ファイルです。それを書き換えるべきではありません。

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

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

/ETC/RESOLV.CONF

/etc/resolv.confを処理する4つのモード(resolv.conf(5)を参照)がサポートされています。

...

静的ファイル/usr/lib/systemd/resolv.confが提供されており、127.0.0.53 DNSスタブ(上記参照)をDNSサーバーとしてのみリストしています。このファイルは、ローカルDNS APIをバイパスするすべてのローカルクライアントをsystemd-resolvedに接続するために、/ etc/resolv.confからシンボリックリンクされている場合があります。このファイルには検索ドメインは含まれていません。

0
wisbucky