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-ID: 415687

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

Ausgedruckt am: 17.12.2024 um 03:12 Uhr

godlie
godlie 08.02.2019 um 15:46:05 Uhr
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 ...
Saftnase
Saftnase 08.02.2019 um 16:21:27 Uhr
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.
clSchak
clSchak 08.02.2019 um 16:27:45 Uhr
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
Saftnase
Saftnase 08.02.2019 um 16:34:34 Uhr
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.
NetzwerkDude
Lösung NetzwerkDude 08.02.2019 um 16:37:13 Uhr
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
Saftnase
Saftnase 08.02.2019 um 16:51:49 Uhr
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.
NetzwerkDude
NetzwerkDude 08.02.2019 um 17:14:00 Uhr
Goto Top
Kraemer
Lösung Kraemer 08.02.2019 um 17:27:42 Uhr
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ß
StefanKittel
StefanKittel 08.02.2019 um 21:03:26 Uhr
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
Saftnase
Saftnase 11.02.2019 um 09:00:38 Uhr
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.
StefanKittel
StefanKittel 11.02.2019 um 09:25:30 Uhr
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
Saftnase
Saftnase 11.02.2019 aktualisiert um 10:49:12 Uhr
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)
NetzwerkDude
NetzwerkDude 11.02.2019 um 12:41:23 Uhr
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
Saftnase
Saftnase 11.02.2019 um 13:09:25 Uhr
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.
StefanKittel
StefanKittel 11.02.2019 um 13:48:50 Uhr
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