Freitag, 25. April 2008

SSH Testserver aufsetzen

Ich muss gerade einen SFTP/SCP Client coden und da mir der Kunde keinen Server zum testen für den Anfang zur Verfügung stellt, brauch ich einen auf die schnelle in meiner Entwicklungs VM.

Nach ein wenig googeln findet man sshwindows eine OpenSSH Umsetzung, diese Implementierung setzt auf den UNIX Emulator cygwin in abgespeckter Form auf (wer gcc verwendet dürfte den kennen) und hat vollen SSH(1+2)/SCP/SFTP Support. Der letzte Stand ist vom Juli/2004 und wird leider nicht mehr gewartet seit dem. Wer etwas mehr up-to-date benötigt kann sich auf OpenSSH nach einer aktuelleren Windows Implementierung umsehen.

sshwindows ist simpel in Installation und Konfiguration und reicht für meine einfachen Testzwecke aus (es dauert länger diesen Blogeintrag zu schreiben, als es zu konfigurieren...).

Die Installation ist straight forward, danach hat man im Startmenu (respektiver docs Unterverzeichnis) einen Quick Start Guide.

Hier nochmal kurz, für einen lokalen User (domain user ist fast identisch, siehe Quick Start Guide)
- Command Prompt öffnen
- In das bin Verzeichnis der OpenSSH Installation wechseln
- eingeben: "mkgroup -l >> ..\etc\group"
- eingeben (Beispiel Administrator User): "mkpasswd -l -u Administrator >> ..\etc\passwd"
- Server starten mit: "net start opensshd"

Für das starten hab ich mir eine kleine Batch Datei geschrieben:

   1:  :: change to the OpenSSH bin dir
   2:  @ECHO OFF
   3:   
   4:  CD C:\OpenSSH\bin
   5:   
   6:  ECHO.
   7:   
   8:  :: start SFTP
   9:  net start opensshd
  10:   
  11:  :END

Jetzt ist der lokale Administrator User als Login eingerichtet mit den Windows Credentials für unseren Test SFTP Server. Anmerkung: Um ihn nun zu verwenden mußte ich den Rechner erst neu starten, ansonsten scheiterte der Login mit einem Error!

Als Testclient hab ich FileZilla verwendet. Nach der Installation, einfach:
Host: localhost
User: Administrator
Password: <windows password>
Port: 22
eingeben und Quickconnect.

Jetzt liegt das FTP Verzeichnis noch etwas sehr hässlich im Home Verzeichnis des Administrators (also z.B. je nach verwendetem Windows: C:\Documents and Settings\Administrator\).

Das kann man auch sehr schnell und einfach anpassen:
Im Verzeichnis \etc liegt die Datei passwd. Im Texteditior findet man ziemlich nahe am Schluss den Eintrag: /home/Administrator den habe ich ersetzt durch z.B.: /cygdrive/c/FTPDir (cygdrive/c/ ist die Deklaration das Windows C:\ zu verwenden)

Keine Kommentare: