Dateitransfer Windows - Linux via Putty (pscp.exe)

Aus Laub-Home Wiki

Unter Linux kann man ganz einfach via scp Kommando Dateien von einem System zu einem anderen via SSH übertragen. Möchte man das selbe unter Windows nutzen kommt das Zusatzprogramm pscp.exe welches bei Putty mitgeliefert wird zum Zuge. Hier nun eine kleine Anleitung wie man dies mittels Batch Datei nutzen kann.

Voraussetzungen

Benötigt wird die Software Putty als Vollinstallation und die darin enthaltene pscp.exe. Da im besten Falle ein vollautomatischer Download stattfinden soll und dass ohne ein Passwort in Klartext zu verwenden, wird noch ein ssh Key benötigt. Dieser SSH Key kann via PuTTYgen erstellt werden und der Public Key in die "authorized_keys2" eingetragen werden. Weiter will ich hier darauf nicht eingehen.

Benötigt wird:

  • Putty Installation
  • Private Key (.ppk)
  • Public Key (auf Linux System in der authorized_keys2)

scp-download.bat - Download Skript

scp-download.bat

@echo off
rem ### SCP-Backup Skript by A.Laub

set SERVERIP=192.168.0.1
set REMOTEUSER=root
set PRIVATEKEY=keys\private_key.ppk
set FILES2BACKUP=/backup/*.tar.gz
set BACKUPPATH=c:\backup\
set PSCP=%Programfiles%\Putty\pscp.exe

rem ### Sollen die alten Backups behalten werden (YES/NO) ###
set KEEPOLDBACKUPS=NO

IF NOT EXIST %BACKUPPATH% (
	mkdir %BACKUPPATH%
)

If %KEEPOLDBACKUPS%==NO (
	del /Q %BACKUPPATH%*.*
)

%PSCP% -i %PRIVATEKEY% %REMOTEUSER%@%SERVERIP%:%FILES2BACKUP% %BACKUPPATH%