Avanpost SmartPAM : Установка Avanpost SmartPAM на Astra Linux

Пример для Astra Linux Special Edition 1.8. После завершения всех шагов этого раздела перейдите к разделу «Установка Avanpost SmartPAM из архива» для продолжения установки

Создание служебного пользователя

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

1. Создайте служебного пользователя smartpam (параметр -m необходим для создания домашнего каталога, параметр -d назначает домашнюю папку, параметр -s задаёт оболочку пользователя) и задайте пароль новому пользователю:

sudo useradd -s /bin/bash -d /home/smartpam/ -m -G sudo smartpam
sudo passwd smartpam

2. Создайте каталог /opt/smartpam:

sudo mkdir /opt/smartpam
sudo chown -R smartpam:smartpam /opt/smartpam

3. Если иное не указано явно, дальнейшие описываемые в настоящем документе операции выполняйте под служебным пользователем smartpam:

sudo su smartpam
cd /opt/smartpam

Включение репозиториев Astra Linux

1. Для установки ряда необходимых компонентов в конфигурационном файле репозитория Astra Linux необходимо активировать онлайн-репозитории. Для этого отредактируйте файл:

sudo nano /etc/apt/sources.list
  1. В файле удалите символы «#» перед строками, описывающими онлайн-репозиторий (тем самым «раскомментировав» их) и установите символ «#» перед строкой, описывающей оффлайн-репозиторий («закомментируйте» ее).

Например:

deb https://download.astralinux.ru/astra/stable/1.8_x86-64/repository-extended/ 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 non-free-firmware
#deb cdrom:[OS Astra Linux 1.8.1.16 1.8_x86-64 DVD]/ 1.8_x86-64 contrib main non-free non-free-firmware

3. Обновите конфигурацию репозиториев:

sudo apt update

Установка nginx/Angie

1. Установите необходимые компоненты:

sudo apt install -y curl gnupg2 ca-certificates lsb-release debian-archive-keyring

2. Установите nginx:

sudo apt install -y nginx

3. Включите автоматический запуск Nginx при загрузке системы:

sudo systemctl enable nginx

4. Запустите службу Nginx:

sudo systemctl start nginx

Установка и настройка NATS

1. Загрузите NATS-сервер:

curl -L -o nats-server.zip https://github.com/nats-io/nats-server/releases/download/v2.10.22/nats-server-v2.10.22-linux-amd64.zip

2. Распакуйте архив:

unzip nats-server.zip

3. Скопируйте папку, которая была распакована, в системный каталог /usr/bin:

sudo cp nats-server-v2.10.22-linux-amd64/nats-server /usr/bin

4. Создайте конфигурационный файл сервера NATS — /etc/nats-server.conf:

sudo touch /etc/nats-server.conf
  1. Добавьте в созданный файл следующие настройки:

# NATS Server Configuration with Simple Authentication
server_name: "My_Secure_NATS_Server"
# Client connections port
listen: 127.0.0.1:4222
# Simple authentication with one user
authorization {
  # Timeout for authentication (in seconds)
  timeout: 2
  # Single user with full permissions
  user: nats_login
  password: "nats_password"
}

6. Создайте и отредактируйте конфигурационный файл службы systemd:

sudo nano /etc/systemd/system/nats.service

Добавьте в файл следующее содержимое:

[Unit]
Description=NATS Server
After=network-online.target ntp.service

[Service]
PrivateTmp=true
Type=simple
ExecStart=/usr/bin/nats-server -c /etc/nats-server.conf
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s SIGINT $MAINPID
User=smartpam
Group=smartpam
KillSignal=SIGUSR2
TimeoutStopSec=10

[Install]
WantedBy=multi-user.target

7. Предоставьте пользователю права на чтение и исполнение файла:

su - smartpam
sudo chmod +rx /usr/bin/nats-server

8. Перезапустите конфигурацию:

sudo systemctl daemon-reload

9. Для автоматического запуска NATS при загрузке системы выполните команду:

sudo systemctl enable nats

10. Запустите сервер NATS:

sudo systemctl start nats

Установка и настройка PostgreSQL 15

1. Установите PostgreSQL:

sudo apt install postgresql-15

2. Запустите службу PostgreSQL:

sudo systemctl start postgresql

3. Включите автозапуск службы PostgreSQL при старте системы:

sudo systemctl enable postgresql

Настройка PostgreSQL

1. Измените методы аутентификации и настройте доступ к базе данных по сети:

sudo sed -i '/^host/s/ident/md5/' /etc/postgresql/15/main/pg_hba.conf
sudo sed -i '/^local/s/peer/trust/' /etc/postgresql/15/main/pg_hba.conf
echo "host all all 0.0.0.0/0 md5" | sudo tee -a /etc/postgresql/15/main/pg_hba.conf

2. Перезапустите PostgreSQL:

sudo systemctl restart postgresql

3. При необходимости, разрешите доступ к порту PostgreSQL через брандмауэр. Например, в случае использования UFW, выполните следующую команду:

sudo ufw allow 5432/tcp

Создание базы данных

1. Перейдите в интерактивный режим PostgreSQL:

sudo -u postgres psql

2. Создайте пользователя СУБД с паролем и базу данных pam:

CREATE USER pam WITH PASSWORD 'Passw0rd';
CREATE DATABASE pam OWNER=pam ENCODING='UTF8';
\q

Установка MinIO (S3-хранилище)

Подготовка и установка

1. Создайте каталог для хранения объектов:

mkdir -p /opt/smartpam/minio/

2. Создайте каталог для хранения записей и назначьте права пользователю:

sudo mkdir -p /var/minio/replays
sudo chown -R smartpam:smartpam /var/minio/

3. Скачайте пакет MinIO:

wget https://dl.min.io/server/minio/release/linux-amd64/archive/minio_20250524170830.0.0_amd64.deb -O minio.deb

4. Установите скачанный пакет:

sudo dpkg -i minio.deb

5. Создайте файл с переменными окружения для MinIO:

sudo nano /etc/default/minio
  1. Добавьте в файл с переменными окружения следующие параметры:

MINIO_ROOT_USER=minioadmin
MINIO_ROOT_PASSWORD=minioadmin
MINIO_VOLUMES="/var/minio"
MINIO_OPTS="--address :9000 --console-address :9001"

7. Измените логин, пароль и порты, если это необходимо. По умолчанию MinIO использует порт 9000 для S3 API и порт 9001 для консоли MinIO (веб-интерфейс). При изменении параметров приведите в соответствие с изменениями файлы конфигурации служб: Admin API (/opt/smartpam/admin-console/config.yaml) и session-processor (/opt/smartpam/session-processor/config.yaml)

Настройка службы Systemd

1. Создайте файл службы:

sudo nano /etc/systemd/system/minio.service
  1. Добавьте в файл службы следующее:

[Unit]
Description=MinIO
Documentation=https://docs.min.io
Wants=network-online.target
After=network-online.target

[Service]
Type=notify
WorkingDirectory=/usr/local
User=smartpam
Group=smartpam
ProtectProc=invisible
EnvironmentFile=/etc/default/minio
ExecStart=/usr/local/bin/minio server $MINIO_OPTS $MINIO_VOLUMES
Restart=always
LimitNOFILE=1048576
MemoryAccounting=no
TasksMax=infinity
TimeoutSec=infinity
OOMScoreAdjust=-1000
SendSIGKILL=no

[Install]
WantedBy=multi-user.target

3. Обновите Systemd:

sudo systemctl daemon-reload

4. Включите автозапуск сервиса MinIO при загрузке системы:

sudo systemctl enable minio

5. Запустите службу MinIO:

sudo systemctl start minio

Открытие порта и проверка

1. Согласно настройкам, указанным в конфигурации, откройте порт в брандмауэре, чтобы обеспечить доступ к MinIO:

sudo ufw allow 9001/tcp
  1. Чтобы убедиться, что MinIO успешно запущен и доступен, откройте веб-браузер и перейдите по адресу: http://<ip-вашего-сервера>:9001

Установка зависимостей PyRDP

1. Установите необходимые зависимости:

sudo apt-get update
sudo apt-get install -y \
  python3 python3-pip python3-venv \
  libglib2.0-0 libgl1 libxkbcommon0 libfontconfig1 libdbus-1-3 \
  unzip gcc libffi-dev libssl-dev python3-dev

2. Создайте виртуальное окружение и установите PyRDP:

python3 -m venv /opt/smartpam/session-processor/venv
source /opt/smartpam/session-processor/venv/bin/activate
pip install --upgrade pip setuptools wheel
pip install "/opt/smartpam/utils/gosecure-pyrdp.zip[full]"

3. Деактивируйте виртуальное окружение:

deactivate

Обсуждение