- Цели
- Исходные данные
- Установка сервера
- Будем запускать сервер в изолированном окружении:
- Настройка опций сервера
- Безопасность
- Включение в конфигурацию новой доменной зоны
- Прямая доменная зона
- Обратная зона
- Запуск сервера и проверка работоспособности
- Клиенты
- Работа в ненулевых мандатных режимах
- Настройка сети в Astra Linux «Смоленск»
- Похожие посты:
Цели
Как обычно, если не указано иное, команды выполняются от имени пользователя root .
Исходные данные
Доменная зона | home.net |
Подсеть | 192.168.0/24 |
Имя основного сервера | dc.home.net |
IP-адрес сервера имен | 192.168.0.1 |
Имя первого хоста | arm01.home.net |
IP-адрес первого хоста | 192.168.0.101 |
Имя N-го хоста | armN.home.net |
IP-адрес N-го хоста | 192.168.0.(100+N) |
Установка сервера
Сервер установлен, но установка сделана не безопасным способом. Нужно выполнить несколько дополнительных действий, описанных подробнее в Debian Wiki — Bind.
Будем запускать сервер в изолированном окружении:
mkdir -p /var/bind9/chroot/ mknod /var/bind9/chroot/dev/null c 1 3 mknod /var/bind9/chroot/dev/random c 1 8 chmod 660 /var/bind9/chroot/dev/ mv /etc/bind /var/bind9/chroot/etc ln -s /var/bind9/chroot/etc/bind /etc/bind chown bind:bind /var/bind9/chroot/etc/bind/rndc.key chmod 775 /var/bind9/chroot/var/ chgrp bind /var/bind9/chroot/var/
Теперь нужно изменить расположение PIDFILE. Для этого в файле /etc/init.d/bind9 нужно переопределить переменную PIDFILE .
PIDFILE=/var/bind9/chroot/var/run/named/named.pid
Чтобы сервер понимал, что его запускают в изолированном окружении, нужно изменить параметры его запуска, внеся небольшие коррективы в файл /etc/default/bind9
OPTIONS="-u bind -t /var/bind9/chroot"
Перенастроим логирование rsyslog
echo "\$AddUnixListenSocket /var/bind9/chroot/dev/log" > /etc/rsyslog.d/bind-chroot.conf
Настройка опций сервера
Безопасность
Основные настройки сервера хранятся в файле /etc/bind/named.conf.options (на самом деле сейчас это всего лишь символическая ссылка, но на суть дела это не влияет). Добавим пару параметров для пущей безопасности в разделе options :
Включение в конфигурацию новой доменной зоны
В файле /etc/bind/named.conf.default-zones добавим указание на файлы прямой и обратной зоны, чтобы сервер мог обслуживать локальную сеть:
. zone "home.net" in < // Локальная сеть type master; file "/etc/bind/db.home.net"; // В этом файле будут адреса прямой зоны >; zone "0.168.192.in-addr.arpa" < // Так описывается обратная зона, т. е. первые три октета // записываются в обратном порядке и добавляется .in-addr.arpa type master; file "/etc/bind/db.0.168.192"; // В этом файле будут адреса обратной зоны >;
Прямая доменная зона
Ниже просто приведу содержимое файла /etc/bind/db.home.net .
$TTL 3h @ IN SOA dc.home.net. administrator.home.net. ( ; Вместо @ будет подставлено автоматически имя зоны из файла /etc/bind/named.conf.default-zones 2017092701 ; Это число нужно менять каждый раз при изменении этого файла ; Очень удобно взять текущее число и добавить ещё пару цифр для указания ревизии 3h ; 1h ; 1w ; 1h ) IN NS dc.home.net. ; Указываем имя основного DNS-сервера, обслуживающего зону ; Наличие пробела или табуляции в начале строки и точки ; после .net обязательно dc IN A 192.168.0.1 ; IP-адрес сервера имен imap IN CNAME dc ; Указываем, что наш DNS-сервер так же отзывается на imap.home.net smtp IN CNAME dc ; и smtp.home.net arm01 IN A 192.168.0.101 arm02 IN A 192.168.0.102 arm03 IN A 192.168.0.103 arm04 IN A 192.168.0.104 arm05 IN A 192.168.0.105 arm06 IN A 192.168.0.106 arm07 IN A 192.168.0.107 arm08 IN A 192.168.0.108 arm09 IN A 192.168.0.109 arm10 IN A 192.168.0.110
Обратная зона
Создадим файл, на который ссылается обратная зона, и заполним его по образцу:
$TTL 3h @ IN SOA dc.home.net. administrator.home.net. ( 2017092701 ; Это число тоже нужно менять 3h ; 1h ; 1w ; 1h ) IN NS dc.home.net. 1 IN PTR dc.home.net. ; Наш сервер 101 IN PTR arm01.home.net. 102 IN PTR arm02.home.net. 103 IN PTR arm03.home.net. 104 IN PTR arm04.home.net. 105 IN PTR arm05.home.net. 106 IN PTR arm06.home.net. 107 IN PTR arm07.home.net. 108 IN PTR arm08.home.net. 109 IN PTR arm09.home.net. 110 IN PTR arm10.home.net.
Запуск сервера и проверка работоспособности
Если всё сделано правильно, точки расставлены и IP-адреса указаны верно, можно попробовать запустить наш сервер:
Если вместо кучи ошибок сервер просто написал, что всё хорошо, можно проверить разрешение имен:
host arm01.home.net host 192.168.0.9
В обоих случаях сервер должен вернуть информацию о том, на что указывает доменное имя или IP-адрес. Если вместо этого он выдает сообщение об ошибке, самое время проверить корректность конфигурационных файлов. Это делается вызовом следующих несложных команд:
named-checkconf /etc/bind/named.conf named-checkzone home.net /etc/bind/db.home.net named-checkzone 192.168.0 /etc/bind/db.0.168.192
Данные утилиты из состава пакета bind9utils укажут на ошибки в конфигурационных файлах.
Клиенты
Существует несколько способов настроить обращение к DNS-серверу на клиентских машинах. По скольку речь идет об операционной системе для социальной группы ‘siloviki’, выбор инструментальных средств невелик — wicd , /etc/network/interfaces и /etc/resolv.conf .
Первый способ отметаем сразу же, поскольку с wicd довольно много проблем. Не буду останавливаться на них подробно, но обычно первое, что приходится делать на свежеустановленной системе — убрать его из автозагрузки:
service wicd stop chkconfig wicd off
Можно указать DNS-сервер в настройках сетевых интерфейсов, однако, в этом случае их нужно прописывать для каждого сетевого интерфейса, а я не люблю повторяться. В связи с этим просто откорректируем файл /etc/resolv.conf на клиентских машинах:
domain home.net search home.net nameserver 192.168.0.1
Работа в ненулевых мандатных режимах
В данном дистрибутиве реализована мандатная модель разграничения доступа, в том числе к сетевым сервисам. Чтобы обеспечить корректную работу демона named в режимах с мандатной меткой, отличной от нулевой, нужно добавить всего одну строчку в файл /etc/parsec/privsock.conf :
Настройка сети в Astra Linux «Смоленск»
Краткое руководство по настройке сетевого интерфейса и доступа по протоколу SSH, а также установке необходимых сетевых утилит в консольной версии ОС специального назначения Astra Linux Special Edition «Смоленск» версий 1.6 и 1.7.1
Для развёртывания серверов в консольной версии данной ОС в первую очередь необходимо настроить сетевой интерфейс. Для этого при входе в консоль необходимо выставить Integrity Level (уровень целостности) 63. В версии 1.6 он устанавливается принудительно, а в версии 1.7.1 его можно отключить, но в целях безопасности разработчики не рекомендуют его отключать.
Открываем файл /etc/network/interfaces
# sudo nano /etc/network/interfaces
и в конце файла дописываем параметры сети, например:
# Ethernet network interface auto eth0 iface eth0 inet static address 192.168.1.35 netmask 255.255.255.0 network 192.168.1.0 broadcast 192.168.1.255 gateway 192.168.1.1
Затем создадим файл /etc/resolv.conf
и прописываем адреса DNS-серверов, например:
После этого запускаем сетевой интерфейс eth0
Проверяем, применились ли изменения
и пропингуем что-нибудь, например yandex.ru
Если всё прописано правильно, то в консоли должны отображаться ответы.
Что касается сетевых утилит, то в версии 1.7.1 они устанавливаются автоматически. В версии 1.6 их можно выбрать при установке, отметив чекбокс на пункте Средства работы в сети
Если по каким-то причинам они не были установлены, тогда вставляем установочный диск или монтируем ISO-образ установочного диска в /mnt/cdrom/
# mount /home/user/iso/smolensk_image.iso /mnt/cdrom
и устанавливаем пакет net-tools
# sudo apt install net-tools
После установки пакета нам будут доступны различные сетевые утилиты, такие как ifconfig, netstat и другие.
Для использования утилит для работы с DNS типа nslookup и host устанавливаем пакет dnsutils
# sudo apt install dnsutils
Также, если по каким-либо не были установлены Средства удалённого доступа SSH, необходимо установить соответствующие пакеты
# sudo apt install openssh-server openssh-client ssh
В версии 1.6 пакет ssh необходимо установить в любом случае
Проверяем состояние запуска службы
Если она активна, значит всё установилось правильно. Теперь к машине можно подключаться с помощью ssh-клиентов.
Далее нам необходимо включить файрволл UFW. Для этого проверим статус запуска
Он должен показать статус inactive.
Для разрешения подключения по SSH включаем соответствующее правило
Теперь файрволл должен запуститься и загружаться вместе с системой.
Проверяем. Для этого перезагрузим систему. В версии 1.7.1 скомандуем
а в версии 1.6 запускаем команду
и ждём минуту, когда система начнёт перезагружаться.
После перезагрузки всё должно нормально работать.