Pure-FTPd auf einem Raspberry Pi
- Installation
- Grundlegende Konfigurationen
- FTP-Home-Verzeichnis, virtueller Benutzer und Benutzergruppe
Updates:
Wir wollen mit dem FTP (File Transfer Protocol) Snapshots zwischen unserer INSTAR IP Kamera und unserem Raspberry Pi übertragen. Befolgen Sie die folgenden Schritte, um einen FTP-Server einzurichten.
Installation
- Verwenden Sie Ihr SSH-Terminal (Windows-Benutzer können das kostenlose Terminal von Mobatermverwenden) um sich mit Ihrem Pi zu verbinden (Standard Login: Benutzer=openhabian und Kennwort=openhabian für die openHABian Installation).
- Installieren Sie Pure-FTPd mit der folgenden Befehlszeile im Terminal:
sudo apt-get install pure-ftpd
.
Grundlegende Konfigurationen
- Wir müssen eine neue Benutzergruppe namens ftpgroup und einen neuen Benutzer namens ftpuser für FTP-Benutzer erstellen und sicherstellen, dass dieser "Benutzer" keine Anmeldeberechtigung und kein Home-Verzeichnis hat:
sudo groupadd ftpgroup
sudo useradd ftpuser -g ftpgroup -s /sbin/nologin -d /dev/null
FTP-Home-Verzeichnis, virtueller Benutzer und Benutzergruppe
- Wir haben bereits ein öffentliches Verzeichnis im Ordner /.node-red/static/ in unserem openhabian Home-Verzeichnis erstellt. Erstellen Sie dort ein neues Verzeichnis ftp mit einem Unterordner für unsere erste Kamera (in meinem Fall ist es officecam):
sudo mkdir /home/openhabian/.node-red/static/ftp/officecam/
- Sie werden nach Ihrem Passwort gefragt, das standardmäßig
openhabian
ist - aber Sie haben es vielleicht in einem früheren Schritt geändert. - Stellen Sie sicher, dass das Verzeichnis für ftpuser zugänglich ist, damit unsere Kamera dort Dateien lesen und schreiben kann:
sudo chown -R ftpuser:ftpgroup /home/openhabian/.node-red/static/ftp/officecam/
- Create a virtual user named upload, mapping the virtual user to ftpuser and ftpgroup, setting home directory
/home/openhabian/.node-red/static/ftp/
, and record password of the user in database. Notice that we set the path to/home/openhabian/.node-red/static/ftp/
and NOT to/home/openhabian/.node-red/static/ftp/officecam
- this way we can use the same FTP user for all our cameras and just have to assign different upload directories in the FTP Configuration of our cameras -./officam
in case of our first camera. In your case it might make sense to use a different FTP user with a different home directory for each camera? You can make that decision here:
sudo pure-pw useradd upload -u ftpuser -g ftpgroup -d /home/openhabian/.node-red/static/ftp/ -m
- Geben Sie ein Kennwort für diesen virtuellen Benutzer ein, wenn Sie dazu aufgefordert werden.
- Als nächstes richten Sie eine virtuelle Benutzerdatenbank ein, indem Sie Folgendes eingeben:
sudo pure-pw mkdb
- Zu guter Letzt definieren Sie eine Authentifizierungsmethode, indem Sie eine Verknüpfung der Datei erstellen
/etc/pure-ftpd/conf/PureDB
:
sudo ln -s /etc/pure-ftpd/conf/PureDB /etc/pure-ftpd/auth/60puredb
- Starten Sie danach den FTP Dienst neu:
sudo service pure-ftpd restart
- Sie können den FTP-Upload mit Ihrer INSTAR-Kamera mit der FTP-Test-Funktion testen:
Gehen Sie zurück zu Ihrem Terminal, gehen Sie zum Upload-Verzeichnis und listen Sie alle Dateien auf:
cd /home/openhabian/.node-red/static/ftp/officecam
ll
Dein Test-Upload sollte unten aufgeführt sein - eine JPG-Bilddatei mit einem Namen, der mit einem T gefolgt von einem Zeitstempel beginnt: