Установка UniFi Controller на Ubuntu 22.04/24.04: Пошаговая инструкция | AdminWiki

Установка UniFi на Ubuntu: Полное руководство для контроллера сети

17 декабря 2025 7 мин. чтения #devops #ubiquiti #ubuntu #ubuntu 22.04 #ubuntu 24.04 #unifi #unifi controller #сетевой контроллер

Представь, что тебе нужно централизованно управлять всей сетевой инфраструктурой Ubiquiti — точками доступа, коммутаторами, шлюзами. Для этого нужен UniFi Controller. Давай разберем, как правильно установить и настроить UniFi Controller на Ubuntu, будь то 22.04 LTS или свежая 24.04.

Подготовка системы Ubuntu

Перед установкой UniFi Controller на Ubuntu убедись, что система обновлена и установлены необходимые зависимости.

bash
sudo apt update && sudo apt upgrade -y
sudo apt install -y ca-certificates apt-transport-https wget
Важно: Для работы UniFi Controller требуется Java. Современные версии контроллера работают с OpenJDK 11 или 17.

Установка Java для UniFi Controller

UniFi Controller написан на Java, поэтому установим подходящую версию:

bash
# Для Ubuntu 22.04 и 24.04
sudo apt install -y openjdk-17-jre-headless

# Проверяем установку
java -version

Добавление репозитория MongoDB

UniFi Controller использует MongoDB для хранения данных. Начиная с версии 7.x, контроллер требует MongoDB 4.4 или выше.

bash
# Импортируем ключ MongoDB
wget -qO - https://www.mongodb.org/static/pgp/server-6.0.asc | sudo apt-key add -

# Добавляем репозиторий для Ubuntu 22.04/24.04
echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu $(lsb_release -sc)/mongodb-org/6.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-6.0.list

sudo apt update
Внимание: Некоторые версии UniFi Controller могут требовать конкретную версию MongoDB. Проверяйте требования на официальном сайте Ubiquiti.

Установка MongoDB и UniFi Controller

Теперь установим MongoDB и сам UniFi Controller на Ubuntu:

bash
# Устанавливаем MongoDB
sudo apt install -y mongodb-org

# Запускаем и добавляем в автозагрузку
sudo systemctl start mongod
sudo systemctl enable mongod

# Добавляем репозиторий UniFi
echo 'deb https://www.ui.com/downloads/unifi/debian stable ubiquiti' | sudo tee /etc/apt/sources.list.d/100-ubnt-unifi.list

# Импортируем ключ
wget -qO - https://dl.ui.com/unifi/unifi-repo.gpg | sudo tee /usr/share/keyrings/unifi-repo.gpg > /dev/null

sudo apt update

# Устанавливаем UniFi Controller
sudo apt install -y unifi

Настройка брандмауэра для UniFi Controller

UniFi Controller использует несколько портов для работы. Откроем их в UFW:

bash
# Если UFW не установлен
sudo apt install -y ufw

# Разрешаем основные порты UniFi
sudo ufw allow 22/tcp          # SSH
sudo ufw allow 80/tcp          # HTTP редирект
sudo ufw allow 443/tcp         # Web UI
sudo ufw allow 8080/tcp        # Device communication
sudo ufw allow 8443/tcp        # Web UI SSL
sudo ufw allow 8880/tcp        # HTTP portal redirect
sudo ufw allow 8843/tcp        # HTTPS portal redirect
sudo ufw allow 3478/udp        # STUN
sudo ufw allow 10001/udp       # Device discovery

# Включаем брандмауэр
sudo ufw enable

Запуск и первоначальная настройка

После установки UniFi Controller на Ubuntu 22.04 или 24.04, запустим сервис:

bash
# Перезапускаем сервис UniFi
sudo systemctl restart unifi

# Проверяем статус
sudo systemctl status unifi

# Добавляем в автозагрузку
sudo systemctl enable unifi

Теперь открой браузер и перейди по адресу https://IP_СЕРВЕРА:8443. Ты увидишь мастер первоначальной настройки UniFi Controller.

Оптимизация производительности

Для улучшения работы UniFi Controller на Ubuntu, выполни эти настройки:

Настройка системных лимитов

bash
# Создаем конфигурационный файл для лимитов
sudo tee /etc/security/limits.d/unifi.conf << EOF
unifi soft nofile 4096
unifi hard nofile 8192
root soft nofile 4096
root hard nofile 8192
EOF

Настройка MongoDB

bash
# Оптимизируем настройки MongoDB
sudo tee /etc/mongod.conf << EOF
storage:
  dbPath: /var/lib/mongodb
  journal:
    enabled: true
systemLog:
  destination: file
  logAppend: true
  path: /var/log/mongodb/mongod.log
net:
  port: 27117
  bindIp: 127.0.0.1
processManagement:
  timeZoneInfo: /usr/share/zoneinfo
EOF

sudo systemctl restart mongod

Автоматическое обновление UniFi Controller

Настрой автоматические обновления для поддержания безопасности:

bash
# Создаем задание для автоматического обновления
sudo tee /etc/cron.weekly/unifi-update << 'EOF'
#!/bin/bash
apt update
apt install --only-upgrade -y unifi
systemctl restart unifi
EOF

sudo chmod +x /etc/cron.weekly/unifi-update

Резервное копирование конфигурации

Создай скрипт для регулярного резервного копирования:

bash
#!/bin/bash
BACKUP_DIR="/backup/unifi"
DATE=$(date +%Y%m%d_%H%M%S)

# Создаем директорию для бэкапов
mkdir -p $BACKUP_DIR

# Выполняем бэкап через утилиту UniFi
java -jar /usr/lib/unifi/lib/ace.jar backup --out $BACKUP_DIR/unifi_backup_$DATE.unf

# Очищаем старые бэкапы (храним 30 дней)
find $BACKUP_DIR -name "*.unf" -mtime +30 -delete

Решение распространенных проблем

1. Проблемы с запуском сервиса

bash
# Проверяем логи UniFi
sudo tail -f /var/log/unifi/server.log

# Переустанавливаем сервис
sudo apt install --reinstall unifi

2. Очистка базы данных MongoDB

bash
# Останавливаем сервисы
sudo systemctl stop unifi
sudo systemctl stop mongod

# Удаляем базу данных
sudo rm -rf /var/lib/mongodb/*

# Запускаем сервисы
sudo systemctl start mongod
sudo systemctl start unifi

Сравнение методов установки UniFi на Ubuntu

Метод Преимущества Недостатки Рекомендация
Официальный репозиторий (наш метод) Автоматические обновления, стабильность Требует настройки MongoDB отдельно Для production-сред
Docker контейнер Изоляция, простота развертывания Требует Docker, сложнее с бэкапами Для тестирования и разработки
Ручная установка .deb пакета Полный контроль Нет автоматических обновлений Для специфичных конфигураций

Часто задаваемые вопросы (FAQ)

Какие системные требования для UniFi Controller на Ubuntu?

Минимальные требования: 2 CPU ядра, 4GB RAM, 10GB дискового пространства. Для средних сетей (20-50 устройств) рекомендуется 4 CPU ядра, 8GB RAM, SSD диск.

Как перенести UniFi Controller на другой сервер Ubuntu?

Используй встроенную функцию бэкапа в веб-интерфейсе (Settings → System → Backup). Восстанови бэкап на новом сервере через мастер настройки.

Почему не открывается веб-интерфейс после установки?

Проверь: 1) Работает ли сервис (systemctl status unifi), 2) Открыты ли порты в брандмауэре, 3) Доступен ли MongoDB, 4) Используешь ли правильный URL (https://IP:8443).

Как обновить UniFi Controller на Ubuntu до новой версии?

Выполни команды: sudo apt update && sudo apt upgrade unifi. Обязательно сделай бэкап перед обновлением.

Профессиональный совет: Для production-среды рассмотри возможность установки UniFi Controller в Docker или Kubernetes для лучшей изоляции и управления ресурсами.

Заключение

Установка UniFi Controller на Ubuntu — будь то 22.04 LTS или новая 24.04 — процесс достаточно straightforward, если следовать инструкциям. Главное помнить про зависимости (Java, MongoDB), правильно настроить брандмауэр и регулярно делать бэкапы.

Теперь у тебя есть полностью функциональный UniFi Controller на Ubuntu, готовый к управлению сетевой инфраструктурой Ubiquiti. Не забывай мониторить логи и обновлять систему для поддержания безопасности и стабильности.

Следующие шаги после установки:

  • Настройка SSL сертификата для безопасного доступа
  • Конфигурация автоматических бэкапов
  • Настройка мониторинга ресурсов сервера
  • Интеграция с системой оповещений (например, Telegram бот)
Поделиться:
Сохранить гайд? В закладки браузера