Voor het gebruik van Unifi Protect moet je gebruik maken van de IP camera’s van Ubiquity zelf. Met een truc kun je echter ook andere camera’s gebruiken. Hiervoor moet je gebruik maken van speciale proxy software genaamd unifi-cam-proxy.

Volg hiervoor de volgende instructies om dit voor elkaar te krijgen. In principe komt het erop neer dat je voor elke IP camera een certificaat en een ‘Adoption Token’ moet generen. Deze gebruik je vervolgens om je IP camera toe te voegen aan Unifi Protect.

Eenmalige installatie

Installeer de proxy software op je Debian server met de volgende commando’s:

apt install ffmpeg netcat python3 python3-pip
pip3 install unifi-cam-proxy

Installatie voor elke camera

Je moet voor elke camera de volgende data verzamelen:
1. Genereren certificaat
2. Genereren ‘Adoption Token’

Genereren Certificaat

Voer de volgende commando’s uit om een certificaat te genereren:

openssl ecparam -out /tmp/private.key -name prime256v1 -genkey -noout
openssl req -new -sha256 -key /tmp/private.key -out /tmp/server.csr -subj "/C=TW/L=Taipei/O=Ubiquiti Networks Inc./OU=devint/CN=camera.ubnt.dev/emailAddress=support@ubnt.com"
openssl x509 -req -sha256 -days 36500 -in /tmp/server.csr -signkey /tmp/private.key -out /tmp/public.key
cat /tmp/private.key /tmp/public.key > client.pem
rm -f /tmp/private.key /tmp/public.key /tmp/server.csr

Genereren ‘Adoption Token’

Om je IP camera aaan Unifi Protect toe te voegen moet je ook een zogenaamde ‘Adoption Token’ genereren die maximaal 60 minuten geldig is om de camera te kunnen toevoegen tijdens de setup van Unifi Protect. De ‘Adoption Token’ verkrijg je door eerst een QR code aan te maken met de volgende URL die je met je Internet Browser (bijvoorbeeld Firefox) uitvoert:

http://<IP adres Unifi Dream Machine Pro>/proxy/protect/api/cameras/qr

Vervolgens save je deze QR code (met PNG extensie) naar je harde schijf. Ga nu naar de volgende URL:

https://zxing.org/w/decode.jspx




Upload je zojuist gesaved QR code and druk submit.



Vervolgens moet je waarde van de voorlaatste regel in het ‘Raw Text’ veld overnemen. Dit is je ‘Adaption Token’.

Uitvoeren unifi-cam-proxy

Je moet nu voor elke IP camera ‘unifi-cam-proxy’ uitvoeren. Afhankelijk van je type camera is de syntax was anders (zie ook de documentatie van ‘unifi-cam-proxy’). Voor mijn Dahua camera’s was dit:

unifi-cam-proxy -H 192.168.1.1 -i 192.168.1.201 -c qr_bijkeuken.pem --token yVFuWdmmhq5r1NbuaeMzgAWxMhIayNsQ dahua -u gebruiker -p wachtwoord --ffmpeg-args="-f lavfi -i anullsrc -c:v copy -ar 32000 -ac 1 -codec:a aac -b:a 32k"

(hierbij is 192.168.1.1 het IP-adres van mijn Unifi Dream Machine Pro en 192.168.1.201 het IP adres van mijn camera. Verder zie je hierboven het gegenereerde certificaat (achter -c) en ‘Adaption Token’ (achter –token))

Hierna zal de camera automatisch worden toegevoegd aan je Unifi Protect lijst als zijnde een G3 camera.

Conclusie

De software is niet erg stabiel en ik moest flink experimenteren om het aan de praat te krijgen. Zo moest ik gebruik maken van Unifi Protect 2.0 om de QR code te generen en weer downgraden naar Unifi Protect 1.21.2 om beeld te zien van de IP camera’s.

Downgraden van Unifi Protect kun je doen door met SSH naar je Unifi Dream Machine Pro te gaan en vervolgens de volgende commando’s te gebruiken

unifi-os shell
apt-get update
apt-get install --reinstall --allow-downgrades unifi-protect=1.21.2

Het werkt allemaal nog niet erg stabiel, maar wellicht wordt dat opgelost met updates van ‘unifi-cam-proxy’. Mijn voorkeur gaat vooralsnog toch nog uit naar NX Witness software voor mijn IP camera’s.