Steuert man WinSCP via CLI oder Skript und kommen Kennwörter mit Sonderzeichen wie z.B. „%“, „$“, „!“, usw. zum Einsatz, so müssen diese passend konvertiert sein.
Der Hintergrund ist, das nur ASCII-Zeichen verwendet werden können, hinzu kommen Windows-eigene Spezialitäten. Bevor man nun lange herumexperimentiert kann man einen einfacheren Weg gehen:
- Mit WinSCP (GUI) verbinden.
- Auf „Session – Generate session-URL/code…“ klicken.
- Nur „Username“ und „Password“ auswählen.
- Auf „Copy to clipboard“ klicken.
- In Editor einfuegen.
- Der Wert zwischen „:“ und „@“ entspricht dem Passwort im richtigen Format.
Zu beachten sind die Besonderheiten der Windows-Eingabeaufforderung bzw. bei der Verwendung aus Batch-Skripte heraus. Enthält das Kennwort beispielsweise ein „%“-Zeichen muss dieses zweimal verwendet werden, da das Erste sozusagen geschluckt wird. Ein Beispiel:
Das eigentliche Passwort lautet: Geheim%123
set password=Geheim%%123echo %password% > upload.txt
Schaut man in die „upload.txt“ sieht man das eigentliche Kennwort. Lässt man das zweite „%“-Zeichen weg, wird das Kennwort verfälscht und es wird „Geheim123“ daraus.
Quellen:
WinSCP – Documentation – Features – Session URL – Special Characters
WinSCP – Documentation – Using WinSCP – Generate Session URL/Code/Transfer Code Dialog
Schon immer Technik-Enthusiast, seit 2001 in der IT tätig und seit über 10 Jahren begeisterter Blogger. Mit meiner Firma IT-Service Weber kümmern wir uns um alle IT-Belange von gewerblichen Kunden und unterstützen zusätzlich sowohl Partner als auch Kollegen. Die Schwerpunkte liegen auf der Netzwerkinfrastruktur, den Betrieb von Servern und Diensten.