Zum Inhalt springen
Linux, DevOps & Systeme

Dateien auf einen Linux Server kopieren

Dateien von Windows auf einen Linux Server kopieren mit scp und rsync über SSH plus Anleitung für einen chroot-SFTP-Benutzer und Login per SSH-Key.

Von DI Herwart Wermescher, MBA ↗

Um Dateien von Windows auf einen Linux Server mittels ssh zu kopieren verwendest Du den scp oder den rsync Befehl.

Im Explorer klicke mit der rechten Maustaste auf das Verzeichnis und wähle „In Terminal öffnen“ aus. DOrt gibst Du dann einfach den scp Befehl ein und nach aufforderung auch das Passwort.

scp dateiname username@server.domain.com:/verzeichnis_am_server

Du kannst auch mittels rsync Dateien kopieren:

scp dateiname username@server.domain.com:/verzeichnis_am_server

scp und rsync funktionieren beide nur, wenn der SSH Zugang verfügbar ist. (wenn Du Dich per SSH einloggen kannst) Praktisch ist hier ein SSH-Login ohne Passwort per Schlüssel, und Du solltest unbedingt auch Deinen SSH-Server absichern.

Nur in Eine Richtung?

Zunächst musst Du einen Benutzer anlegen. Unter Ubuntu machst Du das so:

adduser --shell /bin/false  mynewuser

Es wird daraufhin automatisch ein Verzeichnis /home/mynewuser/ angelegt. Der Nutzer kann sich nicht mittels ssh anmelden.

Damit der sfpt server das home-Verzeichnis als root für den user mynewuser akzeptiert musst du das ownership ändern:

chown root /home/mynewuser

Nun muss der interne sftp server konfiguriert werden. Öffne die konfig datei mit dem Befehl:

nano /etc/ssh/sshd_config

und suche nach der Zeile „Subsystem“ und ändere diese auf:

Subsystem sftp internal-sftp

Nun füge folgendes ans Ende der Datei an:

Match User mynewuser
        ForceCommand internal-sftp
        PasswordAuthentication yes
        ChrootDirectory /home/mynewuser
        PermitTunnel no
        AllowAgentForwarding no
        AllowTcpForwarding no
        X11Forwarding no

State den sshd neu: service sshd restart

Nun kannst Du das ganze am lokalen server ausprobieren: sftp mynewuser@127.0.0.1

Wenn Du den Public Key vom client auf den sftp server gespielt hast:

ssh-copy-id -i ~/.ssh/id_rsa.pub **mynewuser**@mysftpserver.at

musst Du nicht einmal ein passwort eingeben.

Brauchst Du den SFTP-Zugang nur, um aus einem abgeschotteten Netz herauszukommen, hilft Dir die dynamische SSH-Portweiterleitung weiter. Und bevor Du viele kleine Dateien überträgst, lohnt es sich oft, vorher die Dateien mit tar zu packen.

Über diesen Blog

Ein Sammelsurium an Denkanstößen.

Hier sammle ich Wissen, Argumente und Links zu allem, was mich beschäftigt — von Technik über Küche bis Nachhaltigkeit. Beruflich berate ich zu Cybersecurity.