Поиск по сайту:

Установите UniFi Controller (сетевое приложение) в Ubuntu 20.04 |


В сегодняшней статье мы обсудим установку и настройку UniFi Controller в системе Linux Ubuntu 20.04 (Focal Fossa). Программное обеспечение UniFi Controller обычно называют UniFi Network Server в терминологии UniFi. Для сетевого инженера с опытом управления системами самостоятельное размещение сетевого сервера UniFi может быть идеальным способом сократить расходы на оборудование. Он применим для небольших установок и домашних лабораторий. Но для корпоративной установки мы рекомендуем приобрести такое устройство, как UniFi Dream Machine Pro.

Сетевое приложение UniFi (ранее UniFi Controller) — это программное обеспечение, разработанное Ubiquiti Networks для обеспечения возможности управления несколькими сетевыми устройствами UniFI из веб-браузера. Программное обеспечение можно установить в системе Windows, macOS и Linux. В нашей предыдущей статье мы предоставили статьи ниже.

  • Как запустить контроллер UniFi в контейнере Docker
  • Установите UniFi Controller в Ubuntu 18.04/Debian 9
  • Установите сетевое приложение UniFi на macOS

Прежде чем устанавливать приложение UniFi Network, убедитесь, что выполнены следующие требования:

  • Сеть с поддержкой DHCP
  • Среда выполнения Java
  • Linux, Mac OS X или Microsoft Windows 7/8 – работающее программное обеспечение контроллера.
  • Веб-браузер: Mozilla Firefox, Google Chrome или Microsoft Internet Explorer 8 (или выше)

Требования к версии программного обеспечения:

  • Ява 11/Ява 8
  • MongoDB <=4.0, но >=3.6 (мы установим MongoDB 4.0)

Прежде чем мы начнем установку, подтвердите данные вашей ОС:

$ cat /etc/os-release
NAME="Ubuntu"
VERSION="20.04.6 LTS (Focal Fossa)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 20.04.6 LTS"
VERSION_ID="20.04"
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
VERSION_CODENAME=focal
UBUNTU_CODENAME=focal

Давайте обновим и обновим систему, прежде чем двигаться дальше.

sudo apt update && sudo apt -y full-upgrade

При необходимости рекомендуется перезагрузка.

[ -f /var/run/reboot-required ] && sudo reboot -f

1 – Добавьте APT-репозитории UniFi и MongoDB.

Прежде чем добавлять репозитории, давайте установим необходимые зависимости.

sudo apt install curl gpg gnupg2 software-properties-common apt-transport-https lsb-release ca-certificates

Добавить APT-репозиторий MongoDB.

Начните с добавления ключа GPG в системный брелок. Как говорилось ранее, мы устанавливаем MongoDB Server 4.0.

curl -fsSL https://pgp.mongodb.com/server-4.0.asc | sudo gpg --dearmor -o /usr/share/keyrings/mongodb-server-4.0.gpg

Затем добавьте репозиторий, содержащий пакеты MongoDB 4.0. Он будет основан на Ubuntu Bionic Beaver.

echo "deb https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.0.list

Обновить индекс пакета APT.

$ sudo apt update
Hit:1 https://mirror.hetzner.com/ubuntu/packages focal InRelease
Hit:2 https://mirror.hetzner.com/ubuntu/packages focal-updates InRelease
Hit:3 https://mirror.hetzner.com/ubuntu/packages focal-backports InRelease
Hit:4 https://mirror.hetzner.com/ubuntu/security focal-security InRelease
Ign:6 https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.0 InRelease
Hit:5 https://dl.ui.com/unifi/debian stable InRelease
Get:7 https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.0 Release [2,989 B]
Get:8 https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.0 Release.gpg [801 B]
Ign:8 https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.0 Release.gpg
Reading package lists... Done

Добавить репозиторий UniFi APT

Импортируйте ключ GPG репозитория, используемый при подписании пакетов UniFi APT.

sudo wget -O /etc/apt/trusted.gpg.d/unifi-repo.gpg https://dl.ui.com/unifi/unifi-repo.gpg 

Добавьте репозиторий UniFi APT, выполнив приведенные ниже команды в своем терминале.

echo 'deb https://www.ui.com/downloads/unifi/debian stable ubiquiti' | sudo tee /etc/apt/sources.list.d/ubnt-unifi.list

2 – отключить установку Java 17

Запретить системе Ubuntu автоматическую установку Java 17.

sudo apt-mark hold openjdk-17-*

При установке UniFi по умолчанию будет использоваться Java 11.

3. Установите сетевое приложение UniFi в Ubuntu 20.04.

Теперь, когда мы добавили репозиторий UniFi и MongoDB, давайте начнем установку сетевого приложения UniFi (UniFi Controller) в Ubuntu 20.04.

sudo apt install unifi

Примите запрос на установку в соответствии с запросом.

Reading package lists... Done
Building dependency tree
Reading state information... Done
The following additional packages will be installed:
  binutils binutils-common binutils-x86-64-linux-gnu ca-certificates-java fontconfig-config fonts-dejavu-core java-common libavahi-client3 libavahi-common-data libavahi-common3 libbinutils
  libboost-filesystem1.71.0 libboost-iostreams1.71.0 libboost-program-options1.71.0 libctf-nobfd0 libctf0 libcups2 libfontconfig1 libgoogle-perftools4 libgraphite2-3 libharfbuzz0b libjpeg-turbo8
  libjpeg8 liblcms2-2 libpcrecpp0v5 libpcsclite1 libsnappy1v5 libtcmalloc-minimal4 libyaml-cpp0.6 mongo-tools mongodb-clients mongodb-server mongodb-server-core openjdk-11-jre-headless
Suggested packages:
  binutils-doc default-jre cups-common liblcms2-utils pcscd libnss-mdns fonts-dejavu-extra fonts-ipafont-gothic fonts-ipafont-mincho fonts-wqy-microhei | fonts-wqy-zenhei fonts-indic
The following NEW packages will be installed:
  binutils binutils-common binutils-x86-64-linux-gnu ca-certificates-java fontconfig-config fonts-dejavu-core java-common libavahi-client3 libavahi-common-data libavahi-common3 libbinutils
  libboost-filesystem1.71.0 libboost-iostreams1.71.0 libboost-program-options1.71.0 libctf-nobfd0 libctf0 libcups2 libfontconfig1 libgoogle-perftools4 libgraphite2-3 libharfbuzz0b libjpeg-turbo8
  libjpeg8 liblcms2-2 libpcrecpp0v5 libpcsclite1 libsnappy1v5 libtcmalloc-minimal4 libyaml-cpp0.6 mongo-tools mongodb-clients mongodb-server mongodb-server-core openjdk-11-jre-headless unifi
0 upgraded, 35 newly installed, 0 to remove and 0 not upgraded.
Need to get 244 MB of archives.
After this operation, 678 MB of additional disk space will be used.
Do you want to continue? [Y/n] y

Установка приложения UniFi Network вручную в Ubuntu 20.04

Если вы предпочитаете метод установки вручную, загрузите пакет .deb , посетив страницу загрузки программного обеспечения UniFi Controller с веб-сайта Ubiquiti Networks.

Выберите последнюю доступную версию для Linux и нажмите «Загрузить».

Выберите каталог, в котором сохраните файл.

При загрузке файла с помощью wget используйте синтаксис:

wget https://dl.ui.com/unifi/<VERSION>/unifi_sysvinit_all.deb

Установку пакета .deb можно выполнить с помощью apt, передав путь к загруженному файлу в качестве аргумента.

$ sudo apt install ./unifi_sysvinit_all.deb
Reading package lists... Done
Building dependency tree
Reading state information... Done
Note, selecting 'unifi' instead of './unifi_sysvinit_all.deb'
The following additional packages will be installed:
  binutils binutils-common binutils-x86-64-linux-gnu ca-certificates-java fontconfig-config fonts-dejavu-core java-common jsvc libasound2 libasound2-data libavahi-client3 libavahi-common-data
  libavahi-common3 libbinutils libboost-filesystem1.65.1 libboost-iostreams1.65.1 libboost-program-options1.65.1 libboost-system1.65.1 libcommons-daemon-java libcups2 libfontconfig1
  libgoogle-perftools4 libgraphite2-3 libharfbuzz0b libjpeg-turbo8 libjpeg8 liblcms2-2 libnspr4 libnss3 libpcrecpp0v5 libpcsclite1 libsnappy1v5 libstemmer0d libtcmalloc-minimal4 libyaml-cpp0.5v5
  mongo-tools mongodb-clients mongodb-server mongodb-server-core openjdk-17-jre-headless
Suggested packages:
  binutils-doc default-jre libasound2-plugins alsa-utils java-virtual-machine cups-common liblcms2-utils pcscd libnss-mdns fonts-dejavu-extra fonts-ipafont-gothic fonts-ipafont-mincho
  fonts-wqy-microhei | fonts-wqy-zenhei fonts-indic
The following NEW packages will be installed:
  binutils binutils-common binutils-x86-64-linux-gnu ca-certificates-java fontconfig-config fonts-dejavu-core java-common jsvc libasound2 libasound2-data libavahi-client3 libavahi-common-data
  libavahi-common3 libbinutils libboost-filesystem1.65.1 libboost-iostreams1.65.1 libboost-program-options1.65.1 libboost-system1.65.1 libcommons-daemon-java libcups2 libfontconfig1
  libgoogle-perftools4 libgraphite2-3 libharfbuzz0b libjpeg-turbo8 libjpeg8 liblcms2-2 libnspr4 libnss3 libpcrecpp0v5 libpcsclite1 libsnappy1v5 libstemmer0d libtcmalloc-minimal4 libyaml-cpp0.5v5
  mongo-tools mongodb-clients mongodb-server mongodb-server-core openjdk-17-jre-headless unifi
0 upgraded, 41 newly installed, 0 to remove and 57 not upgraded.
Need to get 280 MB of archives.
After this operation, 724 MB of additional disk space will be used.
Do you want to continue? [Y/n] y

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

Note, selecting 'unifi' instead of './unifi_sysvinit_all.deb'
unifi is already the newest version (7.4.162-1).
0 upgraded, 0 newly installed, 0 to remove and 57 not upgraded.

4 – Создайте учетную запись в облаке UniFi.

Если у вас нет учетной записи UniFi Cloud, создайте ее на unifi.ui.com. Войдите в систему или нажмите «Создать».

Введите свои данные, чтобы создать новую учетную запись. После этого на ваш адрес электронной почты, указанный при создании учетной записи, будет отправлено письмо с подтверждением.

Подтвердите адрес электронной почты, чтобы активировать учетную запись UniFi.

5 – Доступ к сетевому приложению UniFi в браузере

Перезапустите службу unifi, используя systemctl.

sudo systemctl restart unifi.service

Проверьте, находится ли услуга в статусе.

$ systemctl status unifi.service
 unifi.service - unifi
     Loaded: loaded (/lib/systemd/system/unifi.service; enabled; vendor preset: enabled)
     Active: active (running) since Mon 2023-08-28 09:50:20 UTC; 51s ago
    Process: 11195 ExecStartPre=/usr/sbin/unifi-network-service-helper init (code=exited, status=0/SUCCESS)
    Process: 11254 ExecStartPre=/usr/sbin/unifi-network-service-helper init-uos (code=exited, status=0/SUCCESS)
    Process: 11264 ExecStartPost=/usr/sbin/unifi-network-service-helper healthcheck (code=exited, status=0/SUCCESS)
   Main PID: 11263 (java)
      Tasks: 88 (limit: 4541)
     Memory: 772.7M
     CGroup: /system.slice/unifi.service
             ├─11263 /usr/bin/java -Dfile.encoding=UTF-8 -Djava.awt.headless=true -Dapple.awt.UIElement=true -Dunifi.core.enabled=false -Dunifi.mongodb.service.enabled=false -Xmx1024M -XX:+UseParal>
             └─11323 bin/mongod --dbpath /usr/lib/unifi/data/db --port 27117 --unixSocketPrefix /usr/lib/unifi/run --logRotate reopen --logappend --logpath /usr/lib/unifi/logs/mongod.log --pidfilep>

Aug 28 09:49:50 focal unifi[11253]: init complete...
Aug 28 09:49:50 focal unifi-network-service-helper[11253]: <13>Aug 28 09:49:50 unifi: init complete...
Aug 28 09:49:50 focal unifi[11273]: health-check max retry count: 100
Aug 28 09:49:50 focal unifi-network-service-helper[11273]: <13>Aug 28 09:49:50 unifi: health-check max retry count: 100
Aug 28 09:50:20 focal systemd[1]: Started unifi.

Службы должны быть доступны через порт 8080 и порт 8443.

jmutai@unifi-controller:~$ ss -tunelp | egrep '8080|8443'
tcp   LISTEN  0       100                           *:8443               *:*     uid:112 ino:47897 sk:a v6only:0 <->
tcp   LISTEN  0       100                           *:8080               *:*     uid:112 ino:47891 sk:e v6only:0 <->

Основные файлы журналов сетевого приложения UniFi

  • /usr/lib/unifi/logs/server.log
  • /usr/lib/unifi/logs/mongod.log

Получите доступ к сетевому приложению UniFi в веб-браузере, используя IP-адрес сервера и порт 8443.

https://172.20.30.20:8443/

Вы получите предупреждения SSL при попытке доступа к порталу. Игнорируем и приступаем к настройке.

Укажите имя для вашего сетевого приложения.

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

Рассмотрите возможность включения автоматического резервного копирования конфигураций вашей сети.

Устройства Ubiquiti, находящиеся в той же сети, что и контроллер, будут обнаружены автоматически. Выберите вариант, который вы хотите настроить.

Определите свою первую сеть Wi-Fi, если это новая конфигурация сети UniFi.

По завершении проверьте настройки, чтобы завершить установку.

Установка должна завершиться через несколько секунд.

Вам будет представлен интуитивно понятный интерфейс, в котором можно выполнить большинство действий.

Направление устройств UniFi на существующий контроллер UniFi

Если ваша новая установка предназначена для замены старого контроллера, войдите в систему устройств UniFi и установите информационный адрес для нового адреса и порта сервера. См. пример ниже.

set-inform http://172.20.30.20:8080/inform

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

US-16-150W-US.6.2.14# info

Model:       US-16-150W
Version:     6.2.14.13855
MAC Address: 98:8a:20:fd:ea:94
IP Address:  192.168.1.116
Hostname:    US-16-150W
Uptime:      992330 seconds

Status:      Connected (http://172.20.30.20:8080/inform)

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

Статьи по данной тематике: