Различия
Здесь показаны различия между двумя версиями данной страницы.
Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
wiki:динамический_днс_своими_руками [2014/05/19 12:30] [Настройка клиентской части] |
wiki:динамический_днс_своими_руками [2014/05/19 21:08] (текущий) [Ссылки] |
||
---|---|---|---|
Строка 57: | Строка 57: | ||
</code> | </code> | ||
Раз добавили, то в /etc/crontab будем использовать его. | Раз добавили, то в /etc/crontab будем использовать его. | ||
- | <note tip>Этот файл лучше править уже после настройки сервера.</note> | + | |
+ | ==== Настройка серверной части ==== | ||
+ | Настройка сервера имен заключается в прописывании домена и установке разрешения на обновления записей **A** доменных имен с динамическими IP. | ||
+ | Переходим в каталог bind. | ||
+ | <code bash> | ||
+ | cd /etc/bind/ | ||
+ | </code> | ||
+ | <code bash> | ||
+ | sudo nano dnskeys.conf | ||
+ | </code> | ||
+ | Вставляем туда текст и тело ключа, о котором упоминалось в предыдущем разделе. | ||
+ | <code bash> | ||
+ | key "dyndns.my" { | ||
+ | algorithm hmac-md5; | ||
+ | secret "тут тело ключа"; | ||
+ | }; | ||
+ | </code> | ||
+ | |||
+ | Добавляем в файл **/etc/bind/named.conf** строчку с указанием файла, где определен ключ. | ||
+ | <code bash> | ||
+ | include "/etc/bind/dnskeys.conf"; | ||
+ | </code> | ||
+ | Следующим шагом необходимо в файл **/etc/bind/named.conf.local** прописать доменную зону, которой мы оперируем. | ||
+ | <code bash> | ||
+ | zone "dyndns.my" { | ||
+ | type master; | ||
+ | allow-update {key dyndns.my;}; | ||
+ | file "/etc/bind/pri.dyndns.my"; | ||
+ | };</code> | ||
+ | Необходимо будет создать и файл /etc/bind/pri.dyndns.my с различными записями для домена. Он обычный, с минимально необходимым набором записей для функционирования домена, потому и нет необходимости рассматривать его в данной статье. | ||
+ | Рестартуем сервер имен для завершения и применения настроек. | ||
+ | <code bash> | ||
+ | sudo service bind9 restart | ||
+ | </code> | ||
+ | Теперь в каталог, предназначенный для веб страниц, помещаем очень простой скрипт на php. | ||
+ | <code bash> | ||
+ | sudo nano /var/www/ip.php | ||
+ | </code> | ||
+ | |||
+ | Вставляем туда код. | ||
+ | <code php> | ||
+ | <?php | ||
+ | echo $_SERVER["REMOTE_ADDR"]; | ||
+ | ?> | ||
+ | </code> | ||
+ | |||
+ | Если вы обратитесь к этому файлу через веб, к примеру, http://dyndns.my/ip.php, то, кроме своего IP адреса ничего не увидите. Что нам и требовалось. Клиент, с помощью curl, его и получает и обновляет информацию на сервере. | ||
+ | |||
+ | Вот и все телодвижения по настройке серверной части. | ||
+ | |||
+ | ==== Настройка заключительная ==== | ||
+ | |||
+ | Доделываем клиента. | ||
<code bash> | <code bash> | ||
sudo nano /etc/crontab | sudo nano /etc/crontab | ||
Строка 66: | Строка 118: | ||
</code> | </code> | ||
Это означает, что раз в 15 минут скрипт будет запускаться. | Это означает, что раз в 15 минут скрипт будет запускаться. | ||
- | На этом настройка клиентской части закончена. | + | На этом настройка клиентской части закончена. Можно подождать 15 минут и убедиться, что наш хости работает пингом со стороннего сервера. А можно и выполнить команду. |
+ | <code bash> | ||
+ | sudo ddns_update | ||
+ | </code> | ||
+ | Для чего, собственно, мы и делали симлинк в /usr/sbin. | ||
+ | Если вы не получили в ответ выхлоп со словом **REFUSED**, значит вы все сделали правильно и можете быть счастливы. | ||
- | ==== Настройка серверной части ==== | + | ===== Выводы ===== |
+ | На выходе мы получили вполне себе работающий сервис динамических имен. Есть, конечно, и существенный недостаток. Используемый ключ подходит для изменения любого поддомена из прописанных. Т.е., он один для всех. Это открывает простор для хулиганства, если кто-то упрет ключ. Поскольку, сервис делался для себя, то особых проблем это не вызовет. Ибо надо быть не совсем здоровым психически, чтоб хулиганить самому у себя. Возможно есть и решение, позволяющее каждый поддомен авторизовать по своему ключу, но целью данной статьи это не ставилось, потому гугля сильно и не терзалась. | ||
+ | |||
+ | Большая просьба, при перепечатке данной статьи, указывать источник, в частности, этот ресурс. | ||
===== Ссылки ===== | ===== Ссылки ===== | ||
- | * [[FIXME]] | + | * [[http://forum.ubuntu.ru/index.php?topic=244234.0|Обсуждение статьи на форуме]] |
- | {{tag>динамический_днс_своими_руками}} | + | {{tag>динамический_днс_своими_руками dns сеть}} |