Sicheres FTP (sftp)

Damit du deine Daten von deinem Computer auf den Server transferieren kannst, musst du dich per SFTP auf unseren Server verbinden. Wir akzeptieren keine unverschlüsselte FTP-Verbindung mehr.

Clients

Filezilla (Linux/OS X/Windows)

Filezilla ist ein Programm, mit dem du einfach Daten auf den Server hochladen kannst. Wenn du zum Beispiel ein Bild hochladen möchtest, verbindest du dich per filezilla auf den Server

Cyberduck (OS X)

Cyberduck ist ein Programm für Mac, mit dem du dich auf den Server verbinden kannst.

CLI (Kommandozeile (Linux, OS X))

Bei den meisten Distributionen am einfachsten mit dem Dateimanager.

SSH Authorized Keys

Um SSH-Keys für die SFTP-Authentifizierung zu hinterlegen:

  1. Via SFTP erstellst du eine Datei namens ssh_authorized_keys.keys im Verzeichnis scripts/ssh_authorized_keys mit deinen öffentlichen SSH Schlüsseln.
  2. Du erstellst eine Datei scripts/ssh_authorized_keys/ssh_authorized_keys.run. Dies aktiviert die neuen Schlüssel.
  3. Der FTP login sollte nun ohne Passwort funktionieren.

Ein Beispiel:

# This will add the elipticcurve key to the authorized keys file of the sftp user.
ssh-ed25519 AAAAmyelipticcurvekey
ssh-ed25519 AAAAmySecondelipticcurvekey

Fehler werden in logs/user-script-ssh_authorized_keys.log protokolliert.

SFTP bequemer nutzen

Oftmals erscheint die Nutzung von SFTP mühsam, gerade weil jeweils ein spezieller Client dafür verwendet wird. Dabei möchte man ja nur kurz eine Datei editieren oder lieber gleich ein ganzes Verzeichnis mit einem lokalen Verzeichnis synchronisieren. Dies ist alles ohne Probleme möglich: Moderne Betriebssysteme (Linux, OS X, Windows) ermöglichen es, das Verzeichnis auf dem Server wie eine lokale Festplatte anzuzeigen und anzusprechen.

Linux

Im Dateimanager von Gnome (was z.B. bei Ubuntu der Standard ist) findet man den Menupunkt “Mit Server verbinden” (siehe hier). Dort kann man sich auch auf ein SSH-Server verbinden. Du musst nur deine Zugangsdaten fürs Webhosting eingeben und schon wird das Verzeichnis auf dem Server wie eine externe Festplatte eingebunden. Mehr dazu findest du unter Sysop:SSHFS.

Clients wie lftp unterstützen auch das Verschieben von Verzeichnissen. lftp ermöglicht auch das Spiegeln von Verzeichnissen - damit werden nur die Änderungen übertragen (inkrementell) und nicht das ganze Verzeichnis. Dies kann auch bequem in Skripts verwendet werden:

lftp -e "mirror -eRv source www; quit;" -u username sftp://ftp.foo.immer-da.ch

Windows

Beschreibe, wie das einfach unter Windows zu bewerkstelligen ist! Mitmachen!

OS X

Auf OS X kann lftp per Homebrew installiert werden. Danach einfach dem Tutorial von Linux folgen.