Wydrukuj tę dokumentację Pokaż jako slajdy

Instalacja oraz konfiguracja unifi10

Jest to oprogramowanie do zarządzania sprzętami Ubiquiti. U mnie jest to głównie AccessPoint, ale jest to do wszystkiego. Oprogramowanie napisane jest w Java oraz wykorzystuje bazę danych MongoDB.

Instalacja

Za pomocą własnego repozytorium pakietów należy zainstalować oprogramowanie unifi10:

pkg install -Uy net-mgmt/unifi10

Zostaną doinstalowane wszystkie zależności, w tym własna baza danych MongoDB.

rc.conf.d

W ramach katalogu z plikami startującymi usługi musi znaleźć się pliki unifi z zawartością:

unifi_enable="YES"

Konfiguracja unifi

Konfiguracja unifi jest zdefiniowana w pliku /usr/local/share/java/unifi/data/system.properties:

## system.properties
#
# each unifi instance requires a set of ports:
#
## device inform
# unifi.http.port=8080
## controller UI / API
# unifi.https.port=8443
## portal redirect port for HTTP
# portal.http.port=8880
## portal redirect port for HTTPs
# portal.https.port=8843
## local-bound port for DB server
# unifi.db.port=27117
## UDP port used for STUN
# unifi.stun.port=3478
#
## the IP devices should be talking to for inform
# system_ip=a.b.c.d
## disable mongodb journaling
# unifi.db.nojournal=false
## extra mongod args
# unifi.db.extraargs
#
## HTTPS options
# unifi.https.ciphers=TLS_RSA_WITH_AES_256_CBC_SHA,TLS_RSA_WITH_AES_128_CBC_SHA
# unifi.https.sslEnabledProtocols=TLSv1,SSLv2Hello
# unifi.https.hsts=false
# unifi.https.hsts.max_age=31536000
# unifi.https.hsts.preload=false
# unifi.https.hsts.subdomain=false
#
# Ports reserved for device redirector. There is no need to open
# firewall for these ports on controller, however do NOT set
# controller to use these ports.
#
# portal.redirector.port=8881
# portal.redirector.port.wired=8882
#
# Port used for throughput measurement.
# unifi.throughput.port=6789
#
#Sat Apr 18 22:00:17 CEST 2026
reporter-uuid=7769204c-8e5f-418d-be04-7fef29d0b777
is_setup_completed=true
debug.device=warn
debug.mgmt=warn
debug.setting_preference=auto
is_default=false
debug.system=warn
uuid=66a06ecb-6afb-4a81-8053-fa19113b8266
debug.sdn=warn

Własny certyfikat, czyli keystore

Domyślnie unifi generuje własny certyfikat dla usługi webowej (wg forum użytkowników: apache tomcat). Certyfikat jest przechowywany w pliku keystore:

/usr/local/share/java/unifi/data/keystore

UWAGA!!! Ten plik musi spełniać warunki:

Jeżeli te warunki nie będą spełnione (a zwłaszcza zawartość), to przy uruchamianiu usług plik keystore zostanie nadpisany certyfikatem self-signed.

Wygenerowanie certyfikatu

Certyfikat musi spełniać jeden warunek: w SANach muszą być wskazane wszystkie nazwy przypisane nazwy (CN nie ma już znaczenia). Tak więc po poprawnych wygenerowaniu certyfikatu (za pomocą make z własnego repozytorium skryptów należy wygenerować certyfikat PKCS12. Ale ten PKCS12 musi w sobie zabierać całą ścieżkę certyfikacji. Zrobiłem to następująco:

cat unify.wtp3.local.signed.pem x4.ca.bsdserwis.com.issuer.crt.pem x4.ca.bsdserwis.com.root.crt.pem > unify.wtp3.local.chained.pem

A następnie wygenerować już PKCS12:

/usr/local/bin/openssl pkcs12 -export -in /usr/local/etc/ssl/certs/unify.wtp3.local.chained.pem -inkey /usr/local/etc/ssl/private/unify.wtp3.local.key.pem -out /usr/local/etc/ssl//unify.wtp3.local.signed+key.p12

Instalacja certyfikatu w keystore

Po wygenerowaniu certyfikatu należy go zainstalować w keystore. Zgodnie z informacjami znalezionymi w sieci internet, dobrym pomysłem jest zmiana nazwy aktualnego pliku keystore:

mv /usr/local/share/java/unifi/data/keystore /usr/local/share/java/unifi/data/keystore.bckp

A następnie utworzenie nowego. Aby nie bylo problemu z uprawnieniami do pliku można to wykonać jako użytkownik unifi:

su -m unifi

keytool -importkeystore -srckeystore /tmp/unify.wtp3.local.signed+key.p12 -srcstoretype PKCS12 -destkeystore /usr/local/share/java/unifi/data/keystore -deststoretype PKCS12 -destalias unifi -alias 1 -storepass aircontrolenterprise

chmod 0600 /usr/local/share/java/unifi/data/keystore

exit

Uruchomienie usługi unifi

service unifi start

I po uruchomieniu WebUI przez przeglądarkę nie ma problemu, że certyfikat jest podejrzany :-)


{i}  (c) 2004 - 2026 BSD Serwis Krzysztof Stryjek. W przypadku błędów, poprawek proszę kontaktować się z administratorem wiki.

UniFi (ostatnio edytowane 2026-04-19 10:39:12 przez wtps0n)