saftnase
Goto Top

FTP Server für elektronische Rechnungen

Moin moin,

ich bin gerade dabei eine Bereitstellung von elektronischen Rechnungen (PDF) im ZUGFerD Format umzusetzen.
Nachdem ich mit dem ganzen XML Gedöns für die PDFs fertig war und mich schon gefreut habe die Rechnungen per E-Mail zu versenden, kam natürlich prompt der Wunsch nach einem Nachschlag von der Kundschaft.
Die PDFs sollen jetzt auch zum Abruf per FTP zur Verfügung gestellt werden. Das Problem ist jetzt nicht die Erzeugung und Ablage der Files. Der Drops ist schon gelutscht.
Die Dateien werden für jeden Kunden in einem eigenen Ordner (Ordnername=Kundennummer) abgelegt.

Mein Problem ist, dass ich mir nicht die ganze Userverwaltung ans Bein binden will.
Daher wäre mein Ansatz folgender:
Im unserer Kundendatenbank wird das Passwort gespeichert. Nachts wird der Kundenstamm per Skript mit dem Userverzeichnis des FTP Servers abgeglichen und
FTP-Username=Kundennummer, FTP-Userhome=Kundennummer und FTP-Userpass gesetzt.

Wer kennt bzw. hat Erfahrungen mit einem FTP Server dessen User per Skript verwaltet werden können.
Ich hab mit den FileZilla mal angeschaut. Dort werden die User in einem XML File gespeichert.
Bei 8000 Usern habe ich aber Bedenken, ob der das packt.

Content-Key: 415687

Url: https://administrator.de/contentid/415687

Printed on: April 18, 2024 at 19:04 o'clock

Member: godlie
godlie Feb 08, 2019 at 14:46:05 (UTC)
Goto Top
Hallo,

der Fielzilla Server kann aber auch an LDAP / AD angebunden werden, da ist es dann ziemlich nüsse wieviel User drinnen sind face-smile

https://dethadoesit.wordpress.com/2017/03/27/ldap-authentication-on-file ...
Member: Saftnase
Saftnase Feb 08, 2019 at 15:21:27 (UTC)
Goto Top
Wenn ich den Beitrag recht verstanden hab, dann erfolgt nur die Authentifizierung gegen LDAP.
Die User und Verzeichnisse müssen trotzdem noch in der XML angelegt werden.
Da kann ich auch gleich das Passwort dort eintragen und mir den LDAP sparen.
Member: clSchak
clSchak Feb 08, 2019 at 15:27:45 (UTC)
Goto Top
Hi

8000 ist doch jetzt nicht so die riesen Anzahl, hängt halt auch davon ab welche Hardware im Einsatz ist - ob die das pakt, es werden wohl eher nicht alle gleichzeitig auf den Dienst zugreifen.

Und zum anderen würde ich das alles wenn überhaupt nur SFTP machen und dem Server ein signiertes Cert geben, dann bist auf der sicheren Seite.

Ich würde es testen, ansonsten eine Linux VM aufsetzen und als FTP Server einrichten inkl. einem SAMBA Share damit du aus der Windowswelt einfach die Daten dort ablegen kannst. Import der Daten dann via Bash oder Python Script.

Gruß
@clSchak
Member: Saftnase
Saftnase Feb 08, 2019 at 15:34:34 (UTC)
Goto Top
@clSchak
Es geht weniger um den gleichzeitigen Zugriff, sondern ob der FileZilla überhaupt noch startet bzw. beim Login des Users ewig braucht wenn er seine ganze Konfig immer erst laden muss.
Member: NetzwerkDude
Solution NetzwerkDude Feb 08, 2019 at 15:37:13 (UTC)
Goto Top
vsftpd kann seine User via MySQL verwalten (pam ist die schnittstelle)
siehe z.B. hier:
https://www.howtoforge.com/virtual-hosting-with-vsftpd-and-mysql-on-ubun ...

d.h. du müsstest die SQL Datenbank via Skript verwalten, vsftpd bedient sich dessen

Das schöne ist das du das passwort in der Datenbank auch als hash ablegen kannst face-smile
Member: Saftnase
Saftnase Feb 08, 2019 at 15:51:49 (UTC)
Goto Top
@NetzwerkDude
Das hört sich schon mal gut an. Muss mir nur noch was einfallen, wie ich das Homedir des Users anlege und die Berechtigungen einrichte.
Wäre toll wenn der vsftpd das selbst könnte.
Member: NetzwerkDude
NetzwerkDude Feb 08, 2019 at 16:14:00 (UTC)
Goto Top
Member: Kraemer
Solution Kraemer Feb 08, 2019 at 16:27:42 (UTC)
Goto Top
Moin,
Zitat von @Saftnase:
Bei 8000 Usern habe ich aber Bedenken, ob der das packt.
https://forum.filezilla-project.org/viewtopic.php?t=14667

Gruß
Member: StefanKittel
StefanKittel Feb 08, 2019 at 20:03:26 (UTC)
Goto Top
Hallo,

wir verwenden dazu einen Web-Server.
Jeder Kunde hat sein Verzeichnis.
Verschlüsselt mit SSL und Zugriffsgeschützt mit htaccess und Fail2Ban.

In jedem Verzeichnis gibt es eine php-Datei die eine Liste der Rechnungen erstellt und jedes Verzeichnis hat seine htaccess und htpassword.
Total einfach, simpel und sicher.

Und man kann das auch ganz einfach als Kunde per Skript runterladen.

Aber: halt kein FTP.

Stefan
Member: Saftnase
Saftnase Feb 11, 2019 at 08:00:38 (UTC)
Goto Top
@Kraemer Ja leck mich fett. Hätte nicht gedacht dass der kleine FileZilla dafür in Frage kommt. Für mich war es eher ein Quick and Dirty Ansatz, weil ich den Hinweis mit den Usern in der XML im Filezilla Forum gefunden hatte.

@StefanKittel Das wäre natürlich auch meine bevorzugte Lösung, am Besten noch mit Self-service Userverwaltung. Aber leider funktioniert ZUGFerD nur per E-Mail oder FTP.

Danke allerseits. Ich werde jetzt mal den FileZilla Ansatz verfolgen.
Member: StefanKittel
StefanKittel Feb 11, 2019 at 08:25:30 (UTC)
Goto Top
Hallo,

Zug(p)ferd ist doch eine PDF-Datei mit eingebundener XML-Datei.
Da ist doch egal wo die gespeichert wird ode übersehe ich da etwas?

Stefan
Member: Saftnase
Saftnase Feb 11, 2019 updated at 09:49:12 (UTC)
Goto Top
Das ist korrekt. Aber die Art des Abrufs ist entscheidend.
Den meisten unserer Kunden reicht es auch die Rechnung per E-Mail zu bekommen und dann manuell ins ERP zu importieren.
Aber die größeren haben die Prozesse soweit automatisiert, dass auch der Abruf und Import automatisch abläuft.
Und das geht (ohne Benutzeraktion) nur per FTP. (ggfs. noch per WEBDav, OneDrive, etc..)
Einen Zugriff über eine HTTPS Verbindung haben die ERP Hersteller noch nicht implementiert.
(Bisher können ZUGFerD eh nur die wenigsten, aber wir gehen davon aus dass es sich bald auch im Handwerk rumspricht)
Member: NetzwerkDude
NetzwerkDude Feb 11, 2019 at 11:41:23 (UTC)
Goto Top
Ich kenne ZUGFerD nicht, daher mal ganz doof gefragt:
- Ich hoffe es ist FTPES - weil sensible Daten via plaintext FTP zu übertragen wäre ziemlich risky, weil es weder confidentiality noch Integrity auf dem Übertragungsweg bietet
Member: Saftnase
Saftnase Feb 11, 2019 at 12:09:25 (UTC)
Goto Top
ZUGFerD sind nur zusätzliche Daten zu einer normalen Rechnung im XML Format für die maschinelle Verarbeitung.
Also keine sensiblen Daten, trotzdem werden wir eine TLS Verschlüsselung anbieten.
Viel wichtiger ist der Zugangsschutz. Nicht dass ein böser auf die Idee kommt in den PDFs noch was anderes zu verstecken.
Member: StefanKittel
StefanKittel Feb 11, 2019 at 12:48:50 (UTC)
Goto Top
Zitat von @Saftnase:
Viel wichtiger ist der Zugangsschutz. Nicht dass ein böser auf die Idee kommt in den PDFs noch was anderes zu verstecken.
Du kannst die Berechtigungen ja auch so einstellen, dass der FTP-Server in dem Verzeichnis nur lesen kann...

Stefan