Mit FileZilla Server & Client eine verschlüsselte Verbindung einrichten
Man muss immer mal wieder eine oder mehrere Dateien über das netz austauschen, dafür bieten sich eigentlich Transfersysteme wie ICQ oder IRC-DCC an. Allerdings gibt es damit sehr oft Probleme, da viele Router damit nicht umgehen können. Alternativ könnte auch die Daten auf einen 1-Klick-Hoster hochladen, aber besonders bei sensiblen Daten ist es sehr unangenehm seine Dateien der öffentlichkeit auszusetzen. Eine andere möglichkeit wäre es einen Webserver aufzusetzen, der sogar Verschlüsselung (HTTPS) unterstützen kann aber dafür frisst z.B ein normal-installierter Apache mit seinen 255 threads einen nicht zu unterschätzenden Arbeitsspeicheranteil. Auch ein Passwortschutz ist vergleichsweise schwer einzurichten.
Am besten ist da noch man greift auf das gute alte FTP zurück. In diesem Tutorial verwenden wir FileZilla FTP, da es durch XAMPP auf Windowsrechnern eine weite Verbreitung hat und ein komfortables GUI bietet.
Inhalt:
1. Einrichtung des FileZilla FTP Servers.
1.1 Download und Installation.
1.2 Einrichtung von Nutzern.
1.3 Einrichtung der Verschlüsselung.
2. Einrichtung des FileZilla Clients.
2.1 Download und Installation.
2.2 Einrichtung der Serververbindung.
1. Einrichtung des FileZilla FTP Servers.
1.1 Download und Installation.
Anmerkung: XAMPP-Nutzer können diesen Schritt überspringen, FileZilla Server ist standardmäßig unter xampp\FileZillaFTP installiert. Voraussetzung für den nächsten Schritt ist allerdings, das FileZilla Server als Dienst läuft, wie das geht steht in der XAMPP-manual.
Zuerst muss man sich natürlich die Server-Software herunterladen, die jeweils aktuelle Version bekommt man als Installer auf SourceForge die bei der Installation braucht man nur den Schritten folgen, nur bei "chose how the interface should be startet" sollte man "start manually" wählen, um nicht noch einen Prozess immer zu starten.
1.2 Einrichtung von Nutzern.
Nun startet man das FileZilla Server interface (wenn es nicht schon durch ein "Fz" symbol in der Taskleiste gestartet ist). Es befindet sich in
<FileZilla Server installationspfad>/FileZilla Server Interface.exe
evtl. muss man nocheinmal auf "OK" klicken um sich einzuloggen.
Nun öffnet man mit Edit => Users die Nutzerverwaltung:

Mit einem Klick auf "Add" und Eingabe eines Usernamens hat man einen neuen User erstellt. Sinnvoll ist es ein Passwort einzustellen ;-). Mit "Force SSL for User Login" kann man eine gesicherte Verbindung erzwingen, dazu später mehr.
Unter "Shared Folders" kann man nun per "Add" einen neuen Ordner freigeben und evtl. noch spezifische Rechte verteilen.
Wichtig: Um eine erfolgreiche Verbindung von auserhalb zuzulassen müssem evtl. erst in einem Router/Firewall die Ports 20 und 21 freigeschaltet werden.
1.3 Einrichtung der Verschlüsselung.
Nun öffnet man per Edit => Settings => SSL/TLS settings die Verschlüsselungsinstellungen des Servers und klickt auf "Generate New Certificate":

Die Einstellungen kann ganz nach laune vorgeben, allerdings sollte man aufpassen, das man den User nicht zusehr verwirrt.
Danach stellt man noch unter "Private key file" und "Certificate file" die generierte Datei an:

Anmerkung: Auch wenn es so aussieht, Port 22 muss nicht freigegeben sein, damit man von aussen verbinden kann! Er wird nur für SFTP-Verbindungen benötigt.
Gratulation, der Server ist nun eingerichtet und wartet auf Verbindungen :).
Anmerkung:
Sollte es Probleme mit dem Verbindungsaufbau vom Internet aus geben (Can't open Data Connection), sollte man den FileZilla Server so konfigurieren, dass er eine bestimmte Port-Range für die Data Connections nimmt. Man findet diese Einstellung im FileZilla Server Interface unter "Passive Mode Settings".

Je nach Anzahl der Nutzer des Servers sollte man die Portmenge wählen (hier 1901-1911 also max. 10 gleichzeitige Verbindungen). Welche Ports man dafür nimmt ist eigentlich egal, sie sollten nur über 1024 liegen, da niedrigere Ports für bestimmte Anwendungen reserviert sind. Die eingetragenen Ports gibt man dann noch in seinem Router frei.
Vielen Dank an s3nf für den Tip.
2. Einrichtung des FileZilla Clients.
2.1 Download und Installation.
Zuerst lädt man sich von SourceForge die Aktuelle FileZilla Version herunter und installiert sie.
Danach einfach starten.
2.2 Einrichtung der Serververbindung.
Zunächst öffnet man den Servermanager (Datei => Seitenverwaltung) und erstellt eine Neue Seite

Info: Eine implizite SSL/TLS-Verbindung ist komplett verschlüsselt.
Eine explizite SSL/TLS Verbindung wird verschlüsselt, sobald der Username gesendet wurde.
Allerdings gibt es mit impliziten Verbindungen öfters Probleme, deshalb empfehle ich "FTP über TLS (Explizite Verschlüsselung).
Nach einem klick auf "Verbinden" sollte sich der Client erfolgreich zum Server verbinden, nachdem das Zertifikat vom User angenommen wurde.
