Файлът Hosts в Linux
Овладяване на файла с хостове на Linux: вашият местен съветник за DNS
Защо да настройвате файла hosts? Файлът hosts е тайното оръжие на вашия Linux VPS за съпоставяне на домейни с IP адреси, като се заобикаля външният DNS за бързи решения или хитри трикове. Искате да тествате локално даден сайт, да блокирате губещи времето потребители, като например социалните медии, или да избегнете проблеми с DNS? Този файл с обикновен текст ви е на разположение. По-долу ще разкрием неговата сила и ще ви покажем как да го редактирате на вашия AlexHost Linux VPS като професионалист.
1. Какво представлява файлът Hosts?
Файлът hosts е обикновен текстов файл, използван от операционната система за съпоставяне на четими от човека имена на хостове (като www.example.com) със съответните им IP адреси. Той функционира подобно на системата за имена на домейни (DNS), но работи локално на вашата машина. Файлът се използва преди запитване към външни DNS сървъри, което ви позволява да замените DNS резолюцията със собствени персонализирани съпоставки.
Основните приложения на файла hosts включват:
- Картографиране на домейни за локална разработка: Разработчиците често използват файла hosts за създаване на локални тестови среди чрез картографиране на потребителски имена на домейни към localhost (127.0.0.1).
- Блокиране на достъпа до определени уебсайтове: Можете да блокирате достъпа до определени уебсайтове, като насочите имената на домейните им към IP адрес, който не подлежи на маршрутизация, например 0.0.0.0 или 127.0.0.1.
- Бързо отстраняване на проблеми с DNS: Файлът hosts може да се използва за отстраняване на проблеми с DNS или за тестване на конфигурациите на уебсайтове, без да се променят действителните DNS записи.
2. Местоположение на файла Hosts в Linux
В Linux системите файлът hosts обикновено се намира в директорията /etc и се нарича hosts. Пълният път до файла е:
/etc/hosts
Този файл обикновено е предварително конфигуриран с някои записи по подразбиране за управление на локалната мрежа. Например записът за localhost обикновено се включва по подразбиране:
127.0.0.1 localhost ::1 localhost
3. Структура на файла Hosts
Структурата на файла hosts е проста. Всеки ред във файла съдържа IP адрес, последван от едно или повече имена на хостове, които са свързани с този адрес. Форматът е следният:
- IP_адрес: IP адресът, към който искате да се преобразува името на хоста.
- hostname: Името на домейна или хоста.
- псевдоним (по избор): Алтернативни имена за хоста, които могат да бъдат добавени за удобство.
Например, ако искате да съпоставите домейна example.com с местен сървър (localhost), ще добавите следния ред:
Можете също така да добавите няколко имена на хостове на един ред, както следва:
4. Редактиране на файла Hosts в Linux
За да модифицирате файла hosts в система Linux, са ви необходими администраторски (root) права, тъй като файлът е част от системната конфигурация. Ето ръководство стъпка по стъпка за редактиране на файла hosts:
Стъпка 1: Отваряне на файла Hosts като Root
Тъй като за редактирането на файла hosts са ви необходими права на root, трябва да го отворите с помощта на текстов редактор със sudo. Обикновените текстови редактори включват nano и vim. Ето как да отворите файла с помощта на nano:
sudo nano /etc/hosts
Стъпка 2: Редактиране на файла Hosts
След като файлът е отворен, можете да добавяте, променяте или премахвате записи, ако е необходимо. Например, за да блокирате достъпа до уебсайт като example.com, можете да добавите следния ред:
Това ефективно блокира уебсайта, като насочва домейна към IP адрес, който не може да бъде маршрутизиран.
Стъпка 3: Записване и излизане
След като направите промените, запишете файла. Ако използвате nano, натиснете CTRL O, за да запишете промените, и след това натиснете Enter. За да излезете, натиснете CTRL X.
Ако използвате vim, можете да запишете и да излезете, като напишете:
Стъпка 4: Проверка на промените
За да проверите дали промените са влезли в сила, можете да използвате командата ping или просто да опитате да осъществите достъп до домейна в браузъра си. Например:
Ако сте блокирали домейна, като сте го съпоставили с 0.0.0.0 или 127.0.0.1, трябва да видите съобщение, указващо, че хостът е недостъпен.
5. Често срещани случаи на използване на файла Hosts
5.1. Местна разработка
Когато работите по проекти за уеб разработка, можете да използвате файла hosts, за да съпоставите потребителски домейни към localhost. Това ви позволява да използвате по-разбираем за човека URL адрес, например myproject.local, вместо localhost:3000.
Пример:
127.0.0.1 myproject.local
След като добавите този запис, можете да преминете към myproject.local в уеб браузъра си и той ще сочи към вашия локален сървър за разработка.
5.2. Блокиране на уебсайтове
Можете да използвате файла hosts, за да блокирате достъпа до определени уебсайтове, като съпоставите техните домейни с 0.0.0.0 или 127.0.0.1. Това е полезно за предотвратяване на достъпа до разсейващи уебсайтове или потенциално вредни домейни.
Пример:
Това ще блокира достъпа до Facebook чрез пренасочване на заявките към несъществуващ локален адрес.
5.3. Заобикаляне на проблеми с DNS
Ако имате проблеми с разрешаването на DNS или искате да тествате уебсайт на нов сървър, преди да актуализирате DNS записите, можете да използвате файла hosts, за да съпоставите временно домейн с определен IP адрес.
Пример:
Това ще накара системата ви да прехвърли mywebsite.com на IP адреса 203.0.113.15, независимо от това, което се казва в DNS записите.
6. Промиване на DNS кеша (по избор)
След като направите промени във файла hosts, операционната ви система може все още да кешира предишните DNS резолюции. За да приложите промените незабавно, може да се наложи да промиете DNS кеша. Следната команда може да се използва в Linux системи, които поддържат systemd:
sudo systemctl restart systemd-resolved
Алтернативно можете да използвате:
sudo service network-manager restart
Това гарантира, че новите съпоставяния във файла hosts ще бъдат използвани веднага.
Заключение: Файлът с хостове = вашата мрежова нинджа
Файлът на хостовете е джобният DNS на вашия Linux VPS – можете лесно да картографирате, блокирате или отстранявате грешки. Редактирайте /etc/hosts със sudo, тествайте с ping и промийте кеша, за да спечелите веднага. От настройки за разработчици до блокиране на реклами – това е лек инструмент. Работите с AlexHost? Вашият VPS е подготвен за това. Направете настройки, но първо направете резервно копие – щастливо маршрутизиране!