Данная статья призвана помочь вам быстро установить почтовый сервер TEGU Enterprise в минимальной конфигурации, однако она не исключает необходимость прочтения всей документациивсей документации
TEGU Enterprise представляет собой один скомпилированный файл, который умеет работать и запускаться абсолютно на всех современных операционных системах Linux основанных на systemd, а так же нет каких-либо зависимостей от системных библиотек.
Все данные TEGU (конфигурация, временные данные, письма, адресные книги и события календарей) Enterprise хранит в СУБД.
По умолчанию должно быть создано три базы:
Хранения конфигурации.
Хранения очередей SMTP.
Хранения данных (почтовых сообщений, календарей, адресных книг и пр.).
TEGU Enterprise нигде не хранит (и не синхронизирует) учетные данные пользователей, а ретранслирует запросы к службе каталогов (а значит не позволяет скомпрометировать пароли). В качестве серверов каталогов может выступать Microsoft Active Directory, ALD Pro, FreeIPA, OpenLDAP в неограниченном кол-ве. Как следствие, TEGU Enterprise не вносит изменения в LDAP, в том числе, не меняет пароли учётных записей.
TEGU Enterprise может быть интегрирован с любым антивирусным/антиспамовым ПО по протоколу Milter или SMTP-relay.
Запросите тестовую лицензию TEGU (30-тидневная лицензия предоставляется в день обращения. Если вы выполните подготовительные действия заранее, то получите больше времени для тестирования TEGU).
Часть параметров (известных вам) необходимо настроить перед установкой сервера. В процессе настройки вы получите дополнительные параметры (сертификат DKIM, ресурсные записи для автонастройки клиентов etc), которые необходимо будет настроить в финале.
Запись SOA (Start of Authority) - Описывает основные/начальные настройки зоны. Для каждой зоны должна существовать только одна запись SOA, и она должна быть первая.
Записи NS (name server) - Указывают сервера, на которые делегирован данный домен. (как правило, они уже присутствуют когда вы заказываете интернет домен у хостера)
Проверка записей NS:
$ host -t ns tegu.online tegu.online name server ns4-cloud.nic.ru. tegu.online name server ns4-l2.nic.ru. tegu.online name server ns8-cloud.nic.ru. tegu.online name server ns3-l2.nic.ru. tegu.online name server ns8-l2.nic.ru.
Запись A (address record) - Отображает имя хоста (доменное имя) на адрес IPv4. Для каждого сетевого интерфейса машины должна быть сделана одна A-запись.
Проверка записей CNAME:
$ host mail.tegu.online
mail.tegu.online has address 79.137.210.127
Записи MX (mail exchange) - Указывают хосты для доставки почты, адресованной домену. (пожалуй самая главная запись, без которой работа почтовой системы невозможна)
Проверка записей MX:
$ host -t mx tegu.online
tegu.online mail is handled by 10 mail.tegu.online.
Запись TXT для DKIM - механизм, позволяющий проверить является ли отправитель достоверным или нет. Проверка осуществляется с помощью цифровой подписи, публичная часть которой находится в DNS соответствующей зоны. DKIM защищает от отправки сообщения с подменой адреса отправителя.
Запись TXT для DMARC - механизм снижения количества спамовых и фишинговых писем. DMARC описывает действие, которое должен совершить сервер для писем, которые не прошли проверку DKIM и SPF. А также описывает адрес, на который раз в сутки будет отправляться отчет об этих действиях.
Обратная зона DNS - это особая доменная зона, которая позволяет совершить обратное разрешение доменных имен относительно IP-адресов. Для обратной зоны фактически разрешена только запись одного типа А, называемая PTR.
Важно — перед тем как настраивать почтовый сервер, необходимо запросить у своего провайдера прописать PTR запись, в противном случае вы рискуете скомпрометировать и доменное имя, и свой IP-адрес во время начального общения с другими почтовыми серверами. Восстановление может занять весьма значительное время.
Крайне не рекомендуется использование утилиты PgBouncer.
В силу специфики работы Postgres (PG активно забирает, но самостоятельно не возвращает ресурсы операционной системе) установка СУБД и TEGU Enterprise на одной вычислительной ноде не рекомендуется и не поддерживается.
Соблюдая описанные выше требования, на отдельной ноде установите выбранный вами СУБД Postgres удобным для вас способом, способом, рекомендованным вендором вашей ОС, вендором вашей Postgres или воспользуйтесь нашими инструкциями для установка PostgreSQL для следующих ОС:
При установке OS выберете самую низкую защиту и откажитесь от установки графической оболочки
На момент написания статьи устанавливается Postgres 15
Переключитесь на пользователя root
sudo su -
Настройте и установите системную локаль по умолчанию
dpkg-reconfigure locales
выбирете ru_RU.UTF-8
Настройте часовой пояс
timedatectl set-timezone Europe/Moscow
Отредактируйте файл /etc/apt/sources.list
Пример файла /etc/apt/sources.list для ОС Astra Linux Special Edition 1.8
deb https://dl.astralinux.ru/astra/stable/1.8_x86-64/main-repository/ 1.8_x86-64 main contrib non-free non-free-firmware
deb https://dl.astralinux.ru/astra/stable/1.8_x86-64/extended-repository/ 1.8_x86-64 main contrib non-free non-free-firmware
deb https://download.astralinux.ru/astra/stable/1.8_x86-64/repository-main/ 1.8_x86-64 main contrib non-free
deb https://download.astralinux.ru/astra/stable/1.8_x86-64/repository-extended/ 1.8_x86-64 main contrib non-free
# TYPE DATABASE USER ADDRESS METHOD
# "local" is for Unix domain socket connections only
local all all peer
# IPv4 local connections:
host all all 127.0.0.1/32 md5
# IPv6 local connections:
host all all ::1/128 md5
# Allow replication connections from localhost, by a user with the
# replication privilege.
local replication all peer
host replication all 127.0.0.1/32 md5
host replication all ::1/128 md5
host all all 10.199.199.0/24 md5
host all all 10.44.44.0/24 md5
host all all 10.0.0.0/8 md5
Раскомментируйте в конфигурационном файле postgresql.conf port 5432 и ip адрес с которого можно подключиться к базе данных.
listen_addresses = '*' # what IP address(es) to listen on;
# comma-separated list of addresses;
# defaults to 'localhost'; use '*' for all
# (change requires restart)
port = 5432 # (change requires restart)
для ванильной версии postgres
nano /var/lib/pgsql/data/postgresql.conf
или так
nano /etc/postgresql/15/main/postgresql.conf
для версии pro
nano /var/lib/pgpro/std-14/data/postgresql.conf
После правок в конфигурационных файлах, перезапустите СУБД.
Посмотреть пользователей Postgres c дополнительнй информацией
SELECT *
FROM pg_user;
Проверить привилегии и роли для конкретного пользователя
SELECT *
FROM information_schema.role_table_grants
WHERE grantee = 'имя_пользователя';
Просмотр списка всех ролей, к которым принадлежит пользователь
SELECT r.rolname
FROM pg_roles r
JOIN pg_auth_members m ON r.oid = m.roleid
JOIN pg_roles r2 ON r2.oid = m.member
WHERE r2.rolname = 'имя_пользователя';
Просмотр списка баз данных, к которым имеет доступ пользователь
SELECT datname
FROM pg_database
WHERE has_database_privilege('имя_пользователя', datname, 'CONNECT');
Проверка привилегий для конкретного пользователя
SELECT grantee, table_name, privilege_type
FROM information_schema.table_privileges
WHERE grantee = 'имя_пользователя';
Удалить пользователей Postgres
DROP USER имя_пользователя;
Как проверить подключение к серверу баз данных
psql -U tegu -d tegu_settings -h 172.16.10.2 -p 5432 -W
-U (имя пользователя
-d (имя базы данных)
-h (хост сервера базы данных)
-p (порт)
-W (пароль)
Коммерческая или тестовая лицензия TEGU ENTERPRISE (лицензионный ключ).
Перед началом установки TEGU убедитесь, что на вашей ОС правильно настроена локаль, часовой пояс, а также не установлен сервер Postfix. Как это сделатьКак это сделать
Postfix или какой-либо другой почтовый сервер необходимо удалить т.к. он будет занимать требуемые порты.
В Debian это можно сделать так:
Проверить
systemctl status postfix
Удалить
apt purge postfix
Настройка и установка системной локали по умолчанию.
dpkg-reconfigure locales
Для настройки локали выбирете
ru_RU.UTF-8
Установка, настройка и изменение часового пояса выбирете
timedatectl set-timezone Europe/Moscow
Перед установкой обратите внимание, что все работы необходимо выполнять от имени root.
Проверьте правильность создания каталогов и файлов, а также их прав
$ ls -l /opt/tegu
drwxr-x--- 2 root mail 4096 апр 11 14:32 bin
drwxr-x--- 2 mail mail 4096 апр 11 14:32 certs
drwxr-x--- 2 mail mail 4096 апр 11 14:32 data
drwxr-x--- 2 root mail 4096 апр 11 14:33 sbin
Для запуска и управления сервером создайте файл /etc/systemd/system/tegu.service со следующим содержание
[Unit]
Description=Tegu. MBK-Lab Mail Server
[Service]
ExecStart=/opt/tegu/sbin/tegu
User=mail
Group=mail
UMask=0007
RestartSec=10
Restart=always
[Install]
WantedBy=multi-user.target
Разрешите запуск сервера от имени непривелегированного пользователя
Во время первого запуска сервер будет искать свой файл конфигурации в следующем порядке:
• /etc/tegu.conf • ~/tegu.conf (например, /var/mail/tegu.conf)
Если файл не был найден, то он будет создан по пути ~/tegu.conf
Для подробного логирования работы сервера измените значение параметра
debug = true
Значение параметра adminPassword используйте для регистрации в административном веб-интерфейсе (с логином admin).
Важно - сразу сменить пароль администратора для обеспечения безопасности.
Разрешаем автозапуск сервера во время загрузки ОС:
$ systemctl enable tegu.service
Эта команда создает символическую ссылку на копию файла сервиса в /etc/systemd/system/tegu.service в точке на диске, где systemd ищет файлы для автозапуска, а также обновляет конфигурацию systemd.
Помните, что вы должны обновлять конфигурацию systemd всякий раз, когда меняете конфигурацию в файле /etc/systemd/system/tegu.service. Обновление выполняется командой sudo systemctl reload tegu.service.
Запускаем сервер (вручную):
$ systemctl start tegu.service
Контролируем запуск сервиса (статус сервиса):
$ systemctl status tegu.service
Правильно работающий сервер возвращает примерно такое:
● tegu.service - Tegu. MBK-Lab Mail Server
Loaded: loaded (/etc/systemd/system/tegu.service; enabled; vendor preset: enabled)
Active: active (running) since Mon 2022-04-11 13:58:09 MSK; 50min ago
Main PID: 88519 (tegu)
Tasks: 9 (limit: 9357)
Memory: 3.3M
CGroup: /system.slice/tegu.service
└─88519 /opt/tegu/sbin/tegu
апр 11 13:58:09 systemd[1]: Started Tegu. MBK-Lab Mail Server.
Если все предыдущие шаги выполнены правильно, то вам становится доступной веб-панель администрирования сервером, в которой производятся все остальные настройки. На этом установка сервера завершена.
Управление сервером TEGU осуществляется с помощью веб-интерфейса, доступного на порту 8888. Откройте браузером сслыку: http://<адрес вашего сервера>:8888
Сервер TEGU хранит свои настройки не в конфигурационных файлах, а в СУБД. Следовательно, сначала необходимо указать базу данных для хранения конфигурации. В первоначально установленном сервере этот диалог открывается автоматически.
В диалоге /Настройки/База параметров/Настройки заполните вашими данными следующие поля:
Тип БД параметров: PostgreSQL
Адрес сервера: <адрес сервера СУБД>
Порт сервера: 5432
Имя базы данных: tegu_settings
Имя пользователя: tegu
Пароль: <пароль пользователя tegu на СУБД>
Максимальное количество одновременных подключений: 220
После сохранения почтовый сервер перезапустится и вы попадете в полнофункциональный веб-интерфейс.
NFR (тестовая) лицензия предназначена для ознакомления с программным продуктом TEGU Enterprise на собственном оборудовании (on-premise). Тестовая лицензия предоставляется бесплатно, однократно и имеет 30-дневный период действия. Для получения заполните форму
Базовые настройки задаются в диалоге /Настройки/Основные
Смысл указанных опций интуитивно понятен. Более подробно читайте в статье Администрирование сервера Часто встречающаяся ошибка на данном этапе - использование в поле "Имя сервера" имени ноды на которой установлен сервер. Необходимо указывать имя, используемое в DNS. К примеру: mail.tegu.online
TEGU хранит временную информацию (очереди, кеши etc) в СУБД. Следовательно, необходимо настроить базу данных очередей. Более того, без настройки очередей 25-й порт сервера не будет активным.
Подключите базу данных очередей в диалоге /Настройки/Очередь SMTP/Настройки
Заполните следующие поля:
Тип очереди: PostgreSQL
Адрес сервера: <адрес сервера СУБД>
Порт сервера: 5432
Имя базы данных: tegu_queue
Имя пользователя: tegu
Пароль: <пароль пользователя tegu на СУБД>
Максимальное количество одновременных подключений: 5
Утилита ldapsearch позволит нам правильно найти и прописать все настройки. Перейдем в консоль почтового сервера и в командной строке проверим правильность будущего подключения.
Если у вас нет утилиты ldapsearch, то установите пакет ldap-utils примерно такой командой:
• Почтовый сервер может обратиться к LDAP серверу ldap://10.44.44.16:389 с логином BindDN: cn=admin,dc=tegu,dc=online и вашим паролем; • Определена область поиска BaseDN dc=tegu,dc=online ; • Определено поле Attr for mailbox e-mail = mail ; • Определено поле Attr for mailbox quota (value in MB) = facsimileTelephoneNumber.
Поле Provider Name - любой текст, означающий имя подключения;
Local Domain Name - имя домена (а не сервера т.е. то, что в email-адресе следует после @);
LDAP server connection URI - найденный и проверенный выше пусть к серверу;
BindDN - логин;
Password - пароль;
BaseDN - найденный выше фильтр поиска.;
Atr for mailbox e-mail - название поля, которое в LDAP заполнено email-адресом пользователя (важно! с доменным суффиксом);
Atr for mailbox quota - название поля, которое в LDAP используется для определения квоты.
Сейчас поле BindDN прописано в формате UPN - user@realm.com так как мы используем OpenLDAP. Такой вариант работает и с Microsoft AD, но если вы в качестве сервера каталогов используете FreeIPA или ALD Pro, то BindDN должен быть полным DN (uid=user,ou=org_unit,dc=domain,dc=com)
Вы можете просмотреть атрибуты в Active Directory
с помощью графического интерфейса с помощью оснасток "Active Directory - пользователи и компьютеры"
(после включения "Дополнительных функций") и "Центр администрирования Active Directory",
а также с помощью командлета PowerShell Get-ADUser, Get-ADComputer или Get-ADGroup
1. Операционная система: Astra Linux Special Edition 1.7.8 2. 4 CPU. 2. 8 Гб оперативной памяти. 3. 50 Гб дискового пространства SSD.
Рекомендации во время установки: Установите операционную систему с графическим окружением и максимальным уровнем защищенности «Смоленск».
1. Настройки сети пропустить. 2. Имя компьютера оставить по умолчанию «astra», домен не указывать. 3. Локальный администратором укажите пользователя «localadmin. 4. Разметка диска «Авто – использовать весь диск и настроить LVM», схема разметки «Все файлы в одном разделе». 5. Версию ядра оставьте «6.1-generic» по умолчанию. 6. Из пакетов программ по умолчанию исключите, «Средства работы с графикой», но добавьте «Средства удаленного подключения SSH». 7. При выборе дополнительных параметров укажите уровень защищенности «Смоленск» и оставьте включенными флажки «Мандатный контроль целостности» и «Мандатное управление доступа». В тестовых средах для удобства работы можно отключить флажок «Запрос пароля для команды sudo».
Настройка сетевого интерфейса
Для установки пакетов нужно, чтобы сервер имел доступ к репозиториям, расположенным по адресу https://dl.astralinux.ru
Если операционная система установлена с графическим интерфейсом fly-wm, то в качестве менеджера сетевых подключений устанавливается служба NetworkManager. На серверах ее нужно отключить:
После выполнения последней команды в терминале должна отобразиться информация о маскировке службы NetworkManager:
o NetworkManager.service
Loaded: masked (Reason: Unit NetworkManager.service is masked.)
Active: inactive (dead) since Tue 2024-10-29 18:16:15 MSK; 3min 35s ago
Main PID: 493 (code=exited, status=0/SUCCESS)
...
После отключения службы NetworkManager сетевые настройки задаются в файлах /etc/network/interfaces и /etc/resolv.conf. Файл resolv.conf используется DNS-клиентом, а файл interfaces – утилитами ifup и ifdown для конфигурирования сетевых интерфейсов.
Так как служба каталога интегрирована со службой разрешения имен, то контроллер домена выступает еще и в роли DNS-сервера. Адреса DNS-серверов устанавливаются на доменных компьютерах вручную или через DHCP. Поэтому на контроллерах домена рекомендуется использовать только статические IP-адреса. Отредактировать файл конфигурации можно с помощью редактора nano:
sudo nano /etc/network/interfaces
Пример настройки сетевого интерфейса на контроллере домена для использования статического IP-адреса:
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet static
address 10.199.199.64
netmask 255.255.255.0
gateway 10.199.199.1
Для применения новых настроек, необходимо перезапустить службу Networking:
sudo systemctl restart networking
Для возможности обращения к публичным репозиториям следует настроить функцию разрешения имен. В файле /etc/resolv.conf рекомендуется указать бесплатный сервер разрешения имен от Яндекс:
sudo nano /etc/resolv.conf
Изменить содержимое файла:
nameserver 77.88.8.8
После установки настроек необходимо проверить подключение к репозиториям ALSE:
ping -c 4 dl.astralinux.ru
Настройка имени хоста.
Изменение имени хоста рекомендуется делать с помощью утилиты hostnamectl:
В имени хоста можно использовать буквы латинского алфавита [a-z] в нижнем регистре, цифры [0-9], точку [.] и дефис [-]. Имя хоста задается в формате полного имени FQDN ( от Fully Qualified Domain Name), например, dc-1.test.tegu.online, поэтому команда hostname без параметров должна выдавать полное имя. Данное правило касается имен всех машин домена.
Для того чтобы имя контроллера всегда могло быть преобразовано в IP-адрес вне зависимости от доступности DNS-службы, содержимое файла /etc/hosts должно быть:
В начало файла нужно добавить строку со статическим IP-адресом контроллера, полным и коротким именем хоста. Полное имя должно быть указано перед коротким, чтобы оно считалось каноническим и возвращалось командой hostname -f, что требуется для корректной работы скриптов автоматизации.
Подключение репозиториев.
Разработчиками ОС Astra Linux рекомендовано использовать репозитории из ветки stable, которые соответствуют последней версии системы, но для корректной работы продукта ALD Pro требуется использовать репозитории frozen, чтобы гарантировать полную совместимость пакетов. Информация о поддержке очередных обновлений и возможности обновления ОС публикуется в Release Notes.
Для корректных установки и обновления ALD Pro необходимо задействовать репозитории main и update (при его наличии) от ОС Astra Linux, отключив репозитории base.
Для установки продукта из официальных интернет-репозиториев РусБИТех-Астра на ОС ALSE 1.7.xxx файл /etc/apt/sources.list должен содержать:
Пример для 1.7.8:
deb http://dl.astralinux.ru/astra/frozen/1.7_x86-64/1.7.8/repository-main 1.7_x86-64 main non-free contrib
deb http://dl.astralinux.ru/astra/frozen/1.7_x86-64/1.7.8/repository-update 1.7_x86-64 main contrib non-free
Для установки продукта ALD Pro 3.1.0 из официальных интернет-репозиториев РусБИТех-Астра нужно создать дополнительный файл /etc/apt/sources.list.d/aldpro.list и добавить в него следующую строку:
deb https://dl.astralinux.ru/aldpro/frozen/01/3.1.0/ 1.7_x86-64 main base
Настройка приоритетов пакетов.
о умолчанию для всех пакетов, находящихся в репозиториях, приоритет P=500. Переопределить приоритет по умолчанию можно с помощью конфигурационных файлов в директории /etc/apt/preferences.d
В системе Astra Linux уже есть один такой конфигурационны файл, устанавливающий приоритет 900 для пакетов релиза 1.7_x86-64:
Перестраивать индекс после настройки приоритетов не требуется. Необходимо проверить, нет ли пакетов, доступных для обновления, и обновить систему, если таковые будут обнаружены:
DEBIAN_FRONTEND — переменная окружения, которая позволяет изменить режим взаимодействия с пользователем при установке пакетов менеджером APT. Переключение менеджера пакетов в режим noninteractive позволяет избежать уточнений о настройках для последующей работы от Kerberos, OpenDNSSec и PAM;
-y — ключ позволяет автоматически ответить Да на все возможные вопросы в ходе установки;
-q — ключ позволяет скрыть сообщения о прогрессе установки, делая журнал более читаемым;
aldpro-mp — основной инсталляционный пакет ALD Pro, который позволяет через зависимости установить все остальные пакеты продукта, за исключением пакетов глобального каталога и модуля синхронизации.
При возникновении ошибок, информация о них записывается в журнал пакетного менеджера в файле /var/log/apt/term.log. Для просмотра используется следующая команда:
sudo grep 'error:' /var/log/apt/term.log
Повышение роли сервера до контроллера домена.
При установке контроллера домена на сервер, на котором включен режим замкнутой программной среды, перед запуском скрипта продвижения домена необходимо выполнить перезагрузку сервера.
Повышение роли сервера до контроллера домена.
Повышение роли сервера до КД выполняется командой:
-d (--domain) — имя домена;
-n (--name) — имя сервера. В параметре нужно передать короткое имя сервера без указания домена, т.е. первый компонент от полного FQDN-имени, которое выдает команда hostname -f;
-p (--admin_pwd) — получить пароль администратора домена из командной строки (небезопасно).
Пароль всегда должен быть экранирован одинарными кавычками, для возможности использовать в пароле спецсимволов например: 'P@$$word'
--ip — IP-адрес КД, на котором предполагается обслуживать клиентов.
--no-reboot — ключ отключает автоматическую перезагрузку после завершения процедуры настройки.
Мы рекомендуем запускать перезагрузку вручную после ознакомления с журналом установки.
Данная процедура выполняется ориентировочно около 10 минут, ни в коем случае процесс не прерывать.
После окончания выполнения продвижения не должно быть никаких ошибок, этим подтвержается успешная установка контроллера домена.
Для вступления изменений в силу необходимо перезагрузить сервер:
sudo reboot
После перезагрузки сервера войти в систему можно, используя УЗ администратора:
login: admin
password: *** в нашем случае (пароль администратора домена из строки продвижения сервера) - P@$$word
Внимание
Важно помнить, что корректный вход в систему возможен только после полной загрузки всех служб. Если после перезагрузки сервера не удалось войти в операционную систему контроллера под доменной учетной записью, стоит повторить попытку через пару минут. Если доступ для доменного пользователя так и не появится, необходимо войти в систему с помощью локальной учетной записи и проверить содержимое журналов /var/log/auth.log и /var/log/messages.
Проверить статус доменных служб после загрузки сервера командой status утилиты aldproctl:
Утилита поддерживает такой же набор команд start/stop/restart/status.
Дополнительные настройки DNS
Для корректной работы сервера необходимо отключить DNSSEC, присвоив значение no параметру dnssec-validation в файле /etc/bind/ipa-options-ext.conf.
Особенностью настроек службы bind9-pkcs11 по умолчанию является запрет на обработку рекурсивных DNS-запросов от клиентов, находящихся за пределами той же подсети, в которой находится сам DNS-сервер. Сделано это для предотвращения DDoS-атак с DNS-усилением, но эта защита не актуальна для контроллеров домена, которые работают в закрытом периметре, поэтому в файле ipa-options-ext.conf рекомендуется задать также значение any для параметров allow-recursion и allow-query-cache или определить в файле /etc/bind/ipa-ext.conf список доверенных сетей.
Содержимое файла /etc/bind/ipa-options-ext.conf после внесения изменений:
Для проверки конфигурационного файла bind9 после изменений использовать команду:
sudo named-checkconf /etc/bind/named.conf
Для применения изменений требуется перезапустить DNS-службу:
sudo systemctl restart bind9-pkcs11.service
Действия по настройке конфигурационного файла /etc/bind/ipa-options-ext.conf рекомендуется производить на основном и резервных контроллерах домена.
Хотя bind9-pkcs11 может успешно выступать в роли распознавателя, для снижения нагрузки с DNS-сервера эту функцию рекомендуется передать стороннему сервису, например, публичным DNS-серверам от Яндекс, доступных по IP-адресу 77.88.8.8.
Для настройки перенаправления DNS-запросов на портале управления Роли и службы сайта → Служба разрешения имен → Глобальная конфигурация DNS нужно добавить запись с политикой Только перенаправлять или Сначала перенаправлять, см. Глобальная конфигурация DNS.
Создание обратной DNS-зоны подробно описано в Руководства администратора. Часть 2, в разделе Роли и службы сайта → Служба разрешения имен → Зоны DNS → Создание зоны DNS. По умолчанию обратная зона создается с маской с размерностью /24, игнорируя настройки сетевого адаптера. Если подсеть отличается от размерности /24, то необходимо вручную создать обратную зону нужной размерности, а созданную по умолчанию - выключить.
Данная статья призвана помочь вам быстро установить и настроить сервер каталогов RED ADM.
Подготовка к установке.
Требования к оборудованию и программному обеспечению.
Операционная система РЕД ОС 8 «Сервер» без графического окружения.
до 1 000 клиентских машин включительно, для их обслуживания требуются следующие параметры серверной машины: – ЦПУ – 4 ядра с частотой от 1,6 ГГц; – объём ОЗУ – 8 Гбайт; – объём накопителя HDD/SSD – 100 Гбайт – скорость сети от 1 Гбит/c.
Сервер подсистемы управления РЕД АДМ может быть установлен: - на той же серверной машине, что и подсистема службы каталогов РЕД АДМ. - на каждый сайт необходим один сервер подсистемы управления.
Рекомендации производителя
Производитель не рекомендует использовать подсистему управления РЕД АДМ и подсистему службы каталогов РЕД АДМ на одной машине при наличии более 500 пользователей на обслуживаемом контроллере домена.
Производитель рекомендует, вход в веб-интерфейс РЕД АДМ и работа в нём производились не с машины, на которой система РЕД АДМ развёрнута.
Развертывание системы.
Установка.
Скачайте RPM-пакет redadm-enterprise из Центра загрузок red-soft.
Интеграция со сторонними системами такими как tegu, требующими аутентификацию LDAP. Выполните следующие настройки:
– в веб-интерфейсе перейдите в секцию «Управление доменом», раздел «Контроллеры домена»; – на контроллер домена установите менеджер управления (выбрать контроллер домена в списке и нажать ставшую активной кнопку «Установить менеджер»); – выберете в списке контроллер домена, нажмите кнопку «Подробнее», на странице свойств контроллера домена перейдите на вкладку «Параметры» для параметра «Строгая аутентификация на сервере LDAP» выберите значение «Не подписан» – сохраните сделанное изменение.
Компонент устанавливается на Linux-сервер, протестирован на Ubuntu, Debian, Astra. Минимальные параметры сервера, рассчитанного на тысячу пользователей: 5 CPU (с поддержкой AVX инструкций), 10 GB RAM, 50 GB HDD. Необходимо зарегистрировать домен и сопоставить его с IP вашего сервера. В случае использования локального домена, необходимы сертификаты для SSL/TLS. Объект сертификата должен совпадать с доменным именем, по которому будет доступен веб-интерфейс.
Необходим статический IP-адрес. Пример: ваш_домен.ru -> 255.255.255.255. При использовании локальной доменной записи необходимо добавить запись на ваш DNS-сервер со ссылкой на IP-адрес машины, где устанавливается MULTIDIRECTORY. Пример: srv01.domain.ru -> 10.0.0.20
Для работы MULTIDIRECTORY необходимо произвести установку Docker и Docker-Compose.
Установка Multidirectory.
Создайте папку, в которой будет храниться MULTIDIRECTORY.
mkdir MultiDirectory; cd MultiDirectory;
Скачайте и сгенерируйте конфигурационный .env файл при помощи:
Запустите ./setup.sh, затем следуйте инструкциям. После заполнения будет создан .env-файл и службы будут готовы к развертыванию.
MULTIDIRECTORY использует порт 53 для запуска и работы контейнера с DNS сервером. Для корректного запуска освободите данный порт.
Запустите сервисы при помощи команды:
docker compose pull; docker compose up -d
Настройка Web-интерфейса MULTIDIRECTORY.
После успешной настройки и запуска сервисов Docker – перейдите в браузер. В поисковую строку внесите домен, который ранее был указан при генерации .env-файла. Вы попадете в настройку WEB-интерфейса вашей MULTIDIRECTORY. Проверьте правильность написания домена, выберите необходимые вам настройки:
Настроить DNS. Если стоит галочка, то настройка DNS будет произведена сразу же (настройку DNS можно произвести и позже в WEB-интерфейсе администратора). Настроить Kerberos. Если стоит галочка, то настройка керберос произойдет сразу же (настройку керберос можно произвести и позже из интерфейса администратор MULTIDIRECTORY). Сгенерировать пароли для Kerberos. Если стоит галочка, то произойдет автоматическая генерация паролей для Kerberos. После настройки WEB-интерфейса сгенерированные пароли будут выгруженны в файл.
Нажмите кнопку «Далее».
Придумайте административную учетную запись и парольу к ней.
Для работы сервера вам понадобятся сертификаты на имя почтового сертификата (а не домена!).
Формат сертификатов поддерживаемый Tegu только PEM (Privacy Enhanced Mail) — это текстовый (ASCII) формат хранения цифровых сертификатов X.509, ключей и запросов (CSR), использующий кодировку Base64.
Ваш сертификат может быть получен любым валидным способом. Самоподписанные сертификаты не поддерживаются.
Центр сертификации Let’s Encrypt предоставляет бесплатные криптографические сертификаты X.509 для шифрования передаваемых через интернет данных HTTPS и других протоколов.
Процесс выдачи сертификатов полностью автоматизирован.
Центр сертификации Let’s Encrypt выдаёт сертификаты со сроком действия 90 дней.
Для получения сертификата должны быть проброшены порты: 80, 443
Начиная с 4 июня 2025 года Let's Encrypt больше не будет уведомлять своих подписчиков о том, что их сертификация скоро истечет и ее необходимо обновить.
Если вы будете получать сертификат на кириллический домен (к примеру mail.тегу.рф), то Letsencrypt выдаст вам соответствующее предупреждение: Non-ASCII domain names not supported. To issue for an Internationalized Domain Name, use Punycode. Ask for help or search for solutions at https://community.letsencrypt.org. See the logfile /tmp/certbot-log-skn94fy8/log or re-run Certbot with -v for more details. Для решения данной проблемы необходимо воспользоваться Punycode конвертером: https://www.punycoder.com/ или https://www.reg.ru/web-tools/punycode , где на выходе вы получите следующий результат:
Необходимо установить пакет certbot, но в репозитории РЕД ОС данного пакета нет, поэтому установите его с помощью python. Если Python уже установлен, установите certbot так:
dnf install python-virtualenv
Создайте каталог
mkdir -p /web/install/python/
Перейдите в этот каталог
cd /web/install/python/
Создайте виртуальную среду для приложения. Назовите ее python-red
python3 -m venv python-red
Активируйте среду приложения python-red
source python-red/bin/activate
Если всё сделано правильно, вы увидите что перешли в среду разработки python
Добавьте выполнение скрипта в crontab, чтоб он выполнялся по расписанию.
crontab -e
и добавьте строку
20 0,12 * * * /root/work/process.sh >/dev/null
После того как сертификаты сгенерированы и прописаны на почтовом сервере, в основных настройках необходимо включить опцию "Требовать шифрования TLS/SSL для авторизации"
Wildcard SSL сертификат (Вайлдкард) — это SSL-сертификат, который защищает основной домен и неограниченное количество его поддоменов первого уровня (например, .example.com), что позволяет использовать один сертификат для сайта, почты, блога и т.д., экономя время и деньги на покупке отдельных сертификатов. Он работает как обычный SSL, но с универсальным символом звездочки (), охватывая все субдомены одного уровня и обеспечивая защищенное HTTPS-соединение. Прекрасно работает с нашим почтовым сервером tegu. Как это работает
Символ звездочки: Звездочка * в имени сертификата (*.example.com) заменяет любое имя поддомена, например, blog.example.com, mail.example.com, shop.example.com. Шифрование: Обеспечивает такое же надежное шифрование, как и стандартные сертификаты, защищая данные между браузером пользователя и сервером. Гибкость: Позволяет создавать новые поддомены в будущем, и они автоматически будут защищены этим сертификатом без необходимости перевыпуска.
Преимущества
Экономия: Выгоднее, чем покупать сертификаты для каждого поддомена.
Удобство: Упрощает управление сертификатами, так как один сертификат покрывает множество ресурсов.
Масштабируемость: Идеально подходит для компаний, использующих поддомены для разных проектов (лендинги, форумы, почта).
Ограничения Обычно защищает только поддомены первого уровня (например, *.example.com), но не поддомены второго уровня (например, sub.blog.example.com). Нельзя получить Wildcard с уровнем проверки Extended Validation (EV)
Можно сгенерировать Wildcard сертификат через Let's Encrypt, важно помнить следующие моменты:
Если они сертификаты сгенерены не корневым а промежуточным CA, то нужно брать не сам sert, а полную цепочку - fullchain в терминах LetsEncrypt. Сам LetsEncrypt её создаёт вместе со всей пачкой.
Если в комплекте нет fullchain, а есть отдельно рассыпуха: Корневой, Промежуточные, Доменный - то можно его сделать так:
В диалоге /Настройка/<ваш домен>/DKIM нажмите кнопку "Добавить ключ DKIM".
В результате сервер самостоятельно сгенерирует ключ DKIM, приватную часть часть он сохранит у себя, а публичную часть вернет в виде, в котором вы должны разместить ее в DNS-зоне.
Пример: mail._domainkey.tegu.online. IN TXT "v=DKIM1; h=sha256; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC4Lbl9UVcH/vu0LVp66sWUn8BMwB7Ec5D3uVgopu/1R2yEAWdJURQa1xfScgkfBJX/+N7i/hLOaT1tgeF52tI029R0T4hx4Uswwqgi9/5ZuIcLyTaGAVXtsGooc8n/Z5pYjaXNXjmnsyaJjuLp6IEtM49d95c3jFjJcp1vgluJIwIDAQAB"
Вы можете удалить ключ и сгенерировать новый. При этом каждый раз необходимо соответственно обновлять DNS-зону.
В диалоге /Дашборд вы найдете "Рекомендации для зоны DNS" для каждого из интернет-доменов.
Рекомендация содержит все необходимые записи, включая DMAC, DKIM, ресурсные записи (необходимые для автонастройки почтовых программ). Перенесите их на ваш сервер DNS в требуемом формате.
В TEGU почтовые ящики создаются автоматически в момент первой авторизации. Подробнее...Подробнее...
Ранее мы уже писали, что сервер не синхронизирует данные серверов каталогов, он обращается к серверу каталога всякий раз, когда необходимо выполнить авторизацию пользователя. При этом сервер не сохраняет полученную информацию, а лишь кеширует на время.
Кеширование необходимо, чтобы в случае DDOS-а почтовый сервер не завалил запросами сервер каталогов. По умолчанию время кеширования составляет 10 секунд и вы можете самостоятельно изменить его с помощью параметра "Провайдеры БД пользователей/<выбранный провайдер>/Cache TTL (seconds)".
Это обстоятельство означает, что сервер не знает от существовании вашего пользователя, созданного на сервере каталогов до тех пор, пока не возникнет необходимость его авторизации.
Необходимость авторизации возникает когда:
Сервер получил письмо в адрес этого пользователя;
Сервер получил письмо от этого пользователя;
Пользователь настраивает клиентское ПО или регистрируется на сайте веб-мэйла.
Если таких ситуаций не было, но сервер не знает о существовании и, как следствие, не создает почтовый ящик. Более того, этот пользователь не участвует в подсчете использованных лицензий.
Однако, при первой попытке успешно авторизации почтовый ящик создается автоматически.
Для создания почтового ящика в учетной доменной записи необходимо и достаточно указать:
Для удаления ящика используйте диалог "Хранилища почты/Панель управления <соответствующего домена>/Почтовые ящики". Подробнее...Подробнее...
Рассмотрим обратную ситуация. Вы удалили пользователя в домене и пользовательский аккаунт больше не существует. Это означает только то, что сервер не получает запросов на авторизацию, но это не означает, что ящик должен быть удален. Он останется на почтовом сервере. Таким образом, это означает, что удалять ставшие ненужными ящики вы должны самостоятельно (вручную).