Difference between revisions of "OpenSSHServer"

From Dietrich Blog (Strato)
Jump to: navigation, search
(New page: = OpenSSH-Server = Um einen gesicherten Zugriff von unterwegs auf meine Windows-Computer zu haben, hatte ich schon früher OpenSSH als Win32 installiert. Diese Installation war se...)
 
(Replaced content with "This page has been moved to my BLOG at http://blog.kr8.de")
Line 1: Line 1:
= OpenSSH-Server  =
+
This page has been moved to my BLOG at http://blog.kr8.de
Um einen gesicherten Zugriff von unterwegs auf meine Windows-Computer zu haben, hatte ich schon früher Open[[SSH|SSH]] als Win32 installiert. Diese Installation war seit geraumer Zeit defekt und ich hatte micht nun für eine Neu-Installation entschlossen. Recherchen, wie man OpenSSH unter Windows installiert ergaben jetzt aktuell, dass Mark Bradshaw seine Win32-Portierung (http://www.networksimplicity.com/openssh/) nicht mehr empfiehlt.
 
 
 
Stattdessen soll man die [[Cygwin|Cygwin]]-Version benutzen, die auch als Windows-Service laufen kann (im Unix-Jargon "Daemon" genannt).
 
 
 
Auf der anderen Seite wurde ganz neu (05.03.2004) von Michael Johnson ein Sourceforge-Projekt "sshwindows" registriert, das ein Binary des OpenSSH ohne das volle [[Cygwin|Cygwin]] zur Verfügung stellt. Ich beschreibe daher beide Varianten. Mittelfristig möchte ich [[Cygwin|Cygwin]] nämlich wieder rausschmeissen, da es zusammen mit dem NTFS-Filesystem ziemlich nervt.
 
 
 
== Installation OpenSSH (ohne Cygwin) ==
 
* Definitive Software Library ID: '''OpenSSHServer'''
 
* Name: Open SSH
 
* Version: 3.7.1p1-1 Build 20031015
 
* Hersteller/Bezugsquelle: http://sourceforge.net/projects/sshwindows
 
* Systemvoraussetzungen:  '''cygwin1.dll''' (in D:\Programme\OpenSSH\bin Version 1.5.9 -- Fehler wenn MIXED VERSIONS!!!)
 
* Installations-Ordner: D:\Programme\OpenSSH
 
* Konfigurationsdateien:
 
** D:\Programme\OpenSSH\etc\sshd_config (weil \ gemounted ist auf: D:\Programme\OpenSSH)
 
** D:\Programme\OpenSSH\etc\passwd (weil \ gemounted ist auf: D:\Programme\OpenSSH)
 
** C:\Dokumente und Einstellungen\<<user>>\Application Data\SSH (für Verbindungsparameter und Host-Keys)
 
* Das Installationsprogramm ruft auf ssh-keygen, um den Host-Keys zu erzeugen.
 
* Installiert wird ein Windows-Service '''OpenSSHd''' mit dem Display-Namen '''OpenSSH Server'''. HKLM\SYSTEM\CurrentControlSet\Services\OpenSSHd
 
* Der Windows-Service benutzt '''cygrunsrv.exe''', um sshd.exe als Service zu starten.
 
* '''Log-Datei:''' D:\Programme\OpenSSH\var\log\OpenSSHd.log
 
* Der Installer legt im Registry folgende Cygwin-Mounts ab (HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\Cygwin\mounts v2):
 
** / als d:\Programme\OpenSSH
 
** /home als c:\Dokumente und Einstellungen
 
** /usr/bin als d:\Programme\OpenSSH/bin
 
 
 
Da der Befehlszeilen-Interpreter '''switch.exe''' ein oberhalb der Laufwerke liegendes "/" nicht versteht, müssen um auf alle Festplattenlaufwerke zugreifen zu können, noch manuell folgende Mounts in die Registry eingetragen werden (analog zu den dort bereits vorhandenen Mounts):
 
* /c  auf  c:
 
* /d  auf  d:
 
* /e  auf  e:
 
Dann kann der [[SSH-Client|SSH-Client]] SSHSecureShell mit ''>Opteration>Go to Folder...'' diese ansprechen.
 
 
 
In die Datei /etc/passwd wird für jeden User das sog. Home-Verzeichnis und die zu verwendende Shell (Befehlszeilen-Interpreter) eingetragen.
 
Da wir in dieser Variante kein volles Cygwin mit einem schönen Bash installiert haben, müssen wir das von OpenSSH mitgelieferte '''switch.exe''' verwenden. Dieses schaltet zwischen '''cmd.exe''' (Windows) ind '''sh.exe''' ([[Cygwin|Cygwin]] schlicht) "intelligent" hin und her.
 
 
 
=== Mounts im Registry ===
 
<img src="http:/Medien/Bilder/OpenSSHMounts.png" alt="OpenSSHMounts.png"  width="613" height="289" />
 
 
 
== Konfiguration OpenSSH (ohne Cygwin) ==
 
Anlegen der Dateien '''group''' und '''passwd''', diese werden mit den Daten der Windows-User-Konten gefüllt.
 
* cd \Programme\OpenSSH\bin
 
* mkgroup -l >../etc/group
 
* mkpasswd  -l >../etc/passwd
 
* Das in der Datei '''passwd''' angegebene User-Verzeichnis (z.B. /home/dkracht) muss vorhanden sein.
 
* Starten und Stoppen des SSH-Servers: net start/stop opensshd
 
 
Achtung die Konfigustationsdateien sshd_conf und ssh_config werden in /etc erzeugt. Das ist in dieser Variante gemappt auf D:/programme/OpenSSH/etc.  Lösch- und Scheibberechtigung für /etc wird benötigt.
 
 
 
-----------
 
Die ältere Variante mit vorheriger voller [[Cygwin|Cygwin]]-Installation.
 
== Installation von OpenSSH  (mit Cygwin) ==
 
* Definitive Software Library ID: '''OpenSSH'''
 
* Name: OpenSSH Server unter Cygwin
 
* Version: 3.8p1-1
 
* Hersteller/Bezugsquelle: Cygwin
 
* Installationsplattform: Windows 2000 Notebook mit [[Cygwin|Cygwin]]
 
* Installations-Ordner: D:\Programme\OpenSSH
 
* Konfiguration: 
 
** D:\Programme\Cygwin\etc\sshd_conf (weil \ gemounted ist auf: D:\Programme\Cygwin)
 
** D:\Programme\Cygwin\etc\passwd (weil \ gemounted ist auf: D:\Programme\Cygwin)
 
* Systemvoraussetzungen: [[Cygwin|Cygwin]]
 
* OpenSSH benutzt die im Registry bereits durch die [[Cygwin|Cygwin]]-Installation eigerichteten Cygwin-Mounts (HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\Cygwin\mounts v2):
 
** / als d:\Programme\Cygwin
 
** /usr/bin als d:\Programme\Cygwin/bin
 
** /usr/lib als d:\Programme\Cygwin/lib
 
** /cygwindrive/c  als c:
 
** /cygwindrive/d  als d:
 
 
 
In die Datei /etc/passwd wird für jeden User das sog. Home-Verzeichnis und die zu verwendende Shell (Befehlszeilen-Interpreter) eingetragen.
 
Da wir in dieser Variante auf dem vorhandenen [[Cygwin|Cygwin]] aufbauen, können wir '''Cygwin Bash''' verwenden.
 
 
 
== Konfiguration von OpenSSH (mit Cygwin) ==
 
Quelle:  http://tech.erdelynet.com/cygwin-sshd.html
 
* Cygwin ist bereits installiert (cygcheck -s sagt: cygwin.dll version 1.5.9)
 
* Mit Cygwin Stepup 2.416 werden folgende Packages nachinstalliert:
 
** cygrunsrv (aus Cygwin Admin)
 
** openssh (aus Cydwin Net)
 
** shutdown (aus Cygwin Admin)
 
* Unter Cygwin (bash shell) eintippen:
 
** ssh-host-config -y
 
** Wenn die Eingabeaufforderung "CYGWIN=..." kommt, eingeben: "tty ntsec"
 
** Die Installation von OpenSSH ist fertig
 
* Zum Starten des OpenSSH-Daemon als Windows-Service, unter Cygwin (bash shell) eintippen:
 
** cygrunsrv -S sshd
 
 
 
Achtung die Konfigurationsdateien 'sshd_conf' und 'ssh_config' werden in /etc erzeugt. Das ist in dieser Variante gemappt auf D:/programme/Cygwin/etc. Lösch- und Scheibberechtigung für /etc wird benötigt.
 
 
 
== Konflikt ==
 
Nach der Installation des [[VirenScanners]] [[McAfeeVirusScan]] 7 konnte man sich am OpenSSHServer nicht mehr anmelden. Deshalb McAfee erstetzt durch [[KasperskyAntiVirus]].
 
 
 
-- Main.DietrichKracht - 20 Mar 2004
 
[[Category:DefinitiveSoftwareLibrary]]
 

Revision as of 18:38, 26 February 2019

This page has been moved to my BLOG at http://blog.kr8.de