- Файл hosts в Linux
- Что за файл и за что отвечает?
- Расположение hosts
- Как отредактировать hosts?
- Проблемы
- Графическая среда
- Файл hosts на Linux
- Как отредактировать файл hosts в Linux
- Как изменить файл Hosts в Linux
- Что такое файл Hosts?
- Расположение файла Hosts в Linux
- Как добавлять сайты в Hosts файл
- Создание ярлыков в Hosts файле
- Потенциальные проблемы использования
Файл 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
В этой статье мы расскажем, что такое файл hosts Linux, как его использовать и как изменить файл hosts в Linux.
Данные любого сайта находятся на физическом сервере. Чтобы браузер нашёл нужный сервер, он должен знать его IP-адрес. Узнать, какому IP соответствует домен, можно с помощью DNS-системы. DNS ― это своеобразная телефонная книга, где записаны абсолютно все домены и соответствующие им IP-адреса. До появления DNS использовался hosts. Hosts ― это текстовый файл, в котором находятся данные домена и его IP.
С появлением DNS hosts поменял сферу применения. Настройки в файле для браузера более приоритетны. Поэтому, перед тем как обратиться к DNS, браузер проверяет настройки hosts. Если в файле нет никаких данных по нужному хосту (домену), браузер обращается к DNS-системе. Эту особенность можно использовать. С помощью файла hosts можно:
- Указать псевдоним для локальной сети.
- Запретить посещение какого-либо сайта. Такой метод часто применяется на рабочих компьютерах, чтобы сотрудники не отвлекались на развлекательные сайты. Также ограничения можно установить для детских устройств. Например, вы не хотите, чтобы ребёнок посещал сайт youtube.com, впишите в hosts 127.0.0.1 youtube.com. 127.0.0.1 ― эта запись заставляет систему обращаться к собственному компьютеру.
- Просмотреть сайт до внесения его в DNS-систему. Если вы прописали DNS-серверы для домена, изменения вступят в силу в течение 24 часов. В некоторых случаях увидеть свой сайт нужно быстрее. Для этого вручную впишите свой домен и соответствующий ему IP. Тогда браузеру будет неважно, есть ли данные о этом сайте в единой системе.
Как добавить нужные данные, мы расскажем в инструкции ниже.
Как отредактировать файл hosts в Linux
В Linux файл hosts находится в папке /etc/hosts. Обратите внимание! Обычно для редактирования hosts нужен доступ суперпользователя.
Чтобы отредактировать его:
Hosts Linux настройка
123.123.123.123 faq-reg.ru www.faq-reg.ru
- 123.123.123.123 — IP-адрес сервера или хостинга,
- faq-reg.ru — имя домена.
Ubuntu файл hosts
Файл hosts редактируется одинаково во всех Unix-системах.
Google Chrome может игнорировать файл hosts. Если вы хотите заблокировать какой-либо сайт в этом браузере, вводите http:// в начале каждого адреса. Например, вводите не youtube.com, а http:/youtube.com. При таких настройках Google Chrome не будет игнорировать hosts.
Если вы не хотите разбираться, как работать с файлом hosts, но заблокировать нежелательные сайты нужно, воспользуйтесь приложением Linux Mint Domain Blocker. Оно самостоятельно добавит домены, которые нужно заблокировать, в файл hosts. Эта программа пользуется тем же способом, что и пользователь при ручной блокировке. Linux Mint Domain Blocker вместо правильного IP добавляет 127.0.0.1.
Как изменить файл Hosts в Linux
На вашем компьютере есть один файл, который служит небольшим шлюзом между вами и Интернетом. Его название — Hosts. Если вам нужно заблокировать веб сайты или создать персонализированные имена хостов в Linux, вы можете справиться с этой задачей, добавив или изменив несколько строк в файле hosts.
Что такое файл Hosts?
Файл hosts представляет собой простой текстовый файл, который все операционные системы используют для преобразования имен хостов (также известных как веб-адреса или URL) в IP-адреса. Когда вы вводите имя хоста, например, wikipedia.org, ваша система будет искать файл hosts, чтобы получить IP адрес, необходимый для подключения к соответствующему серверу.
Если вы откроете файл hosts, вы быстро заметите, что в нем нет списка всех адресов Интернета. Вместо этого, здесь может быть всего пара строк, и все. Что это значит?
Оказывается, ваша система сначала проверит файл hosts, прежде чем искать сайт на DNS-серверах, определенных в настройках вашей сети (обычно DNS-сервера вашего провайдера).
Это означает, что вы можете использовать файл hosts для добавления того, что DNS серверы не могут предоставить (например, псевдонимы для локальной сети, кроме тех, что предоставляют DNS-серверы в локальной сети) или переопределить IP адреса, которые обычно предоставляют ваши DNS-серверы.
Например, если вы запросите wikipedia.org, DNS-серверы вернут IP-адрес Википедии на ваш компьютер. Но если вы хотите заблокировать Википедию на этом компьютере, вы можете добавить запись в файл hosts, которая скажет вашему компьютеру, что wikipedia.org указывает на другой IP адрес, отличный от фактического IP адреса Википедии.
Есть много других вещей, которые вы можете сделать с файлом hosts, здесь указаны лишь некоторые основные примеры, остальное зависит от ваших потребностей.
Расположение файла Hosts в Linux
В Linux можно найти hosts файл в /etc/hosts. Поскольку это обычный текстовый файл, вы можете открыть его с помощью предпочитаемого вами текстового редактора.
Однако, поскольку файл hosts является системным файлом, вам понадобятся права администратора для сохранения изменений. Поэтому для редактирования файла с помощью терминального текстового редактора Linux, такого как nano, вам потребуется команда sudo, чтобы получить доступ к нему для суперпользователей:
Чтобы воспользоваться графическим текстовым редактором, например, gedit, используйте gksu:
Для запуска соответствующего приложения с правами администратора необходимо использовать терминал. Просто замените nano или gedit на любимый терминальный или графический текстовый редактор. С помощью nano, после редактирования файла, нажмите Ctrl + X, а затем Y, чтобы подтвердить перезапись изменений.
Как добавлять сайты в Hosts файл
В файле hosts каждая запись имеет свою собственную строку. Синтаксис прост. Введите IP-адрес, на который вы хотите перевести имя хоста, нажмите клавишу табуляции на клавиатуре, а затем введите имя хоста.
Например, чтобы заблокировать Википедию введите это (помните, что в качестве пробела используется табуляция):
127.0.0.1 — это loopback IP-адрес, который всегда будет указывать на вашу собственную систему. Поскольку веб-страница не хранится на вашем компьютере, ваш браузер сообщит, что страница не может быть найдена. Сейчас она фактически заблокирована.
Если вы чувствуете страх перед терминалом, проверьте приложение Linux Mint Domain Blocker (также известное как mintnanny). Оно добавит записи в файл hosts, указывающие на имена хостов, которые вы указываете в 127.0.0.1. Но чтобы сделать что-то еще, вам все равно придется вносить изменения с помощью текстового редактора.
Создание ярлыков в Hosts файле
Если у вас на компьютере развернута домашняя сеть и, скажем, по IP-адресу 192.168.1.10 у вас какая-либо полезная для вас веб-страница, вы можете указать псевдоним для быстрого доступа к нему:
Теперь, если вы откроете в браузере http://homeserver/, то автоматически попадете на 192.168.1.10. Это удобнее, чем каждый раз вводить IP-адрес вручную.
Кроме того, вы можете использовать файл hosts для создания ярлыков доступа к определенным сайтам в Интернете. Используйте такую команду, как nslookup, чтобы найти IP-адрес веб-сайта, затем добавьте его в файл hosts вместе с нужным ярлыком, как в примере выше. Но это работает только на сайтах с выделенными IP-адресами. Скорее всего, это не сработает с большинством сайтов, которые вы посещаете.
Потенциальные проблемы использования
Итак, вы теперь знаете, как вносить изменения в файл хоста, но при использовании Google Chrome вы можете столкнуться с радом проблем. Этот веб-браузер имеет тенденцию игнорировать файл hosts, если только вы не сделаете одну из двух возможных вещей:
- Вводите http:// в начале каждого адреса. Например, если у вас заблокирована Википедия в файле hosts, то Chrome обойдет этот блок, если вы просто введете wikipedia.com в адресную строку. Если вы введете http://wikipedia.com в адресную строку, то он будет следовать за файлом hosts.
- Отключите в настройках Chrome параметр «Использовать веб-сервис для устранения ошибок навигации», и вам не придется каждый раз вводить адрес http:// в начале работы. Это один из нескольких советов Google Chrome по обеспечению конфиденциальности, который стоит сделать в любом случае.
Файл hosts предоставляет простой способ блокировки доступа к определенным веб-сайтам на вашем компьютере. Поскольку многие версии Linux не имеют встроенного программного обеспечения родительского контроля, эти знания могут пригодиться, если вы решите начать работу с компьютером под управлением Linux.