Nginx von Raspbian kopieren
https://wiki.satria.de/index.php?title=MotionEyeOS
Da MotionEyeOs gut gegen Schreibzugriffe gesichert ist und auch kein apt nutzt, muss man etwas kreativ werden. Glücklicherweise ist Nginx nur ein kleines Paket und kann leicht von Raspbian kopiert werden.
Folgende Dateien werden benötigt:
/etc/nginx/nginx.conf
/etc/nginx/*
/usr/lib/libpcre.so.3.13.3 plus Symlink auf /usr/lib/libpcre.so.3
/usr/sbin/nginx
/var/lib/nginx/ (Ordner muss nur angelegt werden. Berechtigung muss für www-data vergeben werden, damit nginx dort temporäre Dateien speichern kann. Mit chown www-data:root /var/lib/nginx/)
/var/log/nginx/ (Ordner muss nur angelegt werden)
Schreibzugriff auf das Dateisystem
Dateisystem:
mount -o remount,rw /
Bootpartition:
mount -o remount,rw /boot
Nginx Konfiguration
server {
listen 80;
listen [::]:80;
listen 443 ssl;
ssl_certificate /etc/nginx/ssl/example.crt;
ssl_certificate_key /etc/nginx/ssl/example.key;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers HIGH:!aNULL:!MD5;
server_name example.com;
location / {
proxy_pass http://localhost:8080/;
proxy_cache off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
}
SSL Zertifikat mit OpenSSL erzeugen
Siehe OpenSSL Befehlsübersicht
Init.d Script anlegen
Das mit Raspbian gelieferte Bootscript ist zu komplex, daher nutzen wir für MotionEyeOs das folgende.
/etc/init.d/S89nginx
case "$1" in
start)
echo Starting nginx...
/usr/sbin/nginx
;;
stop)
echo Terminating all nginx instances...
killall nginx
;;
*)
echo "Usage: /etc/init.d/nginx {start|stop}"
exit 1
;;
esac
exit 0