Skip to content

Ajenti

Общее описание

Ajenti — это легковесная, гибкая и простая в использовании панель администрирования с открытым исходным кодом, предназначенная для управления серверами на базе операционных систем Linux. Она предоставляет графический интерфейс (GUI), который позволяет выполнять типовые задачи администрирования без необходимости использования командной строки. Ajenti особенно популярен среди пользователей, которым нужен минимальный функционал хостинг-панели без избыточности, свойственной таким решениям как cPanel или Plesk.

Основные особенности

1. Веб-интерфейс

  • Полностью веб-ориентированный интерфейс.
  • Поддержка HTTPS и авторизация через логин/пароль.
  • Поддерживает адаптивный дизайн — работает на мобильных устройствах и десктопах.

2. Модульность

  • Архитектура на основе модулей: каждый компонент добавляется отдельно.
  • Модули доступны для управления:
  • Файловая система
  • Пользователи и группы
  • Сеть и брандмауэр
  • Сервисы systemd/init
  • Процессы и ресурсы системы
  • Веб-серверы (Nginx, Apache)
  • Базы данных (MySQL, PostgreSQL)
  • PHP
  • DNS
  • Почтовые серверы
  • И другие

3. Поддерживаемые ОС

  • Debian
  • Ubuntu
  • CentOS
  • RHEL
  • Fedora
  • Arch Linux (частично)

4. Безопасность

  • Шифрование соединения через SSL/TLS.
  • Управление правами доступа.
  • Возможность ограничения IP-адресов, с которых разрешён вход.

5. Производительность

  • Легковесный процесс, минимальное использование ресурсов.
  • Работает поверх Python + gevent (асинхронный движок).
  • Поддерживает WebSockets для обновления информации в реальном времени.

Установка

На Ubuntu/Debian:

wget https://repo.ajenti.org/debian/key -O- | sudo apt-key add -
echo "deb http://repo.ajenti.org/ng/debian main main ubuntu" | sudo tee /etc/apt/sources.list.d/ajenti.list
sudo apt update
sudo apt install ajenti

После установки запустите службу:

sudo systemctl enable ajenti
sudo systemctl start ajenti

Доступ осуществляется через браузер:
https://ваш_сервер:8000

Логин: root
Пароль: admin (первый вход, рекомендуется изменить)

На CentOS/RHEL:

yum install epel-release
rpm -Uvh https://repo.ajenti.org/centos/ajenti-repo-1.0-1.noarch.rpm
yum install ajenti

Запуск службы:

systemctl enable ajenti
systemctl start ajenti

Конфигурация

Файл конфигурации находится по пути:
/etc/ajenti/config.json

Основные параметры:

  • "port" — порт, на котором слушает Ajenti (по умолчанию 8000)
  • "ssl" — настройки SSL-сертификатов
  • "auth" — тип аутентификации
  • "log_level" — уровень логирования
  • "plugins" — список активных плагинов

Пример изменения порта:

{
    "server": {
        "port": 8080,
        "ssl": true
    }
}

После изменений перезапустите сервис:

systemctl restart ajenti

Аутентификация и безопасность

Авторизация

Ajenti поддерживает два типа аутентификации:

  1. Local — локальная база пользователей (по умолчанию).
  2. PAM — интеграция с системой PAM (позволяет использовать системные учетные записи).

Изменение метода аутентификации:

{
    "auth": {
        "provider": "pam"
    }
}

Ограничение доступа

Можно ограничить доступ к Ajenti по IP-адресам через файл конфигурации:

{
    "access": {
        "allowed_ips": ["192.168.1.0/24", "10.0.0.5"]
    }
}

Также можно использовать брандмауэр (например, iptables или firewalld) для блокировки нежелательного трафика.


Плагины и расширяемость

Ajenti поддерживает широкую экосистему плагинов, которые можно устанавливать отдельно.

Установка плагина

Через систему пакетов:

apt install ajenti-plugin-<имя_плагина>

или

pip install ajenti.plugin.<имя_плагина>

Примеры популярных плагинов:

Плагин Назначение
ajenti-panel Основной интерфейс
ajenti-plugin-servicemanager Управление сервисами
ajenti-plugin-vh Управление виртуальными хостами
ajenti-plugin-ntp Синхронизация времени
ajenti-plugin-logs Просмотр системных логов
ajenti-plugin-mysql Интеграция с MySQL
ajenti-plugin-phpfpm Управление PHP-FPM

После установки плагина необходимо перезапустить Ajenti.


Интерфейс пользователя

После входа в систему вы попадаете на главную страницу, где отображается:

  • Общая информация о системе (ОС, ядро, загрузка CPU, RAM и т.д.)
  • Список запущенных сервисов
  • Краткие статистики по дисковому пространству и сетевым интерфейсам

В левой панели меню расположены все доступные модули, такие как:

  • Dashboard — общая сводка
  • Files — файловый менеджер
  • Terminal — эмулятор терминала в браузере
  • Services — управление службами
  • Processes — мониторинг процессов
  • Websites — настройка веб-сайтов
  • Users — управление пользователями и группами
  • Packages — работа с пакетами (APT/YUM)
  • Plugins — управление установленными плагинами

Терминал в браузере

Один из самых популярных модулей — Embedded Terminal, позволяющий выполнять команды прямо в веб-браузере. Это удобно для быстрого выполнения действий без SSH-подключения.

Также поддерживаются:

  • Цветовая схема
  • Автозаполнение
  • История команд
  • Поддержка UTF-8

Управление веб-сайтами

Модуль Websites позволяет управлять виртуальными хостами Nginx и Apache.

Функционал: - Создание новых сайтов - Настройка домена, порта, корневой директории - Редактирование конфигурационных файлов - Включение/выключение сайта - Перезагрузка веб-сервера


Управление базами данных

Модуль MySQL позволяет:

  • Управлять пользователями и привилегиями
  • Создавать и удалять базы данных
  • Выполнять SQL-запросы
  • Импортировать и экспортировать данные

Аналогичный функционал доступен и для PostgreSQL.


Логирование и диагностика

Ajenti записывает логи в файл /var/log/ajenti.log. Для просмотра логов используется модуль Logs.

Для диагностики проблем также можно использовать:

  • Встроенный мониторинг ресурсов
  • Просмотр активных процессов
  • Сетевые подключения

Обновление Ajenti

Обновление через пакетный менеджер:

apt update && apt upgrade ajenti

или

yum update ajenti

Рекомендуется регулярно проверять наличие обновлений, особенно если используются сторонние плагины.


Резервное копирование и восстановление

Ajenti не предоставляет встроенного механизма резервного копирования, но может быть интегрирован с такими утилитами, как:

  • rsync
  • tar
  • cron
  • restic
  • borgbackup

Рекомендуется создавать cron-задачи для автоматического резервного копирования важных файлов и баз данных.


Поддержка и сообщество

Официальные источники: