Что нового?

Welcome to IT Системный Администратор и Игростроение

Присоединяйтесь к нам сейчас, чтобы получить доступ ко всем нашим функциям. Зарегистрировавшись и войдя в систему, вы сможете создавать темы, публиковать ответы в существующих темах, давать репутацию другим участникам, получать собственный личный мессенджер и многое другое. Это также быстро и совершенно бесплатно, так чего же вы ждете?

Задавать вопрос

Задавайте вопросы и получайте ответы от нашего сообщества

Ответы

Отвечайте на вопросы и станьте экспертом по своей теме

Связаться с нами

Специалисты готовы ответить на ваши вопросы

Установка своего DNS

Necron

Administrator
Команда форума
Регистрация
31 Янв 2024
Сообщения
7
Реакции
0
Баллы
1

Установка своего DNS

---------------- Немного теории -------------------------------------------

DNS-сервер, Domain name serverприложение, предназначенное для ответов на DNS-запросы по соответствующему протоколу. Также DNS-сервером могут называть хост, на котором запущено соответствующее приложение.

BIND (Berkeley Internet Name Domain, до этого: Berkeley Internet Name Daemon)открытая и наиболее распространённая реализация DNS-сервера, обеспечивающая выполнение преобразования DNS-имени в IP-адрес и наоборот. Исполняемый файл-демон сервера BIND называется named. BIND поддерживается организацией Internet Systems Consortium. 10 из 13 корневых серверов DNS работают на BIND, оставшиеся 3 работают на NSD.

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------

//зайти под рут
sudo -s

--------------------------------------------------------------------------------------

----
обновить пакеты----
sudo apt update
sudo apt upgrade


//установка DNC BIND сервера
sudo apt install bind9 bind9utils bind9-dnsutils bind9-doc bind9-host

--------------------------------------------------------------------------------------
// изменяем /etc/bind/named.conf.options для настройки DNS
sudo nano /etc/bind/named.conf.options

---------------- Немного теории -----------------
#Директива directory указывает на расположение в дереве каталогов временных файлов сервера
#Директива forwarders - на какие серверы пересылать запрос, если наш сервер сам не в состоянии определить имя или IP-адрес запроса клиентов.

dnssec-validation auto;

#Директива listen-on указывает на каких интерфейсах вести прослушивание 53 порта.

#DNSSEC — набор расширений IETF протокола DNS, позволяющих минимизировать атаки, связанные с подменой DNS-адреса при разрешении доменных имён. Он направлен на предоставление DNS-клиентам аутентичных ответов на DNS-запросы и обеспечение их целостности. При этом используется криптография с открытым ключом.
---------------------------------------------------------------------------------------------------------

//дальше настраиваем наши зоны это /etc/bind/named.conf.default-zones
sudo nano /etc/bind/named.conf.default-zones

zone "sv.boot" {type master;

file "/etc/bind/zone/db.sv.boot";

allow-update {any; };
// даем указание системе что динамически разрешаем обновлять данную зону
};

//проверка на ошибки
named-checkconf



//добавить путь к зонам
sudo mkdir путь где будет папка

----------------------------------

//копирование файлов примера в нашу папку с названием файла
cp /etc/bind/db.local /etc/bind/zone/db.boot
cp /etc/bind/db.127 /etc/bind/zone/db.192


----------------------------------

//редактируем файлы для зон
sudo nano /etc/bind/zone/db.boot


//@ IN SOA ns.boot. root.boot.
//
//переменная хранящая имя зоны @ = boot.
//начальная запись зоны. которая указывает местоположения эталонной записи о домене SOA
//имя первичного DNS-сервера зоны
//контактный адрес лица, ответственного за администрирование файла зоны root.boot.


$TTL 604800
@ IN SOA ns.boot. root.boot. (
2 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire

604800 ) ; Negative Cache TTL

;
@ IN NS ns.boot.
ns IN A 192.168.1.48
mys IN A 192.168.1.40
//название машины хранящейся в DNS

Image 4.jpg



//перезапуск сервиса bind9

service bind9 restart

//проверка логов на ошибки
journalctl -xe

--------если папка не находится в группе bind-------------
//выдача прав папке если мы создали новую

nano /etc/apparmor.d/usr.sbin.named

//добавить строчку ниже строки /etc/bind/** r,
путь к папке/** rw,

//перезапустить службу
service apparmor restart

----------------------------------------------------------

//разрешить доменное имя в ip adrres
sudo nano /etc/resolv.conf

//дописать или изменить
domain boot

//указать ip адрес сервера
nameserver 192.168.1.48

------------------------------------------------------------

//проверим прямую зону
nslookup boot

//прямая зона для другого сервера
nslookup next.boot

++++++++++++++++++++++++++++++++++

//настройка обратной зоны
sudo nano /etc/bind/zone/db.192


$TTL 604800
@ IN SOA ns.boot. root.boot. (
2 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
;

@ IN NS ns.boot.
48 IN PTR ns.boot.
40 IN PTR mys.boot.

Image 1.jpg


//48 IN PTR next.boot.
//48 последняя октета адреса то есть 48.1.168.192
//PTR это обратные записи
//и само доменное имя


//перезапускаем bind
service bind9 restart

//проверяем обратное имя
nslookup 192.168.1.48
 
Последнее редактирование:

Necron

Administrator
Команда форума
Регистрация
31 Янв 2024
Сообщения
7
Реакции
0
Баллы
1

DNS редактируем resolv.conf

//Установка resolvconf в Ubuntu
sudo apt update
sudo apt install resolvconf


//После завершения установки resolvconf systemd автоматически запустит и активирует resolvconf.service . Чтобы проверить, работает ли он, //выполните следующую команду.
sudo systemctl status resolvconf.service

//Затем откройте файл конфигурации /etc/resolvconf/resolv.conf.d/head
sudo nano /etc/resolvconf/resolv.conf.d/head

//и добавьте в него следующие строки
domain boot
nameserver 192.168.1.48


//Сохраните изменения и перезапустите resolvconf.service и systemd-resolved или перезагрузите систему
sudo systemctl restart resolvconf.service
sudo systemctl restart systemd-resolved.service


//проверка логов на ошибки
journalctl -xe

//Теперь, когда вы проверяете файл /etc/resolv.conf , записи сервера имен должны храниться там постоянно. Отныне у вас не будет проблем с //разрешением имен в вашей системе.
sudo nano /etc/resolv.conf
 
shape1
shape2
shape3
shape4
shape7
shape8
Сверху