Суббота, 07.02.2026, 01:21 Приветствую вас Гость | Группа "Гости" 
Меню сайта

Категории раздела
ALD Pro [1]
AstraLinux [0]

Популярные статьи

Недавние темы

Опрос
Вы к нам ещё зайдёте?
Всего ответов: 429

Главная » Статьи » Linux » ALD Pro

Развертывание домена ALD Pro 2.4.2
Инструкция по установке контроллера домена ALDPro с использованием автоматического скрипта
Предварительные требования
Аппаратные требования:
Процессор: x86-64

ОЗУ: минимум 4 ГБ (рекомендуется 8 ГБ)

HDD: минимум 40 ГБ свободного места

Сетевой интерфейс: 1 Гбит/с

Программные требования:
Astra Linux 1.7.8 (x86-64)

Доступ к репозиториям Astralinux

Права root/sudo

Сетевые требования:
Статический IP-адрес (например: 10.40.4.20)

Шлюз (например: 10.40.4.1)

DNS-сервер

Имя домена (например: ald.inet)

Быстрый старт
Шаг 1: Подготовка системы
Установите чистую Astra Linux 1.7.8

Подключите систему к сети

Войдите с правами root:

bash

sudo -i
Шаг 2: Настройка параметров
Отредактируйте переменные в начале скрипта:

bash

GW_IP="10.40.4.1" # IP-адрес шлюза
GW_DNS="10.40.4.1" # DNS-сервер
DC_IP="10.40.4.20" # IP контроллера домена
DC_PASSWORD="пароль" # Пароль администратора домена
DOMAIN="ald.inet" # Имя домена
DC_NAME="dc01" # Имя контроллера домена
DC_MASK="24" # Маска подсети
Шаг 3: Запуск скрипта
bash

chmod +x install-aldpro.sh
./install-aldpro.sh
Процесс установки
Этап 1: Подготовка (автоматически)
Скрипт выполнит:

Отключение IPv6

Настройку статического IP

Обновление имени хоста

Настройку /etc/hosts

Перезагрузку системы

Этап 2: Установка (автоматически)
После перезагрузки скрипт продолжит:

Настройку репозиториев

Установку пакетов ALDPro

Настройку DNS

Установку контроллера домена

Финальную перезагрузку

Время установки
Подготовка: 2-3 минуты

Установка пакетов: 10-15 минут

Настройка домена: 5-10 минут

Итого: ~20-30 минут

Проверка установки
После установки проверьте:

1. Статус служб:
bash

systemctl status aldpro-*
2. Информация о домене:
bash

samba-tool domain info 127.0.0.1
3. Проверка DNS:
bash

nslookup dc01.ald.cektu.inet 127.0.0.1
4. Сетевые настройки:
bash

hostname
ip addr show
cat /etc/hosts
Устранение неполадок
Проблема: Нет доступа к репозиториям
Решение: Проверьте подключение к интернету:

bash

ping dl.astralinux.ru
Проблема: Ошибка установки пакетов
Решение: Проверьте источники:

bash

cat /etc/apt/sources.list
apt update
Проблема: DNS не работает
Решение: Проверьте настройки:

bash

cat /etc/resolv.conf
systemctl status aldpro-dns
Проблема: Домен не создается
Решение: Проверьте логи:

bash

tail -f /var/log/aldpro/install.log
journalctl -xe
Файлы конфигурации
После установки будут созданы:

text

/etc/hosts # Файл hosts
/etc/resolv.conf # Настройки DNS
/etc/samba/ # Конфигурация Samba/AD
/var/log/aldpro/ # Логи ALDPro
Безопасность
Рекомендуемые действия после установки:
Сменить пароль администратора:

bash

aldpro-administrator
Настроить брандмауэр:

bash

# Разрешить порты AD
ufw allow 53/tcp # DNS
ufw allow 88/tcp # Kerberos
ufw allow 389/tcp # LDAP
ufw allow 445/tcp # SMB
Настроить резервное копирование

Поддержка
Полезные команды:
bash

# Просмотр логов
journalctl -u aldpro-* -f

# Перезапуск служб
systemctl restart aldpro-*

# Проверка репликации
aldpro-syncer-status

# Управление пользователями
samba-tool user list

СКРИПТ

Код
#!/bin/bash

# Конфигурационные параметры
GW_IP="10.40.4.1"
GW_DNS="10.40.4.1"
DC_IP="10.40.4.20"
DC_USER="admin"
DC_PASSWORD="Passw0RDDDDD"
DOMAIN="ald.test"
DC_NAME="dc01"
DC_MASK="24"

# Проверка прав
if [[ $EUID -ne 0 ]]; then
echo "Этот скрипт должен запускаться с правами root. Используйте sudo." >&2
exit 1
fi

# Функция для логирования
log() {
echo "[$(date '+%Y-%m-%d %H:%M:%S')] $1"
}

# Сохраняем текущее имя хоста
CURRENT_HOSTNAME=$(hostname -s) # Только короткое имя без домена
log "Текущее имя хоста: $CURRENT_HOSTNAME"
log "Целевое имя хоста: ${DC_NAME}.${DOMAIN}"

# Проверка домена
CURRENT_DOMAIN=$(hostname -d 2>/dev/null || echo "")
if [ "$CURRENT_DOMAIN" != "$DOMAIN" ]; then
log "=== Этап 1: Подготовка системы перед присоединением к домену ==="

# Отключение IPv6
log "Отключение IPv6..."
cat >> /etc/sysctl.conf << EOF
net.ipv6.conf.all.disable_ipv6=1
net.ipv6.conf.default.disable_ipv6=1
net.ipv6.conf.lo.disable_ipv6=1
net.ipv6.conf.eth0.disable_ipv6=1
EOF
sysctl -p > /dev/null 2>&1

# Настройка сети через nmcli
log "Настройка сети..."

# Ищем активное соединение
ACTIVE_CONN=$(nmcli -t -f NAME,DEVICE con show --active | grep -v "^lo:" | cut -d: -f1 | head -1)

if [ -n "$ACTIVE_CONN" ]; then
log "Найдено активное соединение: $ACTIVE_CONN"
if [ "$ACTIVE_CONN" != "net1" ]; then
nmcli con mod "$ACTIVE_CONN" connection.id net1 2>/dev/null || \
nmcli con add type ethernet con-name net1 ifname eth0 2>/dev/null
fi
else
log "Создание нового соединения net1..."
nmcli con add type ethernet con-name net1 ifname eth0 2>/dev/null
fi

# Настройка параметров сети
nmcli con mod net1 \
ipv4.addresses "${DC_IP}/${DC_MASK}" \
ipv4.gateway "${GW_IP}" \
ipv4.method manual \
ipv6.method ignore \
connection.autoconnect yes 2>/dev/null

# Настройка DNS
nmcli con mod net1 ipv4.dns "${GW_DNS}" 2>/dev/null
nmcli con up net1 2>/dev/null

# Проверка сетевого подключения
log "Проверка сетевого подключения..."
if ping -c 2 -W 1 "${GW_IP}" > /dev/null 2>&1; then
log "Сетевое подключение установлено успешно"
else
log "Предупреждение: Не удается подключиться к шлюзу ${GW_IP}" >&2
log "Проверьте настройки сети вручную:"
log " ip addr show"
log " nmcli con show net1"
fi

# Обновление /etc/hosts - ПО НОВОМУ ФОРМАТУ
log "Обновление файла /etc/hosts по новому формату..."

# Backup оригинального файла
cp /etc/hosts /etc/hosts.bak.$(date +%Y%m%d_%H%M%S)

# Создаем новый файл /etc/hosts
cat > /etc/hosts << EOF
127.0.0.1 localhost.localdomain localhost
#127.0.1.1 $CURRENT_HOSTNAME - закомментировать или удалить строку с адресом локальной петли
${DC_IP} ${DC_NAME}.${DOMAIN} ${DC_NAME}
EOF

log "Содержимое нового /etc/hosts:"
cat /etc/hosts | while read line; do
log " $line"
done

# Устанавливаем hostname
log "Установка hostname..."
hostnamectl set-hostname "${DC_NAME}.${DOMAIN}"

# Применяем hostname без перезагрузки
hostname "${DC_NAME}.${DOMAIN}"

# Проверяем изменения
log "Текущее имя хоста после изменений: $(hostname)"
log "Текущий домен после изменений: $(hostname -d 2>/dev/null || echo 'не определен')"

log "Подготовка завершена. Перезагрузка через 10 секунд..."
log "После перезагрузки скрипт продолжит установку контроллера домена."
echo "Для отмены перезагрузки нажмите Ctrl+C в течение 10 секунд..."

sleep 10
reboot
exit 0
fi

log "=== Этап 2: Установка контроллера домена ALDPro ==="

# Проверка текущих настроек
log "Проверка текущих настроек:"
log " Имя хоста: $(hostname)"
log " Короткое имя: $(hostname -s)"
log " Домен: $(hostname -d 2>/dev/null || echo 'нет')"
log " IP-адрес: $(hostname -I | awk '{print $1}')"
log ""
log "Содержимое /etc/hosts:"
cat /etc/hosts | while read line; do
log " $line"
done

# Проверка доступности репозиториев
log "Проверка сетевого подключения..."
if ! ping -c 2 8.8.8.8 > /dev/null 2>&1; then
log "Ошибка: Нет доступа в интернет" >&2
exit 1
fi

# Настройка репозиториев
log "Настройка репозиториев..."
cat > /etc/apt/sources.list << EOF
deb https://dl.astralinux.ru/astra/frozen/1.7_x86-64/1.7.8/repository-base/ 1.7_x86-64 main contrib non-free
deb https://dl.astralinux.ru/astra/frozen/1.7_x86-64/1.7.8/repository-extended/ 1.7_x86-64 main contrib non-free
EOF

cat > /etc/apt/sources.list.d/aldpro.list << EOF
deb https://dl.astralinux.ru/aldpro/frozen/01/2.4.2 1.7_x86-64 main base
EOF

# Временный DNS (до установки AD)
log "Настройка временного DNS..."
cat > /etc/resolv.conf << EOF
search ${DOMAIN}
nameserver ${GW_DNS}
nameserver 8.8.8.8
options timeout:2 attempts:2
EOF

# Настройка DNS в сетевом соединении
nmcli con mod net1 ipv4.dns "${GW_DNS} 8.8.8.8" 2>/dev/null
nmcli con up net1 2>/dev/null

# Обновление и установка пакетов
log "Обновление списка пакетов..."
apt update

if [ $? -ne 0 ]; then
log "Ошибка обновления пакетов. Проверьте репозитории." >&2
exit 1
fi

log "Установка компонентов ALDPro..."
export DEBIAN_FRONTEND=noninteractive

# Проверка доступности пакетов
if ! apt-cache show aldpro-mp > /dev/null 2>&1; then
log "Ошибка: Пакет aldpro-mp не найден в репозиториях" >&2
exit 1
fi

apt install -y aldpro-mp aldpro-gc aldpro-syncer

if [ $? -ne 0 ]; then
log "Ошибка установки пакетов ALDPro" >&2
exit 1
fi

# Настройка DNS после установки (локальный DNS)
log "Настройка локального DNS..."
cat > /etc/resolv.conf << EOF
nameserver 127.0.0.1
search ${DOMAIN}
options timeout:2 attempts:2
EOF

nmcli con mod net1 ipv4.dns "127.0.0.1" 2>/dev/null
nmcli con up net1 2>/dev/null

# Установка контроллера домена
log "Запуск установки контроллера домена..."
log "Параметры:"
log " Домен: ${DOMAIN}"
log " Имя сервера: ${DC_NAME}"
log " Пароль администратора: ******"

# Выполняем установку контроллера домена
aldpro-server-install -d "${DOMAIN}" -n "${DC_NAME}" -p "${DC_PASSWORD}" \
--ip $DC_IP --no-reboot --setup_syncer --setup_gc

INSTALL_RESULT=$?
if [ $INSTALL_RESULT -ne 0 ]; then
log "Ошибка установки контроллера домена (код: $INSTALL_RESULT)" >&2
log "Проверьте логи: /var/log/aldpro/install.log" >&2
exit 1
fi

log "Установка контроллера домена успешно завершена!"
log ""
log "=== ПРОВЕРКА УСТАНОВКИ ==="
log "1. Проверьте содержимое /etc/hosts:"
cat /etc/hosts | while read line; do
log " $line"
done
log ""
log "2. Проверьте службы: systemctl status aldpro-*"
log "3. Проверьте домен: samba-tool domain info 127.0.0.1"
log "4. Проверьте сетевые настройки:"
log " - IP: $(hostname -I)"
log " - Hostname: $(hostname)"
log ""
log "Перезагрузка через 15 секунд для применения всех изменений..."
echo "Для отмены перезагрузки нажмите Ctrl+C в течение 15 секунд..."

sleep 15
reboot

exit 0
Категория: ALD Pro | Добавил: dolphin (Вчера)
Просмотров: 2 | Теги: ALD Pro | Рейтинг: 5.0/1

Всего комментариев: 0
avatar
Профиль



Поиск

Наша кнопка
Вирусология, взгляд из Delphi

Статистика
Top.Mail.Ru Яндекс.Метрика Счетчик тИЦ и PR
Статистика материалов
Файлов: 458
Форум: 1177/8153
Коментариев: 767
Новостей: 29

Статистика пользователей
Всего: 425
За неделю: 0
Вчера: 0
Сегодня: 0
Всего онлайн: 1
Гостей: 1
Пользователей: 0

delphicode.ru © 2008 - 2026 Хостинг от uCoz