Перенаправление почты через dns. Настройка услуги «Перенаправление домена. Установка Bind на DNS-сервер

Каждый сайт имеет доменное имя в сети Интернет (URL). Это адрес, на котором располагается ваш сайт.

Если у вас еще нет доменного имени, его можно купить у любого регистратора доменного имени (например, NIC.RU).

Чтобы запустить сайт на платформе OKsoft, нужно направить А-записи вашего домена на наш IP-адрес.

Проверить IP вашего сайта можно

* Для перенаправления домена необходимо воспользоваться вашим личным кабинетом регистратора доменного имени (при покупке домена вам предоставляется доступ).

В настройках DNS серверов нужно изменить или добавить две записи:

А-запись для домена без www: @ A 95.213.177.34

А-запись для домена с www: www A 95.213.177.34

Также некоторые регистраторы позволяют установить настройки для протокола IP6:

ААAА-запись для домена без www: @ ААAA 2a00:ab00:4300:15c::

ААAА-запись для домена с www: www AААA 2a00:ab00:4300:15c::

Изменения вступают в силу в течение нескольких часов (от 4-х)

Проверить вступили ли изменения в силу:

Вызовите командную строку в вашем компьютере;

Наберите ping имя вашего домена с www и нажмите Enter

Наберите ping имя вашего домена без www и нажмите Enter

Обе строки должны давать ответ с нужным IP

Инструкция для NIC.RU

Для изменения списка DNS-серверов следует:

Зайти в раздел «Для клиентов» на http://www.nic.ru/ ;

Указать номер своего договора и пароль;

Выбрать меню "Услуги" - "DNS хостинг" - "Заказ новой услуги";

Выбрать минимальный тариф, нажать "продолжить":

Ввести идентификатор DNSOKSOFT, нажмите "продолжить", затем "заказать":

Пополнить счет на нужную сумму, дождаться делегирования;

Выбрать в меню пункт «Услуги. Просмотр и изменение данных»;

Найти нужную услугу (Регистрация домена);

В столбце «Параметры», в списке «DNS-серверы домена:» перейти по ссылке «Изменить»;

Справа в меню отметить пункт "DNS-master";

Добавить записи:

Выбрать в меню пункт «Услуги. Управление DNS зонами»;

Нажать "Управление DNS зонами";

Выбрать домен;

Нажать "+ Добавить новую запись" и добавить две записи:

Дождаться вступления изменений в силу (около 4 часов)

Пример списка записей:

* При возникновении вопросов необходимо обратиться в техническую поддержку регистратора доменного имени, попросив помочь ПЕРЕНАПРАВИТЬ ДОМЕН

DNS (Domain Name System) – важный и довольно сложный в настройке компонент, необходимый для работы веб-сайтов и серверов. Многие пользователи обращаются к DNS-серверам, которые предоставляет их хостинг-провайдер, однако собственные DNS-серверы имеют некоторые преимущества.

В данном мануале вы узнаете, как установить Bind9 и настроить его как кэширующий или перенаправляющий DNS-сервер на сервере Ubuntu 14.04.

Требования
  • Понимание базовых типов DNS-серверов. Ознакомиться с подробностями можно в .
  • Две машины, из которых хотя бы одна работает на Ubuntu 14.04. Первая машина будет настроена как клиент (IP-адрес 192.0.2.100), а вторая – как DNS-сервер (192.0.2.1).

Вы научитесь настраивать клиентскую машину для отправки запросов через DNS-сервер.

Кэширующий DNS-сервер

Серверы этого типа также называются определителями, поскольку они обрабатывают рекурсивные запросы и, как правило, могут выполнить поиск данных DNS не других серверах.

Когда кэширующий DNS-сервер отслеживает ответ на запрос клиента, он возвращает ответ клиенту, а также сохраняет его в кэше в течение периода времени, разрешенного значением TTL соответствующих DNS-записей. Затем кэш можно использовать в качестве источника ответов на последующие запросы, чтобы ускорить общее время обработки запроса.

Почти все DNS-серверы в вашей сетевой конфигурации будут кэширующими. Кэширующий DNS-сервер – хороший выбор для многих ситуаций. Если вы не хотите полагаться на DNS-серверы вашего хостинг-провайдера или другие общедоступные DNS-серверы, настройте собственный кэширующий DNS-сервер. Чем меньше расстояние от DNS-сервера к клиентским машинам, тем меньше время обслуживания запросов DNS.

Перенаправляющий DNS-сервер

С точки зрения клиента перенаправляющий DNS-сервер будет выглядеть почти идентично кэширующему серверу, но механизмы и рабочая нагрузка у них совершенно разные.

Перенаправляющий DNS-сервер имеет те же преимущества, что и кэширующий сервер. Однако на самом деле он не выполняет ни одного рекурсивного запроса. Вместо этого он перенаправляет все запросы на внешний разрешающий сервер, а затем кэширует результаты для последующих запросов.

Это позволяет перенаправляющему серверу обслуживать запросы из своего кэша, не обрабатывая при этом рекурсивных запросов. Таким образом, этот сервер обрабатывает только одиночные запросы (перенаправленные запросы клиента), а не всю процедуру рекурсии. Это может быть преимуществом в средах с ограниченной внешней пропускной способностью, в которых необходимо часто менять кэширующие серверы, и в ситуациях, когда нужно перенаправить локальные запросы на один сервер, а внешние – на другой.

1: Установка Bind на DNS-сервер

Пакет Bind можно найти в официальном репозитории Ubuntu. Обновите индекс пакетов и установите Bind с помощью менеджера apt. Также нужно установить пару зависимостей.

sudo apt-get update
sudo apt-get install bind9 bind9utils bind9-doc

После этого можно начать настройку сервера. Конфигурацию кэширующего сервера можно использовать в качестве шаблона для настройки перенаправляющего сервера, поэтому сначала нужно настроить кэширующий DNS-сервер.

2: Настройка кэширующего DNS-сервера

Сначала нужно настроить Bind в качестве кэширующего DNS-сервера. Такая конфигурация заставит сервер рекурсивно искать ответы на клиентские запросы на других DNS-серверах. Он будет последовательно опрашивать все соответствующие DNS-сервера, пока не найдет ответ.

Конфигурационные файлы Bind хранятся в каталоге /etc/bind.

Большую часть файлов редактировать не нужно. Главный конфигурационный файл называется named.conf (named и bind – два названия одного приложения). Этот файл ссылается на файлы named.conf.options, named.conf.local и named.conf.default-zones.

Для настройки кэширующего DNS-сервера нужно отредактировать только named.conf.options.

sudo nano named.conf.options

Этот файл выглядит так (комментарии опущены для простоты):

options {
directory "/var/cache/bind";
dnssec-validation auto;

listen-on-v6 { any; };
};

Чтобы настроить кэширующий сервер, нужно создать список контроля доступа, или ACL.

Нужно защитить DNS-сервер, обрабатывающий рекурсивные запросы, от злоумышленников. Атаки DNS-усиления особенно опасны, поскольку могут вовлечь сервер в распределенные атаки на отказ в обслуживании.

Атаки DNS-усиления – это один из способов прекращения работы серверов и сайтов. Для этого злоумышленники пытаются найти общедоступные DNS-серверы, которые обрабатывают рекурсивные запросы. Они подделывают IP-адрес жертвы и отправляют запрос, который вернет DNS-серверу очень объемный ответ. При этом DNS-сервер возвращает на сервер жертвы слишком много данных в ответ на небольшой запрос, увеличивая доступную пропускную способность злоумышленника.

Для размещения общедоступного рекурсивного DNS-сервера требуется тщательная настройка и администрирование. Чтобы предотвратить возможность взлома сервера, настройте список IP-адресов или диапазонов сети, которым сервер сможет доверять.

Перед блоком options добавьте блок acl. Создайте метку для группы ACL (в данном мануале группа называется goodclients).

acl goodclients {
};
options {
. . .

В этом блоке перечислите IP-адреса или сети, у которых будет доступ к этому DNS-серверу. Поскольку сервер и клиент работают в подсети /24, можно ограничить доступ по этой подсети. Также нужно разблокировать localhost и localnets, которые подключаются автоматически.

acl goodclients {
192.0.2.0/24;
localhost;
localnets;
};
options {
. . .

Теперь у вас есть ACL безопасных клиентов. Можно приступать к настройке разрешения запросов в блоке options. Добавьте в него такие строки:

options {
directory "/var/cache/bind";
recursion yes;

. . .

Блок options явно включает рекурсию, а затем настраивает параметр allow-query для использования списка ACL. Для ссылки на группу ACL можно также использовать другой параметр, например allow-recursion. При включенной рекурсии allow-recursion определит список клиентов, которые могут использовать рекурсивные сервисы.

Однако если параметр allow-recursion не установлен, Bind возвращается к списку allow-query-cache, затем к списку allow-query и, наконец, к спискам по умолчанию localnets и localhost. Поскольку мы настраиваем только кэширующий сервер (он не имеет собственных зон и не пересылает запросы), список allow-query всегда будет применяться только к рекурсии. Это самый общий способ определения ACL.

Сохраните и закройте файл.

Это все настройки, которые нужно добавить в конфигурационный файл кэширующего DNS-сервера.

Примечание : Если вы хотите использовать только этот тип DNS, переходите к проверке конфигураций, перезапустите сервис и настройте свой клиент.

3: Настройка перенаправляющего DNS-сервера

Если вашей инфраструктуре больше подходит перенаправляющий DNS-сервер, вы можете немного откорректировать настройку.

На данный момент файл named.conf.options выглядит так:

acl goodclients {
192.0.2.0/24;
localhost;
localnets;
};
options {
directory "/var/cache/bind";
recursion yes;
allow-query { goodclients; };
dnssec-validation auto;
auth-nxdomain no; # conform to RFC1035
listen-on-v6 { any; };
};

Можно использовать тот же список ACL, чтобы ограничивать DNS-сервер конкретным списком клиентов. Однако при этом необходимо немного изменить конфигурацию, чтобы сервер больше не пытался выполнять рекурсивные запросы.

Не меняйте значение recursion на no. Перенаправляющий сервер все-таки поддерживает рекурсивные сервисы. Чтобы настроить перенаправляющий сервер, нужно создать список кэширующих серверов, на которые он будет перенаправлять запросы.

Это делается в блоке options {}. Сначала нужно создать в нем новый блок forwarders, где будут храниться IP-адреса рекурсивных серверов имен, на которые нужно перенаправлять запросы. В данном случае это будут DNS-серверы Google (8.8.8.8 и 8.8.4.4):

. . .
options {
directory "/var/cache/bind";
recursion yes;
allow-query { goodclients; };
forwarders {

8.8.8.8;

8.8.4.4;

};
. . .

В результате конфигурация выглядит так:

acl goodclients {
192.0.2.0/24;
localhost;
localnets;
};
options {
directory "/var/cache/bind";
recursion yes;
allow-query { goodclients; };
forwarders {
8.8.8.8;
8.8.4.4;
};
forward only;
dnssec-validation auto;
auth-nxdomain no; # conform to RFC1035
listen-on-v6 { any; };
};

Последнее изменение касается параметра dnssec. При текущей конфигурации и в зависимости от настройки DNS-серверов, на которые перенаправляются запросы, в логах могут появиться такие ошибки:

Jun 25 15:03:29 cache named: error (chase DS servers) resolving "in-addr.arpa/DS/IN": 8.8.8.8#53
Jun 25 15:03:29 cache named: error (no valid DS) resolving "111.111.111.111.in-addr.arpa/PTR/IN": 8.8.4.4#53

Чтобы избежать их, нужно изменить значение параметра dnssec-validation на yes и явно разрешить dnssec.

. . .
forward only;
dnssec-enable yes;
dnssec-validation yes;
auth-nxdomain no; # conform to RFC1035
. . .

Сохраните и закройте файл. Настройка перенаправляющего DNS-сервера завершена.

4: Проверка настроек и перезапуск Bind

Теперь нужно убедиться, что настройки работают должным образом.

Чтобы проверить синтаксис конфигурационных файлов, введите:

sudo named-checkconf

Если в файлах нет ошибок, командная строка не отобразит никакого вывода.

Если вы получили сообщение об ошибке, исправьте ее и повторите проверку.

После этого можно перезапустить демон Bind, чтобы обновить настройки.

sudo service bind9 restart

После нужно проверить логи сервера. Запустите на сервер команду:

sudo tail -f /var/log/syslog

Теперь откройте новый терминал и приступайте к настройке клиентской машины.

5: Настройка клиента

Войдите на клиентскую машину. Убедитесь, что клиент был указан в группе ACL настроенного DNS-сервера. В противном случае DNS-сервер откажется обслуживать запросы этого клиента.

Отредактируйте файл /etc/resolv.conf, чтобы направить сервер на сервер имен.

Изменения, внесенные здесь, будут сохраняться только до перезагрузки, что отлично подходит для тестирования. Если результаты тестовой настройки вас удовлетворят, вы сможете сделать эти настройки постоянными.

Откройте файл с помощью sudo в текстовом редакторе:

sudo nano /etc/resolv.conf

В файле нужно перечислить DNS-серверы, которые будут использоваться для разрешения запросов. Для этого используйте директиву nameserver. Закомментируйте все текущие записи и добавьте строку nameserver, указывающую на ваш DNS-сервер:

nameserver 192.0.2.1
# nameserver 8.8.4.4
# nameserver 8.8.8.8
# nameserver 209.244.0.3

Сохраните и закройте файл.

Теперь можно отправить тестовый запрос, чтобы убедиться, что он разрешается правильно.

Для этого можно использовать ping:

ping -c 1 google.com
PING google.com (173.194.33.1) 56(84) bytes of data.
64 bytes from sea09s01-in-f1.1e100.net (173.194.33.1): icmp_seq=1 ttl=55 time=63.8 ms
--- google.com ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 63.807/63.807/63.807/0.000 ms

Вам нужно, чтобы два URL’а указывали на один веб-сайт? Используйте перенаправление.

Регистрация более чем одного доменного имени для одного сайта не является чем-то необычным. Особенно если вы размещаете свою веб-страницу на ресурсах вашего интернет-провайдера или какого-либо сообщества, таким образом что вам выдается поддомен, другими словами – длинный и неудобный для запоминания адрес.

В этом случае поможет перенаправление. Своим будущим посетителям вы будете сообщать новый, достаточно короткий и понятный адрес.

Существует три основных способа сделать перенаправление: с помощью HTML или JavaScript встроенного в веб-страницу, невидимое перенаправление, или перенаправление посредством DNS. (Заметьте, если у вас имеется свой собственный веб-сервер или у вас есть доступ к настройкам вашего веб-хостинга, вы можете включить перенаправление используя программное обеспечение веб-сервера.)

Как работает DNS развязка?

Система Доменных Имен (Domain Name System (DNS)) это «клей», который скрепляет поддомены и IP адреса. Вот как это работает.

  • Вы вводите URL адрес в браузер. Браузер обращается к локальному DNS-преобразователю на вашем компьютере с требованием сообщить IP адрес соответствующий, например, europe.socko.com.
  • Локальный DNS-преобразователь опрашивает DNS сервер вашего интернет-провайдера (ISP).
  • DNS сервер вашего провайдера начинает с самого верха в иерархии доменов, опрашивая корневой неймсервер (root nameserver), представленный в DNS как. (точка); затем неймсервер.com, и главный неймсервер socko.com. Так как Socko Corp. имеет официальные представительства по всему миру, DNS сервер вашего провайдера будет направлен на dns-eu.socko.com за европейской DNS информацией.
  • DNS сервер вашего провайдера проверяет dns-eu.socko.com и получает в ответ IP адрес для europe.socko.com.
  • Сервер провайдера передает IP адрес вашему локальному DNS-пребразователю.
  • Ваш DNS преобразователь передает этот адрес браузеру.
  • И наконец, браузер подключается к веб-сайту по IP адресу и запрашивает содержимое страницы.
  • Перенаправление через веб-страницу

    Чтобы установить перенаправление, вы можете использовать специальную конструкцию, предусмотреную в HTML, или JavaScript команду. Такое перенаправление может работать несколько медленнее, код перенаправления нужно включать в каждую веб-страницу с которой нужно переадресовать посетителя, и здесь требуется участие браузера. Не смотря на эти недостатки, такой способ хорош тем что находится полностью под вашим контролем и не требует перенастройки программного обеспечения на сервере, доступа к которому ваш провайдер может и не предоставить.

    HTML теги

    Дескриптор meta служит для вставки служебной информации о веб-странице и имеет атрибуты которые могут влиять на поведение браузера. Нужный нам атрибут называется http-equiv, с помощью него можно дать браузеру команду перезагрузить страницу. Еще один атрибут content позволяет указать дополнительные параметры, например новый адрес, который нужно загрузить вместо указанного пользователем:

    число 0 в атрибуте content означает время в секундах до перезагрузки страницы, url как вы вероятно догадываетесь – новый адрес на который нужно переадресовать.

    Дескриптор meta должен быть размещен в разделе head веб-страницы. Для перенаправления посетителей создайте максимально краткую веб-страницу следующего содержания:

    Redirecting

    Не забудьте заменить URL на нужный вам.

    JavaScript

    Простой скрипт, такой как указан в примере после этого абзаца работает более эффективно чем тег meta, потому что скрипт перенаправляет посетителя по новому адресу так скоро, как только браузер получил этот скрипт. Тем не менее, у некоторых пользователей JavaScript может быть попросту отключен, что делает невозможной обработку скрипта. Поэтому для достижения наиболее эффективного результата составьте веб-страницу в которой был бы и скрипт и meta тег. Разместите JavaScript код в разделе head перед meta тегом.

    Невидимое перенаправление

    Невидимое перенаправление использует фреймы. Нужный сайт загружается как бы в другой веб-странице (фрейме). В результате в процессе хождения пользователя по ссылкам сайта, адрес в адресной строке браузера (адрес фрейма) не меняется. Все современные браузеры поддерживают фреймы, однако это не лучшее решение хотя-бы потому, что фреймы могут мешать эффективной индексации веб-страницы поисковыми машинами.

    Большинство DNS хостов предоставляют невидимое перенаправление в дополнение к обычному перенаправлению, вы можете найти необходимые настройки зайдя в свою учетную запись на DNS сервере.

    Многочисленные домены

    Если вам нужно чтобы, скажем, по адресам www.fresh-eggs.com и www.cage-free-chickens.com загружался один и тот же сайт, и при этом не происходило никакого перенаправления с www.cage-free-chickens.com на www.fresh-eggs.com или наоборот, вам нужно настроить свой хостинг на работу с несколькими доменами.

    Чтобы направлять многочисленные домены на один и тот же физический сайт, свяжитесь с представителем вашего хостинга и сообщите ему с каких доменных имен вы хотели бы иметь доступ к сайту. На большинстве хостинг-сервисов вы даже можете самостоятельно вписать доменные имена которые нужно направить на данный хостинг. А у хостинга нужно узнать его IP адрес, чтобы знать куда направлять запросы. Этот IP адрес нужно вписать в настройках ваших доменов на DNS сервере. Чтобы доменные имена заработали иногда нужно подождать до суток – пока все неймсервера перезагрузят таблицы соответствия.

    Услуга «Перенаправление домена» позволяет настроить правила и перенаправлять посетителя, обратившегося к доменному имени, на указанный вами интернет-адрес. Услуга поддерживает работу с любыми доменами. .

    В этой статье мы расскажем о настройках для работы с услугой.

    Настройка домена

    Услуга может работать только в том случае, если ваш домен делегирован. Для делегирования домена необходимы DNS-серверы, которые могли бы сообщить пользователям сети Интернет информацию о вашем домене (зоне). Таких серверов должно быть два или более.

    В услугу «Перенаправление домена» уже включена поддержка DNS . Если услуга заказывается на тот же договор, что и домен, то при заказе настройки производятся автоматически.

    Также вы можете самостоятельно указать DNS-серверы в зависимости от уровня домена, для которого заказана услуга перенаправления:

    ns3-fwl2.сайт
    ns4-fwl2.сайт
    ns8-fwl2.сайт

    ns3-fwl3.сайт
    ns4-fwl3.сайт
    ns8-fwl3.сайт

    ns3-fwl4.сайт
    ns4-fwl4.сайт
    ns8-fwl4.сайт

    ns3-fwl5.сайт
    ns4-fwl5.сайт
    ns8-fwl5.сайт

    Записи в файл зоны

    Если вы используете DNS-сервера, включенные в услугу «Перенаправление домена», то необходимые записи вносятся автоматически.

    При использовании своих DNS-серверов нужно внести в файл зоны домена на первичном DNS-сервере (primary) записи A. В рамках одной услуги перенаправления для самого домена и любого из его поддоменов необходимо указывать один и тот же IP-адрес.

    В зависимости от уровня домена, для которого заказана услуга перенаправления, записи A должны быть следующими:

    • для домена второго уровня, вида web-forward.ru :

      web-forward.ru. A 109.70.27.4

    • для домена третьего уровня, вида test.web-forward.ru :

      test.web-forward.ru. A 109.70.27.5

    • для домена четвертого уровня, вида forum.eng.web-forward.ru :

      forum.eng.web-forward.ru. A 109.70.27.6

    • для домена пятого уровня, вида www.forum.eng.web-forward.ru :

      www.forum.eng.web-forward.ru. A 109.70.27.7

    Настройка услуги «Перенаправление домена»

    Перенаправление можно включить для домена, всех его поддоменов, а также настроить до десяти индивидуальных правил перенаправления для конкретных поддоменов.

    Внести изменения в настройки услуги вы можете в Разделе для клиентов → Услуги → Просмотр и изменение данных .

    Для каждого правила перенаправления можно указать следующие параметры:

    1. Имя поддомена, для которого настраивается правило

    Необходимо указать поддомен , с которого будет осуществлено перенаправление. Можно указывать:

    • имя поддомена, для которого требуется настроить перенаправление. Допускается неограниченное количество уровней вложенности, но при этом длина записи, включая точки, не должна превышать 63 символа;
    • «*» (звездочку), если необходимо задать общее правило перенаправления. Такое правило будет действовать для любых поддоменов, для которых не настроены индивидуальные правила.

    2. Адрес перенаправления

    URL страницы, на которую автоматически будет перенаправлен посетитель.

    3. Способ перенаправления

    Вы можете выбрать один из следующих способов перенаправления:

    • Временное или постоянное перенаправление

    Временное перенаправление (код HTTP ответа «302 Moved Temporarily»). Код ответа HTTP 302 сообщает клиентским приложениям (в том числе поисковым системам), что сайт перемещен временно. Устанавливается по умолчанию.

    Постоянное перенаправление (код HTTP ответа «301 Moved Permanently»). Код ответа HTTP 301 говорит клиентским приложениям (в том числе поисковым системам), что сайт перемещен навсегда.

    В обоих случаях посетитель автоматически переходит на URL той страницы, на которую было осуществлено перенаправление. Выбор способа перенаправления (301, 302) на практике имеет значение только для поисковых систем.

    • Маскировка адреса во фрейме

    При таком способе перенаправления веб-страница будет находиться внутри фрейма. При всех переходах по ссылкам внутри фрейма в адресной строке браузера посетители будут видеть доменное имя, с которого была осуществлена переадресация. В качестве заголовка (title) страницы будет отображаться текст, указанный вами в настройках правила перенаправления.

    Если вы выбрали маскировку адреса во фрейме, то следует учитывать, что:

    • при установке ссылок внутри вашей веб-страницы на другие ресурсы, в теге ссылки необходимо указать target=_top . В противном случае чужая веб-страница также будет открыта внутри вашего фрейма, и посетитель будет видеть в окошке URL ваше доменное имя. Пример правильного написания ссылки для этого случая: RU-CENTER
    • истинный адрес веб-страницы, на которую осуществляется перенаправление, хотя и не отображается в строке URL, может быть легко вычислен любым посетителем.

    4. Опция «С сохранением пути» .

    При попытке обратиться к странице, размещенной на домене, для которого составляется правило, перенаправление произойдет на адрес перенаправления, к которому будет добавлен путь до этой страницы..web-forward.ru, то при обращении к странице dns.web-forward..