Verschlüsselten Datentransfer mit FTPS oder SFTP Server kostenlos einrichten

Was ist FTP, SFTP und FTPS?

FTP steht für File Transfer Protocol, eines der Protokolle die bereits seit den Ursprüngen des Internet bestehen, parallel zum bekannteren Hypertext Transfer Protocol HTTP. Wie der Name bereits suggeriert, ist der Zweck des FTP die Übertragung von Dateien. FTP in seiner ursprünglichen Form wurde 1985 spezifiziert, und überträgt Daten im Klartext, ohne Verschlüsselung. Heute gibt es Alternativen mit Verschlüsselung:

Obwohl sich die Abkürzungen zum Verwechseln ähneln (FTPS vs. SFTP), handelt es sich um grundlegend unterschiedliche Protokolle.

FTP über TLS (FTPS) ist eine Weiterentwicklung des ursprünglichen FTP. Hier wird eine TLS verschlüsselte Verbindung aufgebaut, und darin über FTP kommuniziert.

SSH File Transfer Protocol (SFTP) ist eine Weiterentwicklung des SSH Protokolls, welches mit dem ursprünglichen FTP nichts zu tun hat. SSH wurde zum Austauschen von Befehlen entwickelt, und später wurde die Möglichkeit des Datentransfers hinzugefügt.

Beide Protokolle bieten die Möglichkeit der verschlüsselten Übertragung. SSH ist grundsätzlich verschlüsselt, und FTP über TLS muss am Server richtig konfiguriert werden, um unverschlüsselte Verbindungen zu unterbinden. SSH benötigt einen Port, FTP über TLS benötigt zwei Ports. In beiden Fällen müssen Router und Firewalls konfiguriert werden, um einen dahinter liegenden Server ansprechen zu können. Ein ausführlicher Vergleich der beiden Methoden findet sich hier: SFTP vs. FTPS Comparison, und weitere Vergleiche lassen sich leicht recherchieren.

Einen Server betreiben

Ich möchte gern meinen eigenen, privaten, verschlüsselten Server für den Datentransfer betreiben. Wichtig zur Anwendung der Protokolle um einen privaten Server zu betreiben ist die Verfügbarkeit einer passenden, kostenlosen Server Software.

Drei kostenlose Server mit Installationsanleitung.

FTPS: Ein kostenfreier, einfach nutzbarer Server ist FileZilla Server. Dieser kann die Verschlüsselung der Datenübertragung erzwingen, das ist wichtig. Der der Zugang durch eine Firewall ist handhabbar (das wird hier ebenfalls erklärt). Sehr gute Benutzerverwaltung. Diese Variante wird auf dieser Seite näher erläutert. Punkte 1-6: FTPS mit FileZilla Server

SFTP: Ein für private Zwecke kostenfreier Server ist der Bitvise SSH Server. Der Server punktet durch relativ einfache Installation und Nutzerverwaltung, sowie die Möglichkeit, optional sehr viele zusätzliche Einstellungen vorzunehmen. Diese Variante wird auf dieser Seite näher erläutert. Punkte 7-10: SFTP mit Bitvise SSH Server.

SFTP: Ein weiterer für private Zwecke kostenfreier Server ist der /n Software SFTP Server 2020. Leider sind Nutzer, Berechtigungen und Verzeichnisse nicht über die Maske des Verwaltungsprogramms konfigurierbar, so dass in der Grundeinstellung allen Nutzern dasselbe Verzeichnis mit Vollzugriff zur Verfügung steht. Zudem ist Konfiguration der Benutzerkonten für mich unpassend. In der Grundeinstellung werden Windows Anmeldedaten für die SFTP Anmeldung verwendet. Da ich unwillig bin diesen Weg zu gehen, nutze ich als Alternative die Anmeldung mit Schlüsseldateien. Hierzu muss ich zusätzlich PuTTY installieren, um die Schlüssel zu erstellen. Eine Erläuterung zur dieser Methode gibt es ebenfalls hier. Punkte 11-16: SFTP mit /n Software SFTP Server.

Hier kommen die Anleitungen!

Inhalt:

  1. FileZilla Server herunterladen
  2. Der Installationsroutine folgen
  3. FileZilla Server einrichten
    1. Verbindung und Sicherheit
    2. Benutzer einrichten
  4. Port Fowarding
    • Ports im Router einstellen (Port Forwarding / Portfreigabe)
  5. Firewall
    • Ports in der Windows Firewall einstellen (Eingehende Verbindung zulassen)
  6. Test
  7. Bitvise SSH Server herunterladen
  8. Bitvise SSH Server einrichten
  9. Port Forwarding und Firewall
  10. Test
  11. /n Software SFTP Server herunterladen
  12. SFTP Server einrichten
  13. PuTTY herunterladen
  14. Keyfiles erstellen und in Server / Client einbinden
  15. Port Forwarding und Firewall
  16. Test

 

1.: FileZilla Server herunterladen

https://filezilla-project.org/

Auf der Homepage des FileZilla Project befinden sich zwei Links: Einer für den Client, einer für den Server. Ich interessiere mich für den Server und lade darum die aktuelle Version des FileZilla Server herunter.

 

Ich öffne den den Installer den ich gerade heruntergeladen habe.

Es erscheint eine Sicherheitswarnung, dass das Programm Änderungen am System vornehmen möchte. Die Applikation ist FileZilla Server, Signiert von Tim Kosse. Dies akzeptiere ich.

2.: Der Installationsroutine folgen

Ich wähle einen besonderen Pfad für die Installation, das mache ich bei allen Programmen. Natürlich kann man es auch bei der Voreinstellung lassen.

Da ich nicht möchte, dass der Server automatisch jeden Tag läuft wenn ich am Rechner sitze, sondern selbst bestimmen möchte wann er läuft und wann nicht, wähle ich den manuellen Start. Den Port für die Kommunikation zwischen Server und Konfigurationsoberfläche des Servers kann man ändern, muss man aber nicht.

Im nächsten Dialog wähle ich aus, dass auch die Konfigurationsmaske nur manuell gestartet werden soll. Nach dem Drücken von “Install” wird die Installation abgeschlossen.

3.: FileZilla Server einrichten

3.1.: Verbindung und Sicherheit

Nach erfolgreicher Installation erscheint das Verbindungsfenster des Servers.

Hier kann man einfach ohne Veränderung “Connect” drücken. (Es sei denn, der Port wurde während der Installation geändert, dann muss man den auch hier ändern.) Ein Passwort ist nicht vergeben, dieses Feld bleibt daher leer. Solange kein Passwort vergeben wird, ist der Zugriff auf die Serververwaltung für externe Rechner grundsätzlich gesperrt. (Wenn man die Verwaltung für externe Rechner öffnen möchte, kann unter “Admin Interface Settings” ein Passwort eingestellt werden.)

Die Konfigurationsmaske verbindet sich mit dem Server, der im Hintergrund läuft. Nun ist der Server installiert und läuft, ist aber noch nicht konfiguriert.

Nun beginne ich mit den Einstellungen. Dazu drücke ich auf das entsprechende Zahnrad-Symbol (rot eingekreist im Screenshot oben).

Als erstes zur Sicherheit der Übertragung.

Im Menü “FTP over TLS settings” befinden sich die Einstellungen zur Verschlüsselung. Hier müssen alle Haken gesetzt werden, um die Verschlüsselung der Anmeldung und Datenübertragung zu gewährleisten, und unverschlüsselte Verbindungen auszuschliessen. Ganz wichtig: “Disallow plain unencrypted FTP”.

Wahlweise kann Explicit FTP over TLS zugelassen werden oder nicht. Sowohl Explicit als auch Implicit FTP over TLS führen zu verschlüsselter Datenübertragung, eine Erläuterung findet sich im Filezilla Wiki zu FTP over TLS. Explicit FTP over TLS ist der neuere Standard, daher ist dies meine Wahl.

Für eine sichere Anmeldungen unterstützt der Server Sicherheitszertifikate des Typs X.509. Diese können aus dieser Maske generiert werden. Dazu drückt man auf “Generate new certificate…”.

Hier kann man die Stärke des Schlüssels einstellen, und seine eigenen Daten, mit denen man das Zertifikat signieren möchte.

Alle Felder sind optional, nur den Dateinamen muss man bestimmen. Dann drückt man “Generate certificate” und wartet auf die Erfolgsmeldung.

Nun können die Einstellungen für FTPS so aussehen:

Typischerweise erscheint im Server bereits seit dem Start diese Nachricht:

You appear to be behind a NAT router. Please configure the passive mode settings andd forward a range of ports in your router.

Die erforderlichen Einstellungen findet man im Menü “Passive mode settings”.

Ich habe selbst eine Port Range eingestellt, die ich mir leicht merken kann: 5 mal die 5, und dann einer mehr: 55555 bis 55556.

In das Feld “Use the following IP:” soll die externe IP eingetragen werden. Diese findet man z.B. beim Besuch der Seite whatismyip.com heraus. Dann trägt man die IP hier ein.

Die eigene IP Adresse ist generell wichtig zu wissen, da diese auch an die gewünschten Besucher der Seite gegeben werden muss, damit diese sich mit dem Server verbinden können.

Damit bin ich fertig mit den Einstellungen in diesem Menü, und drücke OK. Die rote Meldung zum NAT Router sollte nun nicht mehr erscheinen.

Wichtig: Externe IP Adressen ändern sich regelmäßig. Darum muss die aktuell gültige IP Adresse sowohl in den Server eingetragen werden, als auch den Benutzern mitgeteilt werden. Dies kann man umgehen, indem ein Dynamic DNS Service verwendet wird. Dazu gehe ich an dieser Stelle aber nicht ein.

3.2.: Benutzer einrichten

Die Benutzer, die sich mit dem Server verbinden sollen, müssen nun noch eingerichtet werden.

Dies geschieht im Benutzermenü. Das ist der kleine Kopf im Fenster des Server Managers.

Unter “General” drückt man den Knopf “Add” und trägt den Namen ein, drückt OK.

 

 

Unter “General” wird der neue Benutzer nun angezeigt, und ein Passwort kann vergeben werden.

Unter “Shared folders” muss der neue Benutzer nun auch noch einen Ordner bekommen, auf den er zugreifen darf.

Für den Ordner bestimmt man nun auch, welche Rechte der Nutzer dort haben soll.

Mit dem Drücken auf OK ist für diesen Benutzer nun alles eingestellt, was man braucht.

Jetzt komme ich zum kritischen Teil. Man muss auch sicherstellen, dass der Benutzer den Weg durch den Router und die Firewall zum Server findet.

4. Port Fowarding

Als erstes muss die Anfrage des Nutzers vom Router auf den richtigen PC weitergeleitet werden. Dem Router teilen wir also durch Port Forwarding mit, unter welcher Adresse er den Server findet.

Dazu muss man sich in die Verwaltung des Routers einloggen. Jeder Router ist anders, das macht eine allgemeine Anleitung schwer zu erstellen.

Für eine Fritz!Box 7590 öffnet man die Benutzeroberfläche, und wählt im Menü „Internet / Freigaben / Portfreigaben“.

Für eine Vodafone EasyBox öffnet man die Benutzeroberfläche, und wählt zuerst oben den Experten-Modus. Dann wählt man im Menü “Internet / Port-Mapping”.

Ist man im passenden Menü angekommen, fügt man neue Port-Freigaben hinzu. Die notwendigen Daten dafür sind die IP Adresse, das Protokoll und die Ports.

Ich möchte die Ports 5555-5556 sowie 990 weiterleiten, für TCP. Dazu sind ggfs. zwei getrennte Regeln notwendig. In der Vodafone Easy-Box sieht das Ergebnis anschließend so aus:

Wie findet man die lokale IP Adresse heraus?

Windows-Taste + R drücken

CMD eintragen und OK drücken. Die Konsole öffnet sich.

Hier den Befehl “ipconfig” eingragen und Enter drücken.

Hier steht sie, die lokale IP Adresse des eigenen Rechners.

Um zu verhindern, dass der Router die IP Adresse des eigenen Rechners verändert, ist es empfehlenswert, diese im Router fest zu vergeben. Das ist wieder etwas, was in jedem Router anders funktioniert.

In einer Fritz!Box 7590 kann man einstellen, dass sie immer die gleiche IPv4-Adresse zuweist. Diese Option kann man unter „Heimnetz / Netzwerk / Netzwerkverbindungen“ in den Detaileinstellungen der Netzwerkgeräte aktivieren.

In einer Vodafone EasyBox befindet sich diese Einstellung im Expertenmodus unter “Einstellungen / IPv4 / Statisches DHCP Heimnetzwerk”.

Hinweis: Wenn ein Rechner mehrere Netzwerkkarten hat, z.B. kabelgebunden und WiFi, dann hat er wahrscheinlich auch mehrere lokale IP Adressen! Nämlich eine für jede Netzwerkkarte. Denn jede Netzwerkkarte hat eine individuelle MAC Adresse. Wenn man das Port Forwarding im WiFi einrichtet, und dann das Kabel einsteckt, funktioniert das Port Fowarding nicht mehr! Der Rechner hat plötzlich eine andere IP Adresse. Also wichtig: Immer dieselbe Netzwerkkarte benutzen, d.h. entweder immer mit Kabel, oder immer ohne Kabel.

Sobald wir das Port Forwarding eingestellt haben, weiß der Router, dass er Anfragen über die betreffenden Ports an das richtige Gerät im Netzwerk weiterleitet.

5. Firewall Eingehende Verbindung

Damit das richtige Gerät im Netzwerk diese Anfrage aber auch annimmt, muss man der Firewall mitteilen, dass sie diese auch reinlassen soll. Dazu stellt man eine Regel in der Firewall ein.

Im Windows Startmenü tippe ich “Firewall” und bekomme als Ergebnis die “Windows Defender Firewall” angezeigt. Diese öffne ich.

Die benötigten Einstellungen befinden sich unter “Advanced settings”

Und dann unter “Inbound Rules”, “New Rule….”

“Port” wählen, und “Next” drücken.

“TCP” auswählen, und die Ports angeben: 990, 55555-55556 (genau die Ports, die weiter oben für den FTP Server gewählt wurden.)

Diese Verbindungen zulassen (Allow the connection).

In welchen Netzwerken die Verbindung zugelassen wird, kann man hier nach Gutdünken festlegen. “Private” ist wichtig, und muss gesetzt werden, wenn der FTP Server in einem privaten Netzwerk laufen soll. Die anderen beiden Haken kann man wahlweise aktivieren oder deaktivieren.

Dann gibt man der Regel einen beliebigen Namen, und drückt “Finish”.

Das Ergebnis kann dann ungefähr so aussehen:

Damit schließe ich die Firewall einstellungen und bin fertig!

6.: Test

Jetzt fehlt eigentlich nur noch der Erfolgstest. Das kann man recht komfortabel auf der Seite https://ftptest.net/ ausführen, diese wird auch im Einstellungsmenü des FileZilla Server verlinkt.

Alternativ installiert man den FileZilla Client und richtet den eigenen Server dort ein. Wichtig ist für den Test, im FileZilla Server unter Einstellungen, Passive Mode Settings, den Haken zu entfernen bei “Don’t use external IP for local connections” um den Test realistisch auszuführen und den Umweg über das Internet zurück auf den eigenen Server zu nehmen.

Wenn alles funktioniert hat, können jetzt nach Belieben zahllose Dateien verschlüsselt übertragen werden!

 

7.: Bitvise SSH Server herunterladen.

Hier geht es zur Download Seite des Bitvise SSH Server.

Die soeben heruntergeladene Datei führe ich aus und folge der Installationsroutine.

Ich bestätige, dass das Programm, signiert von Bitvise limited, Änderungen am Rechner vornehmen darf. Das Installationsverzeichnis ändere ich nicht, da ansonsten eine Fehlermeldung erscheint.

Ich wähle die “Personal Edition”. 10 Accounts und 15 parallele Verbindungen sind für mich mehr als ausreichend.

 

Ein Name muss eingetragen werden. Nun gut.

Ein Neustart wird verlangt. Diesen führe ich aus. Danach starte ich das Bitvise SSH Server Control Panel.

8. Bitvise SSH Server einrichten

Der Server ist bereits gestartet und in Grundzügen konfiguriert. Ich drücke auf “Open easy settings”.

Im ersten Reiter, Server Settings, wähle ich Port 4444. Mit dem Standard Port 22 habe ich keine Verbindung herstellen können. Viermal Vier, das kann ich mir gut merken.

Unter “Open Windows Firewall” wähle ich “Open port(s) to any computer”. Nur so wird der Server für Anfragen aus dem Internet geöffnet. Ansonsten wird er nur aus dem lokalen Netzwerk ansprechbar, und das ist nicht mein Ziel.

Da ich den Zugriff zum Server ausschließlich für Benutzer öffnen möchte, die ich hier von Hand eintrage, wähle ich unter “Password authentication: Permit for virtual accounts only”.

Man kann an dieser Stelle speichern, und “Easy Settings” erneut öffnen. Oder man wechselt direkt in den Reiter “Virtual accounts”.

Die Benutzerkonten muss ich nun anlegen. Ich wähle den Reiter “3. Virtual accounts” und drücke “Add”.

Ich wähle also einen Benutzernamen (im Beispiel: “test”), und wähle ein Passwort (dafür öffnet sich ein separates Fenster). Weiterhin erlaube ich den Login, erlaube den Datentransfer, verbiete Shell Access, und begrenze den Datenzugang auf einen Ordner. Den Ordner wähle ich unter “Root directory” aus. Den gewünschten Ordner kann man vorher mit Windows Explorer anlegen. Nachdem der Ordner gewählt ist, drücke ich OK.

Wie man hier sehen kann, ist auch ein Zugang mit Public Keys möglich. Wer mit Schlüsseldateien arbeiten möchte, kann hier die entsprechenden Schlüssel hinterlegen. Das habe ich noch nicht mit diesem Programm getestet. Schlüssel können nicht aus der Maske generiert werden, sondern man muss sie sich anderweitig besorgen, zum Beispiel mit PuTTY – dies wird weiter unten erläutert.

In diesem Beispiel habe ich einen Test-Benutzer mit Namen und Passwort erstellt, und das Verzeichnis festgelegt. Damit ist der Server fertig für eine verschlüsselte Datenübertragung konfiguriert.

Der neue Benutzer muss noch mit “Save changes” bestätigt werden. Sonst wird der gesamte Eintrag verworfen. Also speichere ich.

9.: Port Forwarding und Firewall

Auch für diesen Server muss der Router eingerichtet werden mit Port Forwarding. Natürlich mit dem passenden Port, in diesem Beispiel der Port 4444. Die Anleitung ist genauso wie bei Punkt 4, allerdings für TCP Port 4444 und UDP Port 4444.

Sehr viele Vieren.

Die Firewall wird vom Server selbst konfiguriert. Hier ist kein Eingriff von Hand nötig. Dafür gibt es in “Easy Settings” den Punkt “Open Firewall”.

10.: Test

Jetzt ist alles eingerichtet. Wenn der Benutzer den Benutzernamen und sein Passwort bekommen hat, sowie die Server Adresse und den Port, kann er dies alles im Client einstellen.

FileZilla Client kann auch SFTP Verbindungen aufbauen. Es wird wie folgt eingestellt.

Der Site Manager wird geöffnet und wie folgt gefüllt:

Protocol: SFTP

Host: Die Adresse des Servers, kann auch eine IP Adresse sein. Wichtig ist der Port, in diesem Beispiel 4444.

Logon: Normal.

Benutzername und Passwort wie in der Einstellung des Server Managers eingestellt.

Dann wird “Connect” gedrückt.

Wenn alles passt, klappt die Anmeldung!

Im Log des Servers wird die erfolgte Anmeldung berichtet.

Fertig, alles klappt!

 

11.: /n Software SFTP Server herunterladen

Als nächstes interessiert mich dasselbe mit der Software von der Firma n/ Software, und die gibt es hier: https://www.nsoftware.com/sftp/sftpserver/

Das Programm ist “Free for commercial use” – für mich als Privatnutzer also kein Problem. Ich lade das Programm herunter und installiere es. Von der Installation mache ich keine Screenshots.

12.: SFTP Server einrichten

Spannend ist die Einrichtung des Servers. Hier sind ein paar Punkte wichtig, die auch in der Online Dokumentation prinzipiell beschrieben werden.

Im Reiter “Server Settings” habe ich den Port geändert. Standard war Port 22, damit habe ich keine Verbindung zustandegebracht. Also habe ich einen anderen Port vergeben, viermal die Vier, das kann ich mir gut merken. Diesen Port habe ich auch über Port Forwarding am Router eingerichtet. Die Firewall hat das Programm von selbst eingestellt, da musste ich nur meine Zustimmung geben.

Das “Root Directory” ist das Datenverzeichnis, auf da alle Nutzer gleichermaßen undifferenziert Zugriff erhalten. Ich habe keine Möglichkeit gefunden, pro Benutzer andere Berechtigungen zu vergeben, oder andere Verzeichnisse mit anderen Berechtigungen einzustellen. Ein Verzeichnis mit Vollzugriff für alle Benutzer ist das, was man hier bekommt.

Einen Server Key kann man wahlweise vom Programm selbst herstellen lassen (an dieser Stelle ist das einfacher) oder über PuTTY erstellen und einfügen. In beiden Fällen taucht der Schlüssel dann in der Maske auf.

Wichtig ist der Reiter “Authentication”, da der Zugriff hier nicht so leicht herzustellen ist. Eine Benutzername/Passwort Kombination reicht nicht aus, sofern man nicht bereit ist, jeden Benutzer in das Windows User Management zu integrieren.

Also habe ich die Haken abgewählt in der oberen Hälfte des Menüs (Enable Password Authentication, Enable GSSAPI Authentication beides deaktiviert).

Meine Wahl ist hier die Authentifizierung mit Key Files. Dafür jedoch musste ich ein separates Programm installieren, um diese Key Files zu erstellen. Da sowieso nur ein Verzeichnis freigegeben werden kann, ist es theoretisch ausreichend, auch mit einem einzelnen Schlüssel zu arbeiten, und diesen an alle Berechtigten weiterzugeben.

Interessante Randbemerkung – der SFTP Server kann durchaus selbst Key Files erstellen, aber leider nur den Private Key, und keinen Public Key. Man benötigt jedoch beides. Also geht es weiter mit PuTTY.

13.: PuTTY herunterladen

Die offizielle Webseite für PuTTY ist hier: https://www.chiark.greenend.org.uk/~sgtatham/putty/

Dort kann man die aktuelle Version herunterladen und installieren. Das einzige, was mich an der Installation von PuTTY interessiert, ist im Augenblich der Key Generator PuTTYgen. Diesen öffne ich via Startmenü, wo nun eine Verknüpfung dafür angelegt ist.

14.: Keyfiles erstellen und in Server / Client einbinden

Als erstes wählte ich den Typ des Schlüssels aus, und entscheide mich ohne besonderen Grund für DSA. Die Länge belasse ich bei 2048 bit. Dann drücke ich “Generate” und bewege ein wenig den Maus im Fenster als der Generator darum bittet.

Kurze Zeit später ist der Schlüssel fertig. Als erstes denke ich mir einen Namen aus und trage diesen in das Feld “Key comment” ein. Dieser kann frei gewählt werden, und wird später beim Login vom SFTP Server angezeigt wenn sich jemand damit einloggt. Ein Passwort kann ebenfalls eingetragen werden, das erhöht die Sicherheit.

Nun erstelle ich eine neue Textdatei von Hand. In einem Verzeichnis, welches ich später wiederfinde. Zum Beispiel das Programmverzeichnis des SFTP Servers. Diese Datei nenne ich “authorized_keys.txt”.

Nun kopiere ich aus diesem Fenster des PuTTY Generators den Public Key heraus, mit Strg+C. Wichtig ist, den gesamten Schlüssel zu markieren, dafür muss man im Fenster nach oben und unten scrollen.

Das füge ich in die neu erstelle Textdatei ein.

Eigentlich soll alles in eine Zeile passen, aber auch ohne den Zeilenumbruch im Notepad wird es hier als zweizeilig dargestellt. Ich lasse es so. Wichtig ist, unter Format – Word Wrap den Zeilenumbruch auszuschalten.

Dann speichere ich ab.

Diese Textdatei binde ich in den Server ein.

Das mache ich im SFTP Server unter Authentication, indem ich die Textdatei “authorized_keys.txt” hier auswähle.

Zurück zu PuTTY:

In PuTTY drücke ich den Knopf “Save Private Key” und speichere diesen ebenfalls an einem Ort, den ich später wiederfinde. Zum Beispiel auch im Ordner des Servers.

Wie passen nun die Schlüssel zusammen?

  • Der SFTP Server hat den “Public Key” über die Datei “authorized_keys.txt” mitgeteilt bekommen.
  • Der “Private Key” als Datei sowie das Passwort für diesen Key müssen dem Benutzer zukommen, der sich auf diesem Server einloggen möchte.
  • Beim Einloggen wird erst das Passwort geprüft und dann die Schlüssel miteinander verglichen, und nur wenn alles passt, wird der Zugang hergestellt.
  • In der Datei “authorized_keys.txt” können beliebig viele public keys untereinander eingetragen werden. Einer pro Zeile – wenn man von der zweizeiligen Darstellung einmal absieht. Jeder dieser Schlüssel wird dann berechtigt, auf den Server zuzugreifen. Weitere infos hierzu findet man in der Doku des Servers.

15.: Port Forwarding und Firewall

Auch für diesen Server muss der Router eingerichtet werden mit Port Forwarding. Natürlich mit dem passenden Port, in diesem Beispiel der Port 4444. Die Anleitung ist genauso wie bei Punkt 4, allerdings für TCP Port 4444 und UDP Port 4444.

Sehr viele Vieren.

Die Firewall wird vom Server selbst konfiguriert. Hier ist kein Eingriff von Hand nötig. Bei der Installation oder dem Starten des Servers müsste der Benutzer gefragt worden sein, ober die Änderung an der Firewall zulässt. Wenn hier zugestimmt wurde, ist alles in Ordnung.

16.: Test

Jetzt ist alles eingerichtet. Wenn der Benutzer den Private Key und sein Passwort bekommen hat, sowie die Server Adresse und den Port, kann er dies alles im Client einstellen.

FileZilla Client kann auch SFTP Verbindungen aufbauen. Es wird wie folgt eingestellt.

Der Site Manager wird geöffnet und wie folgt gefüllt:

Protocol: SFTP

Host: Die Adresse des Servers, kann auch eine IP Adresse sein. Wichtig ist der Port, in diesem Beispiel 4444.

Logon: Key file.

User: Der Name der hier steht ist völlig gleichgültig für die Anmeldung. Der Benutzer kann einen Freitext eintragen. Dieser erscheint im Server Log als Benutzername, hat aber keinen Einfluss auf den Erfolg der Anmeldung.

Das Key File muss ausgewählt werden. Dieses hat ja der Benutzer vom Serververwalter erhalten und kann es hier einbinden.

Dann wird “Connect” gedrückt.

Erst an dieser Stelle fragt FileZilla nach dem Passwort, welches zum Key File gehört. Dieses Passwort habe ich in PuTTY vorher festgelegt. Hier gehört es rein.

Wenn alles passt, klappt die Anmeldung!

Im Log des Servers wird die erfolgte Anmeldung berichtet.

Fertig, alles klappt!