- Файл hosts в Linux
- Что за файл и за что отвечает?
- Расположение hosts
- Как отредактировать hosts?
- Проблемы
- Графическая среда
- Как редактировать файл Hosts в Linux, Windows и Mac
- Как редактировать файл Hosts в Linux
- Шаг 1: Откройте окно терминала (командная строка)
- Шаг 2: Откройте файл Hosts
- Шаг 3: Изменить файл
- Шаг 4 (опциональный): Name Service
- Как отредактировать файл Hosts в Windows
- Шаг 1: Откройте Блокнот как Администратор
- Шаг 2: Откройте файл Windows Hosts
- Шаг 3: Отредактируйте файл
- Как редактировать файл Hosts на Mac
- Шаг 1: Откройте терминал Mac
- Шаг 2. Редактирование файла Hosts
- Как отредактировать файл Hosts в Linux, Windows и macOS
- Формат файла Hosts
- Изменить файл Hosts в Linux
- Изменить файл Hosts в Windows
- Изменить файл Hosts в macOS
- Выводы
Файл hosts в Linux
Объект hosts исполняет роль шлюза между рабочей станцией и сетевым устройством (или внешней сетью). С его помощью блокируются сайты, перенаправляются запросы и т.д. О том, как его настроить в ОС семейства Linux/Unix, расскажем в публикации.
Что за файл и за что отвечает?
Как уже говорилось выше – файл отвечает за доступ к внешним и внутренним сетевым ресурсам. Он представляет собой текстовый документ с расширением txt. Внутри содержатся две-три строки.
Обращаем внимание, что большая часть строк начинается со знака «хештег». Это означает, что данные предложения – информационные, но не более того.
Как же работает hosts? Принцип следующий:
- Пользователь открывает браузер и вводит адрес сайта (допустим, mail.ru).
- Операционная система сначала проверяет список адресов внутри hosts. Если там присутствует правило, как обрабатывать запросы на адрес mail.ru, то система следует ему.
- В противном случае обращение переходит к DNS-серверам.
Linux сначала обращается к файлу, который содержит порядок обработки таких запросов. Он расположен по пути:
Открываем его через редактор и смотрим.
sudo gedit /etc/nsswitch.conf
Строка hosts говорит о том, в какой порядке будет обработан запрос. По умолчанию идет обращение к локальному файлу, а потом к DNS-серверам.
Расположение hosts
В операционных системах семейства Windows объект находится по следующему пути:
В Linux-системах файл находится по другому «адресу»:
Открывается через любой тестовый редактор. Например, воспользуемся vi:
Важно! ОС семейства Linux по умолчанию требуют права суперпользователя при открытии или редактировании системных файлов.
Как отредактировать hosts?
После открытия файла вносим изменения так же, как и в обычном тестовом документе. Например, администратору требуется перенаправлять запросы с mail.ru на локальный компьютер. Открываем файл hosts через редактор gedit.
Добавляем следующую строку:
Закрываем документ с обязательным сохранением изменений. Теперь каждый раз, когда пользователь будет набирать в адресной строке mail.ru, операционная система направит его на адрес, прописанный в hosts.
В примере указан 127.0.0.1, локальный компьютер. Соответственно, в браузере будет отображаться сообщение о том, что страница недоступна.
Функциональные возможности файла значительно шире вышеописанного метода. К примеру, он может создавать ярлыки, перенаправлять на другие сайты, подменять страницы и т.д.
Проблемы
Несмотря на то, что работа с hosts кажется простой на первый взгляд, временами возникают некоторые проблемы. Расскажем о некоторых из них подробнее.
Для блокировки сайта необходимо указывать адрес как с http, так и без него. Это связано с тем, что некоторые браузеры игнорируют префикс. Другими словами, объект будет выглядеть так:Редактируем строкиПосле внесения изменений сохраняем файл, а потом закрываем его.
- Ручной ввод информации занимает длительное время. Если добавить нужно 2-3 строки, то открыть hosts и отредактировать его займет три-четыре минуты. А если требуется ввести гораздо больше строк?
В таких ситуациях рекомендуется использовать либо графические утилиты с автоматизацией, либо специализированные программные средства – межсетевые экраны, прокси-сервера и т.д.
Графическая среда
Для пользователей, которым сложно работать в терминале, но необходимо автоматизировать процесс, доступно специальное ПО.
Для инсталляции прописываем в терминале следующее:
sudo apt-get install mintnanny
ПО интегрировано в официальный репозиторий Linux Mint (в других системах ее нет).
После установки запускаем утилиту с правами администратора.
В открывшемся окне нажимаем кнопку «Добавить», а потом вводим доменное имя веб-ресурса, которое необходимо закрыть.
Как редактировать файл Hosts в Linux, Windows и Mac
Файл hosts в Windows, Mac или Linux сопоставляет имена хостов с IP-адресами. Редактирование файла hosts может быть полезно, если вы запускаете тесты в своей сети. Сопоставляя IP-адрес с именем сервера (или именем домена), вы можете пропустить процесс, в котором веб-браузер использует поиск сервера доменных имен (DNS) для преобразования имени домена в IP-адрес.
Из этого руководства вы узнаете, как редактировать файл hosts в Linux, Windows или Mac.
Как редактировать файл Hosts в Linux
Шаг 1: Откройте окно терминала (командная строка)
В большинстве дистрибутивов Linux терминал можно найти по пути Приложения -> Утилиты -> Терминал, или можно щелкнуть правой кнопкой мыши на рабочем столе и выбрать «Open Terminal» (Открыть терминал).
Шаг 2: Откройте файл Hosts
Чтобы открыть файл hosts в Linux, введите команду:
Система должна запросить ваш пароль — введите его, и файл hosts должен открыться.
Шаг 3: Изменить файл
Файл hosts в Linux отформатирован таким образом, чтобы IP-адрес был первым, а имя сервера — вторым.
Добавьте любые записи, которые вы хотите в конец файла. Если вы допустили ошибку или хотите, чтобы ваша операционная система проигнорировала строку, добавьте знак # в начале этой строки.
Сохраните изменеия и выходите из редактора ( :wq в vim).
Шаг 4 (опциональный): Name Service
Файл hosts обходит стандартный поиск сервера доменных имен. В Linux есть еще один файл, который сообщает операционной системе, в каком порядке искать трансляции IP-адресов. Это файл nsswitch.conf . Если он настроен на просмотр DNS в первую очередь, он пропустит файл hosts и сразу перейдет к поиску DNS.
Чтобы проверить конфигурацию, введите в окне терминала:
Примерно на середине должна быть запись с надписью hosts. Убедитесь, что в правом столбце в первую очередь будет слово files . Если по какой-то причине DNS указан первым, откройте файл nsswitch.conf в текстовом редакторе:
Для параметра hosts: измените запись так, чтобы files находились в начале записи, а dns — в конце.
Как отредактировать файл Hosts в Windows
Шаг 1: Откройте Блокнот как Администратор
Для этой операции вам потребуются права администратора.
- Нажмите Пуск или кнопку Windows и введите Блокнот. Функция поиска найдет приложение «Блокнот».
- Щелкните правой кнопкой мыши на приложении «Блокнот» и выберите «Запуск от имени администратора».
- Должно появиться окно контроля учетных записей Windows с вопросом «Хотите ли вы, чтобы это приложение могло вносить изменения в ваше устройство?» Нажмите Да.
Шаг 2: Откройте файл Windows Hosts
- В блокноте нажмите Файл ->Открыть
- Перейдите к C:windowssystem32driversetc
- В правом нижнем углу, чуть выше кнопки Открыть, щелкните раскрывающееся меню, чтобы изменить тип файла на Все файлы.
- Выберите hosts и нажмите Открыть.
Шаг 3: Отредактируйте файл
Файл hosts дает вам краткое объяснение того, как написать новую строку. Вот краткая разбивка:
Первый набор из четырех цифр — это IP-адрес, который вы мапите. Это может быть внутренний IP-адрес сервера в сети или IP-адрес веб-сайта.
Вторая часть — это имя, которое вы хотите ввести в браузере для доступа к серверу по IP-адресу, который вы только что указали.
Когда вы закончите вносить изменения, сохраните файл (Файл -> Сохранить) и выйдите.
Вы можете указать Windows игнорировать любую строку, поставив знак # в начале этой строки.
Как редактировать файл Hosts на Mac
Шаг 1: Откройте терминал Mac
Откройте Finder и перейдите в Приложения -> Утилиты -> Терминал и введите следующее:
sudo nano /private/etc/hosts
Система должна попросить вас ввести пароль — это тот же пароль, который вы используете для входа в систему. Введите его и нажмите Enter.
Шаг 2. Редактирование файла Hosts
Тут IP-адрес идет первым, а имя сервера — вторым. Комментарии отмечены знаком # . Рассмотрим пример ниже:
Сначала введите IP-адрес, на который вы хотите сослаться, пробел, а затем имя сервера (или доменное имя), которое вы хотите связать с ним.
Сохраните изменения, нажав Command + O , затем выйдите, нажав Command + X.
Как отредактировать файл Hosts в Linux, Windows и macOS
Файл hosts используется для сопоставления доменных имен (имен хостов) с IP-адресами. Это простой текстовый файл, используемый всеми операционными системами, включая Linux, Windows и macOS.
Файл hosts имеет приоритет над DNS. Когда вы вводите доменное имя веб-сайта, который хотите посетить, это доменное имя должно быть преобразовано в соответствующий IP-адрес. Операционная система сначала проверяет свой файл hosts для соответствующего домена, и, если для этого домена нет записи, она запрашивает настроенные DNS-серверы для разрешения указанного имени домена. Это влияет только на компьютер, на котором внесено изменение, а не на то, как домен разрешается во всем мире.
Использование файла hosts для сопоставления домена с IP-адресом особенно полезно, если вы хотите протестировать свой веб-сайт без изменения настроек DNS домена. Например, вы переносите свой веб-сайт на новый сервер и хотите проверить, полностью ли он работает, прежде чем указывать домен на новый сервер. Файл hosts также можно использовать для блокировки веб-сайтов на вашем компьютере.
В этой статье мы дадим инструкции о том, как изменить файл hosts в Linux, macOS и Windows.
Формат файла Hosts
Записи в файле hosts имеют следующий формат:
IPAddress DomainName [DomainAliases]
IP-адрес и доменные имена должны быть разделены хотя бы одним пробелом или табуляцией. Строки, начинающиеся с # являются комментариями и игнорируются.
Чтобы добавить запись в файл hosts, просто откройте файл в текстовом редакторе. Ниже приведен пример файла hosts:
# Static table lookup for hostnames. # See hosts(5) for details. 127.0.1.1 linuxize.desktop linuxize 127.0.0.1 localhost
Изменения файла hosts вступают в силу немедленно, за исключением случаев, когда записи DNS кэшируются приложениями.
Чтобы отменить изменения, просто откройте файл и удалите добавленные строки.
Изменить файл Hosts в Linux
В Linux полный путь к файлу — /etc/hosts .
Приведенные ниже инструкции действительны для всех дистрибутивов Linux, включая Ubuntu, CentOS, RHEL, Debian и Linux Mint:
- В окне терминала откройте файл hosts с помощью вашего любимого текстового редактора :
При появлении запроса введите свой пароль sudo.
Изменить файл Hosts в Windows
В Windows полный путь к файлу — c:WindowsSystem32Driversetchosts . Приведенные ниже инструкции действительны для Windows 10 и Windows 8.
- Нажмите клавишу Windows и введите «Блокнот» в поле поиска.
- Щелкните правой кнопкой мыши значок «Блокнот» и выберите «Запуск от имени администратора».
- В Блокноте щелкните Файл, затем Открыть. В поле Имя файла вставьте c:WindowsSystem32driversetchosts .
- Прокрутите вниз до конца файла и добавьте новые записи:
- Сохраните изменения, щелкнув File > Save .
Изменить файл Hosts в macOS
В macOS полный путь к файлу — /etc/hosts . Приведенные ниже инструкции действительны для всех версий macOS.
- В окне терминала откройте файл hosts с помощью вашего любимого текстового редактора:
При появлении запроса введите пароль администратора.
Выводы
Файл hosts позволяет вам установить IP-адрес данного доменного имени.
Не стесняйтесь оставлять комментарии, если у вас есть вопросы.