Weitere Informationen zum Thema FTP findet man
bei Wikipedia.
Allgemeine Einstellungen:
- Kennwort: Nach Klick auf die Schaltfläche rechts öffnet sich ein Dialog zur
Eingabe eines festen Kennworts, so dass später der Verbindungsaufbau beim Backup vollautomatisch
erfolgt. Wird darauf aus Sicherheitsgründen verzichtet, muss
dies später vor jedem Backup von Hand vorgenommen werden.
- Zielverzeichnis: Das Zielverzeichnis kann von Hand eingegeben werden oder, wenn die Verbindungsdaten
(Servername, Benutzername, etc.) vollständig sind, durch Klick auf die Schaltfläche
in einem Dialog ausgewählt werden. Es darf außerdem einen oder mehrere Platzhalter,
z.B. für Datum und Zeit, enthalten, die durch Klick auf Schaltfläche
aus einer Liste ausgewählt
werden können.
- Sichere Verbindung verwenden:
Die Datenübertragung erfolgt optional verschlüsselt mit
TLS/SSL (FTPS):
- Keine: Alle Daten werden unverschlüsselt übertragen.
- Wenn verfügbar (explizit): Nach der Verbindung mit dem Server wird von
diesem abgefragt, ob er TLS/SSL unterstützt. Wenn dies der Fall ist,
werden alle Daten verschlüsselt übertragen (Explizite Methode), andernfalls
unverschlüsselt.
- Anfordern (explizit): Es wird erwartet, dass der Server TSL/SSL
unterstützt (Explizite Methode). Wenn dies nicht der Fall ist, wird die
Verbindung abgebrochen.
- Immer (implizit): Der gesamte
Datentransfer mit dem Server wird unter Verwendung eines besonderen Ports (990)
verschlüsselt (Implizite Methode). Wenn der Server dies nicht unterstützt,
wird die Verbindung abgebrochen.
Für sichere Verbindungen wird die Option Anfordern empfohlen.
Der FTP-Server muss eine der TLS-Versionen 1, 1.1 oder 1.2 unterstützen
(weitere Infos).
- Optionen:
- Passiv-Modus verwenden: Im passiven Modus bestimmt der
Server das Port für den Datentransfer, im aktiven Modus der Klient.
- UTF-8-Kodierung erzwingen:
Einige Server unterstützen zwar einen Datentransfer in der
UTF8-Kodierung
(z.B. erforderlich für Dateinamen mit Umlauten), zeigen dies aber nach dem
Verbindungsaufbau dem Klienten nicht an, obwohl dies in
RFC2640 Kap.3.2
so verlangt wird. Für diesen Sonderfall kann die UTF-8-Kodierung auf der Klientenseite
durch Auswahl dieser Option erzwungen werden. Wenn auch der Server zusätzlich noch auf
den UTF8-Betrieb umgeschaltet werden muss, ist zusätzlich die Option
Sende OPTS-Befehl bei UTF-8 (s.u.) zu setzen.
- IPv6 verwenden: Manche Server sind nur noch über Adressen nach dem
Internetprotokoll
IPv6
zu erreichen Durch Anklicken dieser Option, wird diese Adressierungsart für die
FTP-Verbindung ausgewählt (siehe dazu auch die Option für EPRT/EPSV
weiter unten).
- Weitere Optionen
Die nachfolgenden Optionen (Abb. oben rechts) werden nur benötigt, wenn es mit der
FTP-Verbindung zu Problemen kommt
(siehe hier).
Leider halten sich nicht alle verfügbaren Server konsequent an die Empfehlungen (RFCs) für das
FTP-Protokoll.
Mit den nachfolgenden Optionen können solche Mängel umgangen werden.
- Sende OPTS-Befehl bei UTF-8:
Ein Server, der UTF-8 unterstützt, muss dies dem Klienten nach
dem Verbindungsaufbau anzeigen und dann auch bereit stellen (siehe
RFC2640 Kap.3.2).
Leider gibt es Server, die sich nicht an diese Vorgaben halten. Sie zeigen
an, dass sie UTF-8 unterstützen, erwarten aber trotzdem
vom Klienten eine explizite Umschaltung auf UTF-8 per OPTS-Befehl.
Wenn dies erforderlich ist, muss diese Option angeklickt werden.
- EPRT/EPSV bei IPv6 erzwingen: Wenn die Verbindung zum Server
über das IPv6-Protokoll (siehe oben) erfolgt, müssen bei der Datenübertragung
statt der bei IPv4 üblichen FTP-Befehle PORT und PASV die erweiterten
Befehle EPRT und EPSV verwendet werden.
Normalerweise sollte der Server dies in der Features-Abfrage
dem Klienten mitteilen. Leider gibt es Server, die sich nicht an diese Empfehlung
halten. In diesem Fall muss dies durch Anklicken der Option von Hand eingeschaltet werden.
- Benutze HOST-Befehl: Bei Internet-Providern wird häufig
für alle Benutzer die gleiche FTP-Server-IP verwendet. Mit dem HOST-Befehl
wird dann der dem Benutzer gehörende Bereich zugeordnet.
- Zeitzone
Bei Zeitzonen übergreifenden FTP-Verbindungen kann es manchmal erforderlich sein,
einen Zeitoffset von Hand einzustellen, damit der Vergleich der Zeitstempel richtig
funktioniert.
- Schreibe Kommunikations-Protokoll in Datei:
Zu Testzwecken und zur Fehlersuche kann die Kommunikation mit dem FTP-Server aufgezeichnet werden.
Das Protokoll wird in die Datei PbFtp.log geschrieben, die sich im gleichen Verzeichnis
wie die anderen Protokolle befindet (siehe dazu).
Über das Aktionen-Menü
kann diese Datei angezeigt und gelöscht werden.
Nach einem Klick auf die Schaltfläche für die Erweiterten Einstellungen
öffnet sich die folgende Seite
- Dateinamen:
- Ändern in Klein-/Großbuchstaben: Im Gegensatz zu Windows wird
bei Linux/Unix-Systemen zwischen Groß- und Kleinschreibung von Dateinamen unterschieden.
Mit dieser Einstellung kann eine einheitliche Schreibweise auf dem
Zielserver eingestellt werden.
- Erlaube Dateinamen mit Anführungszeichen:
Bei Dateinamen mit Leerzeichen kann es ebenfalls Probleme geben. Manche
Server erlauben dann (wie auch bei Windows üblich), die Dateinamen durch
Anführungszeichen einzuschließen.
- Zeichen kodieren: Da es auch noch FTP-Server gibt,
die kein UTF-8 unterstützen, kann notfalls für bestimmte benötigte Sonderzeichen
eine numerische Kodierung, wie man sie auch von URL-Adressen kennt, vorgenommen werden
(Bsp.: Leerzeichen = %20).
- Proxy-Server benutzen: Wenn für die Verbindung zum
FTP-Server ein Proxy-Gateway benutzt wird, können hier die benötigten
Einstellungen vorgenommen werden.
- Herstellen der Verbindung:
- Maximale Anzahl der Verbindungsversuche: Hier wird angegeben,
wie oft das Programm versuchen soll, eine Verbindung zum FTP-Server herzustellen,
bevor das Backup abgebrochen wird.
- Maximale Wartezeit beim Verbindungsaufbau: Hier wird die Zeit angegeben, die das
Programm beim Aufbau einer Verbindung auf eine Antwort des FTP-Servers warten
soll. Wenn der Aufbau scheitert, wird ein neuer Verbindungsversuch gestartet,
so lange bis die maximale Anzahl von erlaubten Versuchen (siehe oben) erreicht ist.
- Überwachen der Verbindung:
- Maximale Wartezeit auf Serverantwort: Hier wird die Zeit angegeben, die das
Programm auf eine Antwort des Servers auf einen übermittelten Befehl wartet.
- Keep-Alive-Befehl während der Datenübertragung senden:
Bei manchen FTP-Servern oder Firewalls kann es passieren, dass bei einer längeren
Datenübertragung der Steuerkanal wegen Inaktivität geschlossen wird. Nach
Einschalten dieser Option wird vom System in regelmäßigen Abständen ein
kleines Datenpaket gesendet, um dies zu verhindern.
Überprüfung des Server-Zertifikats
Bei Auswahl einer sicheren Verbindung (siehe oben), erfolgt der Datentransfer
verschlüsselt nach dem TLS/SSL-Verfahren.
Eine zusätzliche Sicherheit lässt sich erreichen, indem man das Verschlüsselungszertifikats
des Servers überprüft. Dies kann entweder durch den Benutzer über eine visuelle Beurteilung
oder automatisch durch Vergleich der digitalen Fingerabdrücke (Fingerprints) erfolgen.
Verfahrensweise
Beim Herstellen einer sicheren Verbindung wird das Server-Zertifikat
(X.509)
heruntergeladen. Es enthält u.a. Angaben über den Aussteller und seine Gültigkeit, sowie
einen digitalen
MD5-Fingerabdruck.
Bevor das Backup startet, werden dem Benutzer diese Angaben angezeigt, damit er beurteilen
kann, ob das Zertifikat vertrauenswürdig ist. Wenn er den digitalen Fingerabdruck
des Server-Zertifikats kennt, kann dieser im Programm gespeichert werden, um beim Herstellen
der Verbindung durch Vergleich mit dem heruntergeladenen eine automatische Überprüfung
zu ermöglichen.
- Server-Zertifikat überprüfen: Wenn diese Feld angekreuzt ist, erfolgt beim Anmelden
eine Überprüfung des Zertifikats
- Interaktiv durch den Benutzer: Bei der Anmeldung wird eine Dialog (siehe Abb. rechts)
geöffnet, in dem die wichtigsten Merkmale des Zertifikats angezeigt werden.
Der grüne Punkt zeigt an, dass das Zertifikat noch gültig ist. Wenn die Gültigkeitszeit
angelaufen ist, ändert sich die Farbe auf rot.
Der Benutzer kann anhand dieser Angaben entscheiden, ob er das Zertifikat als
vertrauenswürdig ansieht. Falls nicht, sollte er die Verbindung durch einen Klick auf die
Nein-Schaltfläche abbrechen.
Wenn das Zertifikat in Ordnung ist, kann der Fingerabdruck durch Klick auf die Schaltfläche
unten rechts in die Zwischenablage kopiert werden, um ihn in den FTP-Einstellungen
für eine automatische Überprüfung (s.u.) einzufügen.
- Automatischer Vergleich der Fingerabdrücke: Bei Auswahl dieser Option muss der
digitale Fingerabdruck des Servers bekannt sein. Eine Möglichkeit ihn zu ermitteln, wird
im vorigen Abschnitt beschrieben. Das Format muss wie im angezeigten Beispiel aussehen
(siehe Abb. rechts, durch Doppelpunkte getrennte Hex-Werte). Es entspricht der Ausgabe des Programms
OpenSSL mit dem Befehl
...\openssl x509 -noout -fingerprint -md5 -inform pem -in <certificate>.crt.
Wenn es z.B., wie oben beschrieben in die Zwischenablage kopiert wurde, kann es einfach
durch Klick auf die entsprechende Schaltfläche in das Feld eingefügt werden.
J. Rathlev, D-24222 Schwentinental, März 2025