Chraňte resolv.conf před DHCP na FreeBSD 10

Chraňte resolv.conf před DHCP na FreeBSD 10

Pokud používáte svůj vlastní překladač nebo chcete použít překladač od poskytovatele třetí strany, můžete zjistit, že váš /etc/resolv.confsoubor je přepisován DHCP. Existuje několik způsobů, jak tento problém vyřešit. Vzhledem k tomu, že pravděpodobně budete chtít restartovat, abyste se ujistili, že se vaše změny udrží, a protože se v první řadě budete opičit s nastavením sítě, důrazně doporučuji provést to na testovací instanci a/nebo mimo špičku hodin.

Nyní jsou zde tři metody, od nejhorší po nejlepší. Všimněte si, že všechny metody v této příručce byly napsány pro FreeBSD 10. Uživatelé Linuxu se mohou podívat na tuto příručku .

Metoda 1: Použijte nastavení statického rozhraní

V mém omezeném testování to má za následek mírně rychlejší spouštění, protože nemusíte čekat, až DHCP přiřadí vaše síťová nastavení. V několika dokumentech Vultr jsem však viděl zmínku, že používání nastavení statického rozhraní je odsuzováno a že byste se měli držet DHCP. Předpokládám, že pro to mají dobrý důvod, a proto jsem sám pokračoval v používání DHCP. Pokud se však rozhodnete jít touto cestou, postupujte podle níže uvedených kroků.

  • Určete IP adresu serveru, masku sítě a IP bránu.
  • Upravte, /etc/rc.confaby se tyto hodnoty používaly místo DHCP.
  • Restartujte a otestujte nastavení.

Určete IP/síťovou masku/bránu

Za předpokladu, že vaše rozhraní je vtnet0, proveďte následující:

ifconfig vtnet0 | grep inet

Tím byste měli získat IP adresu a masku sítě pro váš server:

inet 10.10.10.10 netmask 0xffffff00 broadcast 10.10.10.255

FreeBSD rád používá hex pro masku sítě. Výše uvedené se převede na, 255.255.255.0pokud jste zvědaví. Šikovnou tabulku najdete zde , ale nebojte se: šestnáctkovou adresu můžete jednoduše zkopírovat do svých konfiguračních souborů (nebo ji převést na desítkové, chcete-li).

Bránu můžete najít mnoha způsoby. Tady je jeden:

route get default | grep gateway vrátí něco ve smyslu:

gateway: 10.10.10.1

Upravte /etc/rc.confpomocí nových hodnot

Vyzbrojeni IP, maskou sítě a bránou je nyní čas je přidat do konfigurace systému. Já důrazně doporučujeme zálohovat tento soubor před provedením jakýchkoli změn, protože to bude dělat to mnohem jednodušší undo byste měli zkazit. Nyní se otevřete /etc/rc.confve zvoleném editoru a proveďte následující změny:

# Comment out this line:
# ifconfig_vtnet0="dhcp"

# Add these lines:
defaultrouter="10.10.10.1"
ifconfig_vtnet0="inet 10.10.10.10 netmask 0xffffff00"

Samozřejmě byste si měli být jisti, že za mé zjevné padělky nahradíte svou skutečnou IP, masku sítě a bránu .

Restartujte a otestujte

Restartujte server pomocí shutdown -r nowa ujistěte se, že se správně vrací. Proveďte jakékoli testy, které považujete za nezbytné, abyste se ujistili, že vše funguje správně. Pokud je síť nepřístupná, přihlaste se pomocí konzole a vraťte své změny. Pokud je vše v pořádku, v tuto chvíli můžete vložit do čehokoli chcete, resolv.confaniž byste se báli, že to bude vymazáno.

Pokud z jakéhokoli důvodu nemůžete restartovat, mělo by to fungovat, ale na vašem místě bych opravdu provedl pořádný restart:

service netif restart && service routing restart

Metoda 2: Udělejte resolv.confneměnným

Je to trochu hack, ale je to jednoduše nejrychlejší řešení. Nedoporučuji to, protože nemohu zaručit, že to v budoucnu nezpůsobí nějaké podivnosti, když upgradujete na novou verzi operačního systému, a dhclient si pravděpodobně bude stěžovat. To znamená, že chflags schg /etc/resolv.confje vše, co je potřeba , jednoduché . Soubor je nyní zcela chráněn proti zápisu, dokonce i z rootu. Můžete ověřit takto:

vultr [~]# chflags schg /etc/resolv.conf
vultr [~]# ls -ol /etc/resolv.conf
-rw-r--r--  1 root  wheel  schg 50 Nov 29 06:28 /etc/resolv.conf
vultr [~]# echo "so very untouchable" >> /etc/resolv.conf
/etc/resolv.conf: Operation not permitted.

Vrátit zpět pomocí: chflags noschg /etc/resolv.conf

Metoda 3: Zdvořile řekněte FreeBSD, aby nechala vaše nastavení na pokoji

Toto je zdaleka nejčistší a nejsprávnější způsob, jak toho dosáhnout. Můžete použít dva přístupy:

Konfigurovat dhclient

Vezměme si příklad shora a řekněme, že vše, co chcete udělat, je vložit svůj vlastní jmenný server resolv.confa nechcete o něj přijít pokaždé, když DHCP udělá svou věc. V mém případě chci použít překladač mezipaměti, který jsem nainstaloval a který naslouchá na localhost, takže upravím /etc/dhclient.conf(který bude pravděpodobně prázdný kromě komentářů) a přidám následující:

interface "vtnet0" {
    supersede domain-name-servers 127.0.0.1;
}

To umožní dhclientu dělat vše ostatní, co potřebujete, ale když mu DHCP server pošle seznam jmenných serverů k použití, váš nahradí (jako v, úplně nahradí) ty, které nabízí. Pokud dáváte přednost doplnění (spíše než nahrazení) nabízených, můžete podle potřeby „přidat“ nebo „předložit“ místo „nahradit“.

Mimochodem, pokud potřebujete více než jeden vlastní server, zadejte je takto:

supersede domain-name-servers 127.0.0.1, 127.0.0.2;

Po provedení změn restartujte, dhclientaby se okamžitě projevily:

service dhclient restart vtnet0

Prozkoumejte svůj /etc/resolv.confa měli byste najít, že nyní obsahuje váš vlastní jmenný server (y).

V době psaní tohoto článku jsou jmenné servery jedinou věcí, kterou server DHCP Vultr kdy vložil do mého resolv.conf, a jedinou věcí, kterou jsem si dal upravit. Pokud však někdy budete potřebovat přepsat jakákoli jiná nastavení, nahlédněte do vynikající příručky, kde najdete úplný seznam:

man 5 dhclient.conf

V dolní části jsou skvělé příklady, které by vám měly poskytnout představu o tom, co můžete dělat. Z hlavy si dovedu představit, že byste mohli chtít přidat něco podobného, supersede domain-name "example.com";pokud normálně máte ve svém resolv.conf. Znovu se poraďte s dokumenty.

Konfigurovat resolvconf

Toto je nejjednodušší řešení, pokud chcete, resolv.confabyste zůstali sami. Podle manuálu:

resolvconf manages resolv.conf(5) files from multiple sources, such as DHCP and VPN clients

Jeho konfigurace je umístěna v /etc/resolvconf.conf, který pravděpodobně ve vašem systému neexistuje, takže si ho klidně vytvořte. Chcete-li, aby byl váš resolv.confneměnný, přidejte toto:

# prevent all updates to resolv.conf:
resolv_conf="/dev/null"

Pokud používáte unboundjako místní překladač mezipaměti, je to řádek, který přidá (spolu s několika pro sebe). To je v podstatě trik, resolvconfabyste si mysleli, že se vaše /etc/resolv.confumístění nachází na adrese /dev/null. Něco o něco méně podlého, ale stejně účinného by bylo:

# disable resolvconf from running any subscribers:
resolvconf="NO"

Pokud chcete udělat něco sofistikovanějšího, než jen vypnout, manuálové stránky pro resolvconfa resolvconf.confmají spoustu informací.


Jak nainstalovat Tiny Tiny RSS Reader na FreeBSD 11 FAMP VPS

Jak nainstalovat Tiny Tiny RSS Reader na FreeBSD 11 FAMP VPS

Používáte jiný systém? Tiny Tiny RSS Reader je bezplatný a otevřený zdroj s vlastním hostitelem webového zdroje zpráv (RSS/Atom) a agregátorem určeným pro

Jak nainstalovat Wiki.js na FreeBSD 11

Jak nainstalovat Wiki.js na FreeBSD 11

Používáte jiný systém? Wiki.js je bezplatná a open source, moderní wiki aplikace postavená na Node.js, MongoDB, Git a Markdown. Zdrojový kód Wiki.js je veřejný

Jak nainstalovat Pagekit 1.0 CMS na FreeBSD 11 FAMP VPS

Jak nainstalovat Pagekit 1.0 CMS na FreeBSD 11 FAMP VPS

Používáte jiný systém? Pagekit 1.0 CMS je krásný, modulární, rozšiřitelný a lehký, bezplatný a open source systém správy obsahu (CMS) s

Jak nainstalovat MODX Revolution na FreeBSD 11 FAMP VPS

Jak nainstalovat MODX Revolution na FreeBSD 11 FAMP VPS

Používáte jiný systém? MODX Revolution je rychlý, flexibilní, škálovatelný, open source podnikový systém správy obsahu (CMS) napsaný v PHP. To i

Nastavení OpenBSD 5.5 64-bit

Nastavení OpenBSD 5.5 64-bit

Tento článek vás provede nastavením OpenBSD 5.5 (64-bit) na KVM pomocí Vultr VPS. Krok 1. Přihlaste se do ovládacího panelu Vultr. Krok 2. Klikněte na DEPLOY

Jak nainstalovat osTicket na FreeBSD 12

Jak nainstalovat osTicket na FreeBSD 12

Používáte jiný systém? osTicket je open-source systém pro podporu zákazníků. Zdrojový kód osTicket je veřejně hostován na Github. V tomto tutoriálu

Jak nainstalovat Flarum Forum na FreeBSD 12

Jak nainstalovat Flarum Forum na FreeBSD 12

Používáte jiný systém? Flarum je bezplatný a open source software fóra nové generace, díky kterému je online diskuze zábavná. Zdrojový kód Flarum je hostován o

Jak povolit TLS 1.3 v Nginx na FreeBSD 12

Jak povolit TLS 1.3 v Nginx na FreeBSD 12

Používáte jiný systém? TLS 1.3 je verze protokolu Transport Layer Security (TLS), který byl publikován v roce 2018 jako navrhovaný standard v RFC 8446.

Nainstalujte WordPress na OpenBSD 6.2

Nainstalujte WordPress na OpenBSD 6.2

Úvod WordPress je dominantním redakčním systémem na internetu. Pohání vše od blogů po složité webové stránky s dynamickým obsahem

Jak nainstalovat Subrion 4.1 CMS na FreeBSD 11 FAMP VPS

Jak nainstalovat Subrion 4.1 CMS na FreeBSD 11 FAMP VPS

Používáte jiný systém? Subrion 4.1 CMS je výkonný a flexibilní open source systém správy obsahu (CMS), který přináší intuitivní a jasný obsah

Jak nakonfigurovat DJBDNS na FreeBSD

Jak nakonfigurovat DJBDNS na FreeBSD

Tento tutoriál vám ukáže, jak nakonfigurovat službu DNS, která se snadno udržuje, snadno konfiguruje a je obecně bezpečnější než klasický BIN.

Jak nainstalovat zásobník Nginx, MySQL a PHP (FEMP) na FreeBSD 12.0

Jak nainstalovat zásobník Nginx, MySQL a PHP (FEMP) na FreeBSD 12.0

Zásobník FEMP, který je srovnatelný se zásobníkem LEMP na Linuxu, je kolekce softwaru s otevřeným zdrojovým kódem, který se obvykle instaluje společně, aby umožnil FreeBS.

Instalace MongoDB na FreeBSD 10

Instalace MongoDB na FreeBSD 10

MongoDB je prvotřídní NoSQL databáze, která se často používá v novějších webových aplikacích. Poskytuje vysoce výkonné dotazy, sdílení a replikaci

Jak nainstalovat Monicu na FreeBSD 12

Jak nainstalovat Monicu na FreeBSD 12

Používáte jiný systém? Monica je open source systém pro řízení osobních vztahů. Představte si to jako CRM (oblíbený nástroj používaný prodejními týmy v tis

OpenBSD jako řešení elektronického obchodu s PrestaShop a Apache

OpenBSD jako řešení elektronického obchodu s PrestaShop a Apache

Úvod Tento tutoriál ukazuje OpenBSD jako řešení pro e-commerce využívající PrestaShop a Apache. Apache je vyžadován, protože PrestaShop má složité UR

Instalace Fork CMS na FreeBSD 12

Instalace Fork CMS na FreeBSD 12

Používáte jiný systém? Fork je open source CMS napsaný v PHP. Zdrojový kód Forks je hostován na GitHubu. Tato příručka vám ukáže, jak nainstalovat Fork CM

Jak nainstalovat Directus 6.4 CMS na FreeBSD 11 FAMP VPS

Jak nainstalovat Directus 6.4 CMS na FreeBSD 11 FAMP VPS

Používáte jiný systém? Directus 6.4 CMS je výkonný a flexibilní, bezplatný a open source systém pro správu obsahu bez hlavy (CMS), který poskytuje vývojářům

Vylepšení zabezpečení pro FreeBSD pomocí IPFW a SSHGuard

Vylepšení zabezpečení pro FreeBSD pomocí IPFW a SSHGuard

VPS servery jsou často cílem útočníků. Běžný typ útoku se objevuje v systémových protokolech jako stovky neoprávněných pokusů o přihlášení přes ssh. Nastavení

Nastavení httpd v OpenBSD

Nastavení httpd v OpenBSD

Úvod OpenBSD 5.6 představilo nového démona s názvem httpd, který podporuje CGI (přes FastCGI) a TLS. K instalaci nového http není potřeba žádná další práce

Nastavte iRedMail na FreeBSD 10

Nastavte iRedMail na FreeBSD 10

Tento tutoriál vám ukáže, jak nainstalovat groupwarový iRedMail na čerstvou instalaci FreeBSD 10. Měli byste použít server s alespoň jedním gigabajtem o

The Rise of Machines: Real World Applications of AI

The Rise of Machines: Real World Applications of AI

Umělá inteligence není v budoucnosti, je zde přímo v současnosti V tomto blogu si přečtěte, jak aplikace umělé inteligence ovlivnily různé sektory.

Útoky DDOS: Stručný přehled

Útoky DDOS: Stručný přehled

Jste také obětí DDOS útoků a nemáte jasno v metodách prevence? Chcete-li vyřešit své dotazy, přečtěte si tento článek.

Přemýšleli jste někdy, jak hackeři vydělávají peníze?

Přemýšleli jste někdy, jak hackeři vydělávají peníze?

Možná jste slyšeli, že hackeři vydělávají spoustu peněz, ale napadlo vás někdy, jak takové peníze vydělávají? Pojďme diskutovat.

Revoluční vynálezy od Googlu, které vám usnadní život.

Revoluční vynálezy od Googlu, které vám usnadní život.

Chcete vidět revoluční vynálezy Google a jak tyto vynálezy změnily život každého dnešního člověka? Pak si přečtěte na blogu a podívejte se na vynálezy od Googlu.

Friday Essential: Co se stalo s auty řízenými umělou inteligencí?

Friday Essential: Co se stalo s auty řízenými umělou inteligencí?

Koncept aut s vlastním pohonem, která vyrazí na silnice s pomocí umělé inteligence, je snem, který už nějakou dobu máme. Ale přes několik slibů nejsou nikde vidět. Přečtěte si tento blog a dozvíte se více…

Technologická singularita: vzdálená budoucnost lidské civilizace?

Technologická singularita: vzdálená budoucnost lidské civilizace?

Jak se věda vyvíjí rychlým tempem a přebírá mnoho našeho úsilí, stoupá také riziko, že se vystavíme nevysvětlitelné singularitě. Přečtěte si, co pro nás může znamenat singularita.

Evoluce ukládání dat – Infografika

Evoluce ukládání dat – Infografika

Způsoby ukládání dat se mohou vyvíjet od narození dat. Tento blog se zabývá vývojem ukládání dat na základě infografiky.

Funkcionality vrstev referenční architektury velkých dat

Funkcionality vrstev referenční architektury velkých dat

Přečtěte si blog, abyste co nejjednodušším způsobem poznali různé vrstvy v architektuře velkých dat a jejich funkce.

6 úžasných výhod toho, že máme v životě zařízení pro chytrou domácnost

6 úžasných výhod toho, že máme v životě zařízení pro chytrou domácnost

V tomto digitálním světě se chytrá domácí zařízení stala klíčovou součástí života. Zde je několik úžasných výhod chytrých domácích zařízení o tom, jak náš život stojí za to žít a zjednodušit jej.

Aktualizace doplňku macOS Catalina 10.15.4 způsobuje více problémů než řešení

Aktualizace doplňku macOS Catalina 10.15.4 způsobuje více problémů než řešení

Apple nedávno vydal doplňkovou aktualizaci macOS Catalina 10.15.4, která opravuje problémy, ale zdá se, že aktualizace způsobuje další problémy, které vedou k zablokování počítačů mac. Přečtěte si tento článek a dozvíte se více