Kleine Hilfe bei ssh gesucht
Hallo Liste, ein "vertrauenswürdiger User" soll sich von seiner Susi 8.2 mit ssh - X 192.168.100.50 einloggen. Hierfür möchte ich ein Script erstellen, wo das Passwort gleich mit übergeben wird und nach positiver Prüfung soll nur das Programm kmail aufgerufen werden. #!/bin/sh ssh -Xb 192.168.100.50 läuft, (die anderen einfachen Scripte laufen alle) aber wie gebe ich ihm jetzt das PASSWORT ein und wie kriege ich dann das Kamel zum laufen? Kann mir jemand kurz dabei helfen? Mit einem Dank schon mal im voraus aus Berlin -- Rolf-Hubert Pobloth <rhp-berlin@surfnett.de>
Hallo! On 29 Aug 2003 12:43:54 +0200, Rolf-Hubert Pobloth wrote
ein "vertrauenswürdiger User" soll sich von seiner Susi 8.2 mit ssh - X 192.168.100.50 einloggen. Hierfür möchte ich ein Script erstellen, wo das Passwort gleich mit übergeben wird und nach positiver Prüfung soll nur das Programm kmail aufgerufen werden.
#!/bin/sh ssh -Xb 192.168.100.50 läuft, (die anderen einfachen Scripte laufen alle) aber wie gebe ich ihm jetzt das PASSWORT ein und wie kriege ich dann das Kamel zum laufen?
Kann mir jemand kurz dabei helfen?
Oh jee ... Beschäftige Dich bitte näher mit SSH. SSH ist aus meiner Sicht sicherheitstechnisch kritisch und man sollte doch wissen, was man tut oder eben nicht tut. 1) Passwort kriegst Du so ohne weiteres nicht in SSH rein. Ist auch komplett unnötig, da es die Möglichkeit gibt, über Schlüsselpaare zu gehen. Dazu muss der User ein Schlüsselpaar generieren. Den public-Key muss er dann auf dem Zielrechner ins .ssh Verzeichnis legen (authorized_keys muss die Datei dort heissen!). Dann sollte der Anwender kein Passwort mehr eingeben müssen. 2) Es gibt natürlich nichts, was es nicht gibt. So kann man natürlich auch das Passwort hereinmogeln. Dies haben wir schon einmal gebastelt (Wir mussten per SSH auf einen sshd auf Windows/cygwin Basis zugreifen und dort funktionierte die Authentisierung nicht.) Hier gibt es einen kleinen Hilfsweg: ssh-askpass gibt es als Programm. Dies wird von SSH aufgerufen um nach dem Passwort zu fragen. Damit SSH dieses Programm nutzt und nicht ienfach selbst auf der Console nachfragt, muss man dann das controlling tty wegnehmen. Geht z.B. in C (Shellskript wüsste ich jetzt nicht wie es gehen könnte!). Wenn dann "dein" ssh-askpass im Path vor dem eigentlichen ask-pass ist, dann wird das natürlich genommen. Wie das ganze zu Verschlüsseln ist und so kriegt man am besten raus, wenn man das ssh-askpass selbst im Code ansieht. Das ganze ich aber extrem unsicher! Rate ich nur vo ab! Mit den besten Grüßen, Konrad -- Konrad Neitzel Mobile: +49 (172) 689 31 45
Hallo!
Oh jee ... Beschäftige Dich bitte näher mit SSH. SSH ist aus meiner Sicht sicherheitstechnisch kritisch und man sollte doch wissen, was man tut oder eben nicht tut.
Ist das jetzt generell geneint (das kritisch), oder nur wenn man nicht weiß was man tut?
1) Passwort kriegst Du so ohne weiteres nicht in SSH rein. Ist auch komplett unnötig, da es die Möglichkeit gibt, über Schlüsselpaare zu gehen. Dazu muss der User ein Schlüsselpaar generieren. Den public-Key muss er dann auf dem Zielrechner ins .ssh Verzeichnis legen (authorized_keys muss die Datei dort heissen!). Dann sollte der Anwender kein Passwort mehr eingeben müssen.
Ist sicher das einfachste! Man sollte aber auch über die Verwendung von Passphrasen nachdenken, wenns sicher sein soll. Dies lassen sich ja über den ssh-Agenten wieder automatisieren.
2) Es gibt natürlich nichts, was es nicht gibt. So kann man natürlich auch das Passwort hereinmogeln. Dies haben wir schon einmal gebastelt (Wir mussten per SSH auf einen sshd auf Windows/cygwin Basis zugreifen und dort funktionierte die Authentisierung nicht.) Hier gibt es einen
Hatte auch schon das Problem, aber in anderer Konstellation. Ich habe mir hier mit expect geholfen. Da läßt sich das Passwort dann wieder leicht übergeben. (Um einen schnellen Einstieg in expect zu finden, empfehle ich autoexpect). Genrell ist aber die Verwendung von (Klartext-) Passwörtern in Scripten sicherheitstechnisch genau abzuwägen.
kleinen Hilfsweg: ssh-askpass gibt es als Programm. Dies wird von SSH aufgerufen um nach dem Passwort zu fragen. Damit SSH dieses Programm nutzt und nicht ienfach selbst auf der Console nachfragt, muss man dann das controlling tty wegnehmen. Geht z.B. in C (Shellskript wüsste ich jetzt nicht wie es gehen könnte!). Wenn dann "dein" ssh-askpass im Path vor dem eigentlichen ask-pass ist, dann wird das natürlich genommen. Wie das ganze zu Verschlüsseln ist und so kriegt man am besten raus, wenn man das ssh-askpass selbst im Code ansieht. Das ganze ich aber extrem unsicher! Rate ich nur vo ab!
Auch ne nette Idee!
Mit den besten Grüßen,
Konrad
Grüße Stefan
Hallo! On Fri, 29 Aug 2003 15:29:55 +0200 (MEST), Stefan Pongratz wrote
Oh jee ... Beschäftige Dich bitte näher mit SSH. SSH ist aus meiner Sicht sicherheitstechnisch kritisch und man sollte doch wissen, was man tut oder eben nicht tut.
Ist das jetzt generell geneint (das kritisch), oder nur wenn man nicht weiß was man tut?
Hmm ... sollte doch eigentlich alles klare Aussagen sein: a) Bitte, sich näher mit SSH zu beschäftigen. b) Einstufung von SSH als sicherheitstechnisch kritisch c) Man sollte wissen, was man tut Also generelle Aussagen, wobei man - auf Grund der Gruppierung - das C speziell auf die Aussage davor beziehen könnte und auch sollte: In kritischen Dingen sollte man wissen, was man tut. Sind damit meine Aussagen deutlich geworden?
1) Passwort kriegst Du so ohne weiteres nicht in SSH rein. Ist auch komplett unnötig, da es die Möglichkeit gibt, über Schlüsselpaare zu gehen. Dazu muss der User ein Schlüsselpaar generieren. Den public- Key muss er dann auf dem Zielrechner ins .ssh Verzeichnis legen (authorized_keys muss die Datei dort heissen!). Dann sollte der Anwender kein Passwort mehr eingeben müssen.
Ist sicher das einfachste! Man sollte aber auch über die Verwendung von Passphrasen nachdenken, wenns sicher sein soll. Dies lassen sich ja über den ssh-Agenten wieder automatisieren.
Das stimmt. Daher halt auch die generelle Aufforderung, sich mit dem doch etwas komplexen Thema SSH auseinander zu setzen. Es geht viel und wenn es sein muss, kann man über den Quellcode noch viel mehr machen :) Aber die generell wichtige Idee waren hier wohl die Keys :) Mit den besten Grüßen, Konrad -- Konrad Neitzel Mobile: +49 (172) 689 31 45
Hallo!
Hmm ... sollte doch eigentlich alles klare Aussagen sein:
a) Bitte, sich näher mit SSH zu beschäftigen. b) Einstufung von SSH als sicherheitstechnisch kritisch c) Man sollte wissen, was man tut
Also generelle Aussagen, wobei man - auf Grund der Gruppierung - das C speziell auf die Aussage davor beziehen könnte und auch sollte: In kritischen Dingen sollte man wissen, was man tut.
Sind damit meine Aussagen deutlich geworden?
Ja. Stimme auch völlig zu. Ich wollte nur sicher gehen, obs noch andere generelle Bedenken gibt und darauf eine Antwort kommt wie: Ich verwende lieber ....
Aber die generell wichtige Idee waren hier wohl die Keys :)
Ich wollte nur expect erwähnen, da ich schon öfter das Problem hatte, das der Schlüsseltausch nicht funktioniert. Z.B. Eine Linux-Kiste mit einer AIX-Kiste oder eine Suse 7.2 mit einer Suse 8.2 (jeweils im Originalzustand)! Oder habe ich da nur etwas übersehen?? Ansonsten verwende ich auch am liebsten die Key-Variante.
Mit den besten Grüßen,
Konrad
Grüße Stefan
Am Freitag 29 August 2003 16:06 schrieb Stefan Pongratz:
Ich wollte nur expect erwähnen, da ich schon öfter das Problem hatte, das der Schlüsseltausch nicht funktioniert. Z.B. Eine Linux-Kiste mit einer AIX-Kiste oder eine Suse 7.2 mit einer Suse 8.2 (jeweils im Originalzustand)! Oder habe ich da nur etwas übersehen??
Hmm ... evtl. unterschiedliche Verschlüsselungsroutinen? Es gibt RSA und DSA keys ... Und da muss natürlich alles passen ... Wenn man sich die Keys ansieht, dann fängt der eine mit ssh-dss und der andere mit ssh-rsa an: ssh-dss AAAAB3NzaC1kc3MAAACBAP//AiKXsgFkBId0CWwDnaHMM7vPbIW/ESPHZo9Y/ltyb8xyMHikylwgOtZrkj /OZFePOOQin9IIEuOsTQdLHGsXNnn3mqsKK1M7YJ8VmLGBlb0OkUeF4lq2XrjJwrunrMz54lTlWggBtx0+DJTibyPe AtA0hIQ+RkjwWdC9oOxRAAAAFQCb+DSq7gDmD3Zzt+Y7W4fV5qQhkQAAAIEAqn1Vfb0RttxtqA51POm36uJDAClGc+ 7/6kQmK177QbJ5Y/bpLnblf9VgRTYTYNv2AYJqaoSzceea3HsY4kKOCCOwjgbaHRlKFtfPPYX7Nzlu7zHvGxqkO2fI zyKUrFEL3b1Y7ILcsnzbojnPwKNeVoBOy5LjVuhQBMG3gKXBmoUAAACBAKg+0TRDV3Ix0OGRr7yQECB1+QyDukKH9r QQO1b0sTEoHHHaDkvuUdEJgCl4bUWuUy8Oe9OZeqkE0fqw6MMTE4aIznSakAoo5CzdfKZ6GlgoKYMSUMnBGd8bPQwU 9+ejJl97TEm+5SaGuEVXARaT5PKwp9gkppCpoiruITwO7rc9 neitzel@Freebsd.local ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAIEA0CZt53KrLX7MgDXAa1WFTGpbYJwt6On7xXySG9i2txZF1wpvaMyDG4 UPycGPOKQpXe9pnz+Ef+GT8HK670F10MU4tEyXSXb15UY2vD9ECvRnxXgDbQTbI3Bduddt6J71cP9iD1FiP1pQ9o9h REDWOpG8F/LsWfR2ZSH0ssLNDTU= neitzel@Freebsd.local Das nur einmal so als Beispiel. Wenn Du nun lediglich mit einem DSA schlüssel bei einem mit rsa configurierten sshd ankommst, dann hast Du schlechte Karten. Das ist jetzt im Augenblick das Einzige, das mir gross einfällt (Und was ich auch schon hatte). Selbst zwischen OpenSSH und dem kommerziellen SSH sollte alles einwandfrei funktionieren, aber dies habe ich bisher nie getestet. Mit den besten Grüßen, Konrad
Rolf-Hubert Pobloth wrote:
Hallo Liste,
ein "vertrauenswürdiger User" soll sich von seiner Susi 8.2 mit ssh - X 192.168.100.50 einloggen. Hierfür möchte ich ein Script erstellen, wo das Passwort gleich mit übergeben wird und nach positiver Prüfung soll nur das Programm kmail aufgerufen werden.
#!/bin/sh ssh -Xb 192.168.100.50 läuft, (die anderen einfachen Scripte laufen alle) aber wie gebe ich ihm jetzt das PASSWORT ein und wie kriege ich dann das Kamel zum laufen?
Kann mir jemand kurz dabei helfen?
Mit einem Dank schon mal im voraus aus Berlin
hiho, an deiner stelle wuerd ich kein password uebergeben sondern fuer den user ein key-pair anlegen und den public key auf dem zielrechner den authorized_keys(2) zufuegen. dann sollte es funktionieren. mfg -- ---------------------------------------- Markus Heinze Internet: http://www.existand.de E-Mail : M.Heinze@existand.de Telephon: 03464/569787 Fax : 03464/569786 ----------------------------------------
Am Fre, 2003-08-29 um 10.43 schrieb Rolf-Hubert Pobloth:
Hallo Liste,
ein "vertrauenswürdiger User" soll sich von seiner Susi 8.2 mit ssh - X 192.168.100.50 einloggen. Hierfür möchte ich ein Script erstellen, wo das Passwort gleich mit übergeben wird und nach positiver Prüfung soll nur das Programm kmail aufgerufen werden.
#!/bin/sh ssh -Xb 192.168.100.50 läuft, (die anderen einfachen Scripte laufen alle) aber wie gebe ich ihm jetzt das PASSWORT ein das Passwort solltest Du gar nicht erst versuchen zu übermitteln. Stelle doch lieber Dein sshd auf key auth um. Anleitung unter: http://www.jfranken.de/homepages/johannes/vortraege/ssh1.de.html und wie kriege ich dann das Kamel zum laufen? Eine Idee wäre dem user nicht bash etc. als shell zu geben sondern kmail als shell. Weis allerdings nicht ob das klappt.
Kann mir jemand kurz dabei helfen?
Mit einem Dank schon mal im voraus aus Berlin -- Rolf-Hubert Pobloth <rhp-berlin@surfnett.de>
participants (5)
-
Konrad Neitzel
-
Manuel Jenne
-
Markus Heinze
-
Rolf-Hubert Pobloth
-
Stefan Pongratz