Как настроить домен для своего сервера

Домашний хостинг сайтов с динамическим IP

У меня (как и у многих web-разработчиков) имеется с десяток сайтов которые необходимо где-то размещать (хостить).

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

В то-же время в наличии имеется:

  • Домашний сервер на Ubuntu
  • Быстрый ethernet-интернет от МТС

Но не имеется ключевого — статического IP. Если бы он был, то все было-бы намного проще и данную статью я бы точно не писал. А выдавать статический IP мой МТС абсолютно не желает (если только я не подключусь как бизнес-клиент).

Разумеется есть всем известные Dynamic DNS сервисы вроде noip.com, но они успешно решают лишь задачу удаленного доступа к нашему серверу (по SSH или FTP), но для хостинга совершенно нам не подходят, поскольку в настройках домена на DNS-сервере нам нужно обязательно прописать A-запись с реальным IP-адресом (а не ссылку на наш виртуальный домен).

Что делать?

Я не буду останавливаться на том, как настроить linux сервер (и тем более как его выбрать), поскольку предполагаю, что он у вас уже есть. Также я не буду подробно расписывать настройки nginx и Apache, поскольку опять-таки предполагаю, что вы с этим справитесь самостоятельно.

Первое с чем у меня возникли проблемы — это как перенаправить посетителей с моих доменов (у меня есть 2 домена) на мой домашний сервер. То есть чтобы клиент который набрал domain.com попал ровно на мой домашний сервер с учетом того, что на нем каждый день меняется IP-адрес.

Для решения нам нужно настроить DNS-сервер, а именно следующие записи: SOA, NS, MX, A, CNAME. Важно чтобы мы имели возможность настройкой TTL (time to live), поскольку время жизни наших записей должно быть очень небольшим, буквально 60-120 секунд. В противном случае при смене IP-адреса сервера пользователи долго не смогут попасть на наш сервер (из-за кеширования).

Итак, нам нужен DNS сервер, варианты решения:

  1. Используем сервисы которые предоставляют нам DNS-хостинг
  2. Используем собственный DNS-сервер в связке с DDNS-доменом

Рассмотрим оба варианта.

Используем сервисы которые предоставляют нам DNS-хостинг

Для этого есть ряд бесплатных сервисов, из которых самым популярным является freedns.afraid.org. На таких сервисах можно добавить свой домен(ы) и получить возможность через API обновлять у них A-запись при помощи небольшого скрипта.

Выглядит вполне неплохо, но подвох в том, что эти сервисы оставляют за собой право довешивать к вашему домену поддомены третьего уровня. То есть вы зарегистрировали у них user.ru, а они спокойно довешают свои сайты вида hello.user.ru, shop.user.ru и так далее. Разумеется от этого можно отказаться, но… за деньги. Платить деньги за такие сервисы смысла я не вижу, поскольку за сравнимые деньги вы можете купить полноценный хостинг на каком-нибудь провайдере без всяких плясок вокруг DNS настроек.

Остальные сервисы рассматривать не будем, а сосредоточимся на втором варианте.

Используем собственный DNS-сервер в связке с DDNS-доменом

Для этого варианта у нас, во-первых, должен быть DDNS-домен (который обновляется при смене IP), например, domain.ddns.net, а во-вторых, придется установить и настроить BIND на нашем сервере.

Всего необходимо сделать ровно 5 шагов. Везде под словами «domain» или «domain.ru» подразумевается ваше имя домена (короткое или полное).

1. Настроить 2 или 3 DDNS-поддомена

Почему 2 или 3? Потому, что ряд регистрантов не разрешит вам использовать домен только с одним NS-сервером. Самое обидно, что не все про это скажут — ваш домен просто не будет работать, но вы не будете понимать почему.

Тут все просто — идем на noip.com, там регистрируем аккаунт и добавляем 3 бесплатных поддомена (больше 3 не даст).

Читайте также:  Не работает датчик трима
2. Настраиваем собственный DNS-сервер

Создаем зоны (по одной зоне на каждый наш домен):

и собственно файл с настройками зоны:

Примечание: обращаю внимание, что TTL устанавливаем равным 60 секунд. В файле /etc/bind/named.conf.local добавляем подключение нашей зоны:

Все, рестартуем BIND:

И глянем /var/log/syslog чтобы там не было сообщений об ошибках

3. Настроить наш домен(ы)

Идем в панель управления регистратора и там в настройках нашего домена в качестве NS-серверов указываем созданные DDNS-поддомены:

После этого возможно придется подождать несколько часов (или даже сутки) пока настройки среплицируются между всеми серверами.

4. Настроить периодическое обновление IP-адресов

Мой роутер поддерживает обновление IP-адреса на одном домене, но мне нужно это делать сразу для 3-х доменов. Плюс нам надо обновлять IP-адрес в конфиге BIND’а, поэтому напишем скрипт который будет делать:

  1. Определять наш внешний IP-адрес
  2. Проверять изменился ли IP адрес, если не изменился, то ничего делать не надо
  3. Обновлять IP-адрес у всех DDNS-поддоменов через API сервиса noip.com
  4. Прописывать новый IP адрес в конфиг BIND’а
  5. Перезапускать BIND

Сам скрипт пусть будет на шелле:

Скрипт нужно запускать под рутом (чтобы ему хватило прав обновлять конфиги BIND’а и рестартовать его). Добавляем в crontab рута его запуск каждую минуту:

Пару слов про определение текущего IP-адреса. В скрипте выше это делается через резолвинг DDNS-поддомена domain.ddns.net. То есть сначала наш роутер его туда прописывает, а потом мы читаем. Это не очень хороший вариант, поскольку мы завязываемся на роутер и можем потерять несколько минут пока на DDNS-поддомене обновится IP-адрес на актуальный. Все это время наш сервер будет недоступен.

Поэтому у себя я использовал улучшенный вариант, который заодно не лазит в интернет:

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

5. Настройка роутера

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

  • HTTP — TCP, 80-ый порт
  • DNS — TCP+UDP, 53 порт

Вывод

Итак, что я получил в итоге:

  • Мои сайты живут на домашнем сервере, за который я никому не плачу;
  • Мои домены резолвятся через мой собственный DNS-сервер, время жизни записей 1 минута, то есть обновление происходит очень быстро;
  • В качестве NS-записей указаны не реальные IP-адреса (которые у меня часто меняются), а DDNS-поддомены;
  • Актуальность записей в DDNS-поддоменах и в конфиге моего DNS-сервера обеспечивается автоматически, без какого-либо вмешательства со моей стороны.

По моим замерам, когда МТС (мой провайдер) обновляет мне IP-адрес, то мои сайты начинают работать спустя где-то 2 минуты. Это вполне приемлемо для меня.

Источник

Как настроить доменное имя к своему серверу?

Как настроить доменное имя к своему серверу?

Продолжение статьи с моего портала blggr.ru

В предыдущей статье мы подробно рассказали, как создать свой web сервер и установить на него популярные CMS системы.
А теперь расскажем, как соединить свой сервер с доменным именем!

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

Нам понадобится купленное доменное имя, у которого необходимо настроить NS серверы на dns сервер, в котором вы сможете сделать собственные записи. Как правило во всех компаниях продающих доменные имена, имеется такая возможность. В настройках вашего домена пропишите NS адреса нужного вам сервера. Например, у регистратора REG.RU есть бесплатные dns серверы и инструкция . Но она подходит только тем, кто приобрел у них домен.

Если же у регистратора отсутствуют бесплатные dns сервисы, воспользуемся Яндекс.Коннект. Пропишем в настройках домена адреса днс серверов Яндекс. После этого можем переходить к следующему шагу.

На примере Яндекс.Коннект

Начнем с того, что авторизуемся в системе Яндекс.Коннект . Затем создадим новую организацию и укажем ей желаемое имя (может совпадать с названием домена). После небольшого приветствия, появится возможность добавить новый домен, что мы и сделаем.

После создания домена в Яндекс.Коннект , входим в админку, выбираем «управление DNS» , нажимаем добавить DNS-запись. Создадим запись типа «А» с такими параметрами, которые указаны на скриншоте. В значение записи введите ваш фиксированный ip адрес вашего домашнего сервера.

Что бы проверить , заработало или нет, нужно открыть командную строку windows (введите в меню пуск « cmd.exe «). После этого, в командную строку введите « ping мойсайт.ру «. Должна вернуться строка с ip адресом который был указан в настройках.

Читайте также:  Как настроить адреналин пс вита

Учтите, процесс смены dns адресов занимает 1-2 суток.

Настройка перенаправлений

Домашний Веб сервер работает на 80 порту , значит надо чтобы роутер перенаправлял этот порт на ip адрес вашего сервера. Настройка перенаправления портов отличаются на разных роутерах от модели к модели и от прошивки к прошивке! Поэтому ищите настройки с указанием вашей модели. Нюанс, эти настройки могут быть названы виртуальными серверами , перенаправлениями или переадресацией портов , port forwarding или mapping , проброс портов , firewall rules , настройка NAT и так далее… Но в целом, процес не сложный.

Проверка порта

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

Через локальную сеть ваш сайт не открывается, потому что, необходим локальный сервер dns . Поэтому можете настроить домашний DNS сервер, либо изменить файл hosts на домашнем компьютере. Hosts — это принудительные правила для компьютера, при конфликте они будут игнорировать внешние DNS серверы. Файл hosts на Windows 10 находится по адресу: C:\Windows\System32\drivers\etc , система может блокировать изменения непосредственно внутри папки, в таком случае измените его в другой папке и скопируйте обратно.

Измените hosts, в новой строке запишите локальный адрес веб сервера, пробел, доменное имя. Например, ваш фиксированный ip — 123.123.123.123 и ваш домен mysite.ru. Введите с новой строки :

После этого, ваш сайт должен открыться на вашем компьютере внутри вашей сети, а не только из вне. На этом настройка завершена, ну а если у вас остались вопросы или что то требует дополнительных разъяснений, встретимся в комментариях!

Источник

Как настроить домен для собственного сервера?

Все доброго времени суток, сразу оговорю, что в делегирование домена я чайник и делаю это в первый раз.
Вообщем, я имею. Роутер с внешним статистическим IP адресом 1.1.1.1 и внутри есть локальная сеть 10.102.10.1.
и есть 2 сервера с ВМ и сайты (делал не я) сайты все работают по доменным именам. Я решил создать свой сайт, на один из сервер установил ВМ и на неё поставил CentOS и установил панель управления под названием brainycp.
Ещё у меня есть своё домен ocdod74.ru, покупал у nic.ru. Помогите настроить, что б на мой сайт могли заходить по доменному имени. Даю вон некоторые данные, которые у меня есть:

Что вписывать на nic.ru?

что в панели управления?

  • Вопрос задан более трёх лет назад
  • 4575 просмотров

НИКОГДА не публикуйте свой IP! Сейчас набежит школие, которое будет Вас ломать.

Вам нужно либо купить у руцентра услугу Primary DNS, либо самому развернуть свой DNS. Если тяму на свой не хватает — купите, там будет типа панель управления, где можно создать запись типа A, в которой связать Ваше имя (домена) и нужный IP, а в управлении DNS-серверами указать «DNS-master»

Источник

Как привязать домен к VPS/VDS

Прикрепить домен к выделенному виртуальному серверу можно тремя способами. Самый простой — зарегистрировать домен на хостинге. В таком случае не потребуется никакая дополнительная настройка, нужные параметры будут установлены автоматически. Другой распространенный вариант — использовать бесплатные DNS-серверы регистратора. Если он их не предоставляет, то можно использовать сторонние DNS-серверы или поднять собственные DNS на VDS/VPS.

Регистрация домена на хостинге

Многие хостеры предоставляют услуги по регистрации доменов. Например, вы можете прикрепить одно или сразу несколько доменных имен прямо из панели управления VDS в Timeweb.

  1. Откройте панель управления сервером.
  2. Перейдите в раздел «Домены».
  3. Нажмите на ссылку «Зарегистрировать домен».
  4. Укажите в строке желаемое имя и выберите доменную зону.

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

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

Читайте также:  Что делать когда у планшета не работает клавиатура

После нажатия на кнопку «Зарегистрировать домен» вы станете его владел ьцем.

Использование DNS-серверов регистратора

Если хостер не предоставляет услуги регистрации домена или вы не хотите ими пользоваться, то прикрепите домен с помощью бесплатных DNS-серверов другого регистратора. Это один из самых распространенных способов. Покажу, как это делается, на примере сервиса Reg.ru, где у меня есть купленный домен.

  1. Зайдите в личный кабинет на сайте регистратора.
  2. Перейдите в раздел со списком доменов. На Reg.ru он называется «Показать домены».
  3. Откройте параметры домена и выберите раздел «Управление зоной». Название может отличаться, если вы пользуетесь услугами другого регистратора.
  4. В поле «DNS-серверы» выберите подходящие серверы. Например, я выбираю универсальный первый вариант. Другие серверы предназначены для подключения домена к хостингу Reg.ru и к VDS и серверам на Reg.ru, мне они не подходят, так как мой VDS в Timeweb.
  5. Подтвердите выбор DNS и вернитесь в раздел управления доменами.
  6. В поле «Ресурсные записи» нажмите «Добавить запись».
  7. Выберите тип записи A.
  8. В поле Subdomain укажите значок @.
  9. В поле IP-адрес укажите IP-адрес сервера и с охраните изменения.

Поддомены добавляются аналогичным образом — с помощью записи A. Только вместо значка @ вы указываете субдомен, например, www.

После изменения сервера NS домен будет недоступен в течение 3-24 часов. Это нормально. После обновления записей DNS доменом можно пользоваться.

Если регистратор не предоставляет инструменты для управления DNS-записями, то можно воспользоваться сторонними сервисами — например, Яндекс.Коннект. Но это не самый удобный способ, так как сначала придется подтвердить права на домен, делегировав его на сторонние DNS, и лишь после добавления в панель администратора Яндекс.Коннекта у вас появится возможность управлять зонами.

Читайте также

Создание DNS на своем VDS

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

Для создания собственных DNS-серверов потребуется одна из реализаций — например, BIND или PowerDNS. Они обеспечивают преобразование DNS-имени в IP-адрес и наоборот.

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

Создавать собственные DNS-серверы мы будем через панель управления ISPmanager через реализацию BIND. Это один из самых простых способов.

  1. Откройте веб-интерфейс панели управления.
  2. Перейдите в раздел «Настройки» и выберите «Возможности».
  3. Отметьте пункт «Сервер имен (DNS)» и нажмите «Изменить».
  4. Выберите BIND и примените изменения.

Если у вас нет пользователя, создайте его.

  • В разделе «Учетные записи» выберите пункт «Пользователи».
  • Нажмите на кнопку «Создать».
  • Придумайте логин и парол ь.
  • Можно также автоматически создат ь FTP-пользователя и почтовый домен или пропустить эти настройки сейчас.
  • Завершите создание пользователя.

Теперь нужно указать новые серверы имен и IP-адреса для них.

  1. В разделе «Домены» выберите пункт «Доменные имена».
  2. Нажмите на кнопку «Настройки».
  3. В поле «Серверы имен» добавьте два DNS-сервера: ns1.example.ru. и ns2.example.ru. Вместо example.ru укажите свой домен.
  4. Добавьте почту администратора.
  5. Укажите IP-адреса для серверов имен: основной и дополнительный.
  6. Нажмите «ОК» для сохранения изменений.

Следующий шаг — создание домена.

  1. Откройте раздел «Доменные имена» и нажмите «Создать».
  2. Введите доменное имя и выберите локальный IP-адрес. Серверы имен подставятся автоматически. Сохраните изменения.
  3. В разделе «Доменные имена» нажмите на кнопку «Записи».
  4. Найдите записи ns1.example.ru. и ns2.example.ru. Это и есть записи, которые нужно указывать в настройках домена в качестве DNS-серверов.

После настройки DNS-серверов вам останется только прописать их для основного домена в личном кабинете регистратора. Для этого можно воспользоваться инструкцией из второго раздела этой статьи.

Поиск DNS

DNS-записи обновляются в течение нескольких часов. Чтобы сразу убедит ься в том , что все настроено верно, используйте инструменты проверки DNS — например, intoDNS . Укажите доменное имя и нажмите на кнопку Report. Через несколько секунд появится таблица с IP-адресом сервера, к которому подключен домен. Если в отчете указан верный DNS, то просто подождите, пока записи обновятся. Домен привязан к серверу!

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

Источник

Оцените статью