Jak upravit soubor Hosts v systému macOS (Mac OS X)

Soubor hostitelů vašeho Macu je malý, ale důležitý textový dokument, který má schopnost mapovat názvy hostitelů na zadané IP adresy.

Zatímco moderní internet používá k mapování IP adres různé veřejné a soukromé servery DNS, soubor hosts je praktický způsob, jak tyto servery DNS přepsat, což vám umožní ručně nasměrovat adresu webové stránky na požadovanou IP adresu nebo zablokovat přístup k webu tak, že ukážete na nepoužívanou nebo interní IP adresu.

Pojďme se rychle podívat na to, jak upravit soubor Mac hosts v systému macOS.

Jak upravit soubor Mac Hosts pomocí úpravy textu

Existují dva hlavní způsoby úpravy souboru hosts v systému Mac OS X.

První je pomocí TextEdit, protože soubor hostitelů je prostý textový dokument. Soubor však nemůžete otevřít přímo, protože se nachází v chráněné oblasti systému souborů. Místo toho musíme soubor zkopírovat na nechráněné místo, jako je Plocha, upravit jej a poté zkopírovat zpět.

  • Chcete-li najít soubor hosts, otevřete Finder, ke kterému se dostanete kliknutím na plochu, vyhledávač smajlíků v levé dolní části obrazovky nebo stisknutím cmd + mezerník + Finder.
  • Nyní vyberte rozbalovací nabídku Přejít.

3. Poté z nabídky vyberte Přejít do složky.

4. Do pole zadejte „/private/etc/hosts“ a stiskněte Return.

5. Otevře se nové okno Finder a vybere se soubor hostitelů vašeho Macu. Klikněte na něj a přetáhněte jej z okna Finderu na plochu.

Chcete-li jej otevřít, jednoduše dvakrát klikněte a zobrazí se obsah souboru v TextEdit (nebo textovém editoru dle vašeho výběru).

Blokovat IP adresy

Ve výchozím nastavení je soubor /etc/hosts relativně jednoduchý. Obsahuje řadu řádků popisného textu, které jsou „okomentovány“ znakem libry nebo čísla (také nazývaného libra nebo hashtag) (#).

  Jak přidat vlastní tlačítko na dotykovou lištu v macOS

Každý řádek, který začíná znakem #, je komentář a soubor /etc/hosts jej nečte. U každého řádku počítač ignoruje jakýkoli text za znakem libry, takže je to dobrý způsob, jak do souborů přidávat poznámky a popisy. Obsahuje také výchozí hodnoty IP pro localhost a broadcasthost. Chcete-li soubor upravit, přidejte za broadcasthost své vlastní řádky.

Kromě testování nově vyvinutých webů a migrací webhostingu je dalším důvodem k úpravě souboru hosts zablokování přístupu na konkrétní weby.

V našem příkladu budeme předstírat, že počítač, který používáme, je zařízení, které chceme používat výhradně k práci, a nenecháme se rozptylovat Facebookem na našem pracovním stroji.

Chcete-li to provést, zadejte adresu IP, kterou chcete přiřadit, a poté dvě karty a název hostitele. V našem případě chceme zablokovat Facebook, takže namapujeme www.facebook.com na 0.0.0.0, což jako neplatná IP adresa způsobí chybu.

Kdykoli se nyní z našeho Macu pokusíme přejít na www.facebook.com, webový prohlížeč stránku nenačte, doufejme, že nás to povzbudí k návratu do práce!

Přesměrovat webové adresy

Alternativně můžete zadat IP adresu platného webu místo 0.0.0.0, což povede k tomu, že uživatelé pokoušející se o přístup k Facebooku budou přesměrováni na vámi vybraný web.

  • Chcete-li zjistit IP adresu webu, můžete použít příkaz dig, který je standardní součástí macOS. Chcete-li vykopat web přes terminál, jednoduše otevřeme terminál a poté spustíme příkaz dig na URL, který pak vrátí IP adresu jako výstup.
  • Nyní zadejte „$ dig www.techjunkie.com + krátké 104.25.27.105“

Poznámka: Možnost + short ponechává na výstupu pouze informace, které potřebujeme, což je IP adresa.

3. Poznamenejte si vrácenou IP adresu a použijte ji v mapování souborů hostitelů Mac. Například web The New York Times vrací IP adresu 170.149.172.130. Pokud to namapujeme na Facebook v našem souboru hostitelů, kdykoli se někdo na Macu pokusí přejít na Facebook, místo toho se mu načte The New York Times.

  Jak přepínat mezi nedávnými aplikacemi pomocí Touch Baru v macOS

Poznámka: Mnoho webů vám nedovolí namapovat název domény na IP adresu aktuálně mapovanou na web, takže se při pokusu zobrazí chyba zabezpečení.

4. Do souboru hostitelů můžete přidat tolik položek, kolik chcete, zadáním nových mapování na každý řádek. Jakmile provedete požadované změny v souboru hostitelů, uložte jej do aktuálního umístění na Ploše.

5. Poté přetáhněte soubor hostitelů z plochy zpět do původního umístění na /private/etc. Pokud jste zavřeli okno Finder ukazující na tento adresář, jednoduše jej znovu otevřete pomocí příkazu Finder > Přejít > Přejít do složky, jak je popsáno výše.

6. Když uložíte soubor hostitelů zpět do původního umístění, macOS se vás zeptá, co dělat s neupraveným souborem hostitelů, který tam již je. Zvolte Nahradit a poté zadejte heslo administrátora pro ověření přenosu.

S upraveným souborem hostitelů nyní na místě spusťte webový prohlížeč a otestujte změny.

Vyprázdněte mezipaměť DNS

Ve většině případů by nové mapování mělo fungovat okamžitě, ale pokud nevidíte správné chování, možná budete muset vyprázdnit mezipaměť DNS a přinutit prohlížeč, aby četl z vašeho souboru hostitelů, aby určil mapování.

  • Chcete-li vyprázdnit mezipaměť DNS na počítači Mac, otevřete Terminál a použijte následující příkaz (sudo vám umožňuje spustit tento příkaz jako správce vašeho počítače):
  • Nyní zadejte „sudo killall -HUP mDNSResponder“ a stiskněte Return. Poznámka: K provedení tohoto příkazu budete muset zadat heslo správce.
  • Chcete-li, aby váš Mac vymazal mezipaměť DNS, poté potvrďte vymazání mezipaměti ozvěnou potvrzení, zadejte tyto dva příkazy oddělené středníkem, jak je znázorněno zde: „sudo killall -HUP mDNSResponder;say DNS cache has been flushed“

Váš Mac se poté ozve z reproduktorů a řekne „DNS cache byla vyprázdněna“.

Jak upravit váš Mac Hosts soubor v terminálu s Nano

Kroky v předchozí části jsou dostatečně snadné, ale pokud se chcete vyhnout kopírování souboru hosts, můžete jej upravit přímo v Terminálu pomocí UNIX Nano Text Editoru, který je integrován do macOS.

  • Chcete-li začít, spusťte Terminál, zadejte následující příkaz a stiskněte Return. Stejně jako u všech příkazů sudo budete muset také zadat své heslo správce, abyste jej mohli spustit: „sudo nano /private/etc/hosts“
  Jak nainstalovat virtuální počítač Windows 10 VirtualBox na macOS

2. Nyní uvidíte soubor hostitelů otevřete v editoru Nano nebo vim nebo jiném editoru dle vašeho výběru. Chcete-li procházet a upravovat soubor v Nano, použijte klávesy se šipkami na klávesnici.

3. Stejně jako jsme to udělali s výše uvedenou metodou TextEdit, můžeme libovolně přidávat, upravovat nebo odstraňovat mapování názvů hostitelů. Protože jsme spustili Nano pomocí sudo, veškeré změny budou ověřeny a uloženy přímo do původního souboru hosts, aniž by bylo nutné jej kopírovat mimo jeho domovský adresář.

4. Po dokončení změn stiskněte Ctrl-X pro ukončení editoru, Y pro uložení a Return pro přepsání existujícího souboru hostitelů.

Jak jsme již zmínili, nezapomeňte vyprázdnit mezipaměť DNS, pokud si všimnete, že vaše nová mapování nefungují správně.

Naše příklady zmiňovaly blokování a přesměrování rušivých stránek v pracovním prostředí, ale tyto kroky můžete také použít k ručnímu zablokování přístupu na škodlivé weby a samozřejmě i k dalším účelům.

Pokud někdy uděláte chybu a nebudete si jisti, jak ji opravit, můžete kdykoli obnovit výchozí obsah souboru hostitelů pomocí jedné z výše uvedených metod a zadat následující výchozí informace:

##
# Databáze hostitelů
#
# localhost se používá ke konfiguraci rozhraní zpětné smyčky
# při spouštění systému. Tento záznam neměňte.
##
127.0.0.1 localhost
255.255.255.255 broadcasthost::1 localhost
fe80::1%lo0 localhost

Závěrečné myšlenky

Znalost toho, jak upravit soubor hostitelů v systému macOS, nabízí pohodlný způsob, jak přepsat servery DNS a ručně nasměrovat adresu webu na novou adresu IP nebo zablokovat přístup, a podle výše uvedených kroků můžete tento úkol provést velmi rychle.

Jaký je důvod, proč se snažíte upravit soubor hostitelů vašeho Macu? jak to dopadlo? Řekněte nám o tom v komentářích níže!