Freitag, 24. November 2017, 23:22 UTC+1

Sie sind nicht angemeldet.

  • Anmelden
  • Registrieren

Lieber Besucher, herzlich willkommen bei: NAS Forum. Falls dies Ihr erster Besuch auf dieser Seite ist, lesen Sie sich bitte die Hilfe durch. Dort wird Ihnen die Bedienung dieser Seite näher erläutert. Darüber hinaus sollten Sie sich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutzen Sie das Registrierungsformular, um sich zu registrieren oder informieren Sie sich ausführlich über den Registrierungsvorgang. Falls Sie sich bereits zu einem früheren Zeitpunkt registriert haben, können Sie sich hier anmelden.

1

Samstag, 29. November 2008, 00:56

SSH Login mit Public Key

Hallo.

Ich benutze NAS2000 mit neuester Firmware sowie dem SSH Server Paket von Raidsonic.
Alles funktioniert soweit wunderbar.

Ich möchte dropbear jetzt beibringen, einen public key zu akzeptieren.
Im Wiki habe ich schon eine Anleitung gelesen, wonach authorized_keys nach ~/.ssh/* soll (was /root/.ssh/authorized_keys bedeuten würde, richtig?).
Das hab ich mal ins do-it Skript eingebunden. Die Datei wird auch brav dorthin kopiert, dropbear ignoriert diese aber anscheinend trotzdem.
Es gibt keine Fehlermeldung, keinen Syslog Eintrag. Dropbear fragt einfach stur user und Passwort ab.

Der Raidsonic Support gab den Tipp, authorized_keys direkt in das data Verzeichnis des dropbear zu legen.
Das funktioniert ebenso wenig.
Der nächste Tipp des Supports: Mal im Forum nachfragen.


Hat das schon mal jemand hinbekommen? ... ohne Tinky.

Gruß
enteiser

HWguru

NAS2000-Team

Beiträge: 1 001

Wohnort: Wien

2

Samstag, 29. November 2008, 11:03

Servus enteiser.
interessante Frage die du da stellst.

Ich habe mich damit noch nicht beschäftigt, aber jetzt mal kurz auch nachgelesen.
Im Wiki steht aber auch dass dropbear mit -s gestartet werden muss. Das erledigt dann inetd in dem angeführten Beispiel beim Zugriff auf das pop3 port.

In der Wikipedia gibt es eine Anleitung zu inetd

Also eventuell ein port aus /etc/services nehmen oder die Datei editieren und dann für den Eintrag in /etc/inetd.conf benützen.
Sonst müsste der prinzipielle Ablauf auch hier mit der original Firmware funktionieren.

Quellcode

1
mein-port stream tcp nowait root /mnt/IDE1/public/applications/ssh-server/bin/dropbear dropbear -i -s

wheel gibt es bei der RS FW nicht. Wenn man aber ein "nicht standard" Port für ssh nimmt, ist glaube ich das Risiko für einen Hackerangriff nicht so hoch, natürlich ein gutes Kennwort vorausgesetzt.

Ich werde das auch mal testen, habe aber gerade nicht die Zeit dazu.

lG HWguru
Leute ohne Laster haben oft wenige Tugenden...
NAS2000 2.3.2.IB.2.RS.1+Lüfterabschaltung+SSH+do_it+zusätzliche commandline tools+changed root password
1. suchen - lesen - Google - lesen - 1. Fragen gehören ins Forum, dann profitieren alle davon!

snoopy

NAS2000-Team

Beiträge: 467

Wohnort: Zu Hause

3

Samstag, 29. November 2008, 14:12

moin,

gehts denn nicht auch anders rum?

also den private key am client paaren? der public key wird eh bereit gestellt vom ssh server. Mit WinSCP passt das so. Ist eine putty private key, *.ppk.

Nur so eine Idee :)

Greetz.
--------------------------------------------------------------------------
Der Mensch ist das wichtigste und kostbarste Peripheriegerät einer Computeranlage.

myStuff: NAS2001+4220(1000Gb-ext3)+Dlink524+KabelD. (120 Mbit)

4

Sonntag, 30. November 2008, 03:44

Hallo.

@snoopy: Ich habe schon einen public key in Verwendung und möchte diesen auf der Icybx ebenfalls einsetzen.


Ich möchte dropbear nicht über das Internet erreichbar machen, sondern nur authorized_keys (zusätzlich) benutzen können.
Die Option "-s" habe ich nicht verwendet, weil diese ein Passwort Login verbieten würde. Inet.d brauche ich auch nicht, da ich die Startoptionen nicht verändern möchte.


Wenn ich es richtig verstehe, sollte die authorized_keys in /root/.ssh/* ausreichen.
Aber leider funktioniert das nicht.
Habe auch schon versucht die Datei in /mnt/IDE1/public/applications/ssh-server/bin und /mnt/IDE1/public/applications/ssh-server/data unterzubringen, leider ohne Erfolg.

Dropbear scheint keinen Standort zu mögen.

Es ist nicht lebenswichtig, das ans Laufen zu bringen. Aber es wäre schon interessant zu wissen.
Fällt euch noch irgendwas ein?


Gruß
enteiser

snoopy

NAS2000-Team

Beiträge: 467

Wohnort: Zu Hause

5

Sonntag, 30. November 2008, 14:31

Hola,

das Verzeichnis unter ~/.ssh/id.dss oder ~/.ssh/id.rsa scheint korrekt zu sein. Schau doch mal, ob die Rechte rwxrwxrwx gesetzt sind, bei dem Schlüssel, den Du da rein stellst. USR=root und Besitzer auch=root. Neben dem Verzeichnis auf dem NAS public/app../ssh-server/data liegen zumindest die initialkeys, aber unter /usr/local/bin - liegt noch ein Key und so wie ich das kenne liegen die gepaarten nie unter public. Versuch Dich mal in dem verzeichnis :whistling: Auch hier die Rechte mal anschauen. rwxrwxrwx - wird alles benötigt.

Nach ein paar Ausflügen ins Googleland habe ich aber auch noch einen interessanten Comment gefunden. Mit Open SSH als server scheint es zu laufen, dropbear-dropbear geht wohl nicht :think: ... Komisch. Doch lesen Sie selbst: ?(

> > Does this mean, dropbear is unable to provide passwordless ssh between the
> > dropbear client, and an openssh server?
> >
> > Jim
>> No, you can use a Dropbear client with an OpenSSH server.
> The public-key portion (what dropbearkey -y gives you, and
> dropbearkey prints on key generation, which you put in
> ~/.ssh/authorized_keys) is common between Dropbear and
> OpenSSH.
>
Well, I tried generating both an rsa and dss key and putting them in
~/.ssh/id_rsa and ~/.ssh/id_dss and neither seemed to work. I tried
the public portion in both ~/.ssh/authorized_keys and authorized_keys2
on the remote server.

I ended up just switching to openssh and it definately works.


Well, ist zwar für ein anderes NAS, aber das Prob ist wohl exakt das selbe.

Greetz. Snoopy
--------------------------------------------------------------------------
Der Mensch ist das wichtigste und kostbarste Peripheriegerät einer Computeranlage.

myStuff: NAS2001+4220(1000Gb-ext3)+Dlink524+KabelD. (120 Mbit)

6

Sonntag, 30. November 2008, 16:52

Hallo Snoopy.

authorized_keys gehört der Gruppe root und dem Besitzer root. Rechte stehen auf 0600.
Ich habs auch schon mal mit 0777 probiert und auch schon mal mit Besitzer admin, alles ohne Erfolg.

Der Comment ist wirklich interessant.
Zu meinem Verständnis. Dropbear ist der SSH Server auf der Icybox. Doch als Client benutze ich Putty unter Windows. Setzt Putty auf Dropbear auf?
Wenn nicht, dann hätten wir hier diese Konstellation: Dropbear - Putty.

Und diese Konstellation funktioniert mit einer Fritzbox einwandfrei.



Habe in der Zwischenzeit noch ein wenig herumgeforscht - es war gestern einfach zu spät bzw früh ;-)

Einen Hinweis in den System logs habe ich jedesmal völlig überlesen:

Quellcode

1
2
Child connection from x.x.x.x:4097
/root must be owned by user or root, and not writable by others


Und in der Tat gehört /root nicht root, sondern admin.
Also flugs auf root geändert und siehe da:

Quellcode

1
pubkey auth succeeded for 'root' with key sha1 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx from x.x.x.x:4099



Im do_it Skript liesse sich sicherlich ein chown einbauen, die Frage ist allerdings:
Warum gehört /root admin und nicht root?
Und was für Nebenwirkungen könnte diese Änderung haben?



EDIT: Kleiner Nachtrag. Hier der Eintrag fürs init Skript:

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#
#copying authorized keys to home directory
#
HD_MNT_POINT=$(cat /usr/sausalito/codb/objects/1/Disk.rootdir 2> /dev/null)
WORK_DIR=$HD_MNT_POINT/public/applications/do_it

if [ -f $WORK_DIR/authorized_keys ]; then
  mkdir /root/.ssh
  echo "copy authorized_keys"
  cp $WORK_DIR/authorized_keys /root/.ssh/authorized_keys
  #making root owner of /root for SSH authorized_keys
  chown root /root
  #restricting acces to root of /root for SSH authorized_keys
  chmod 0700 /root 
else
  echo "$WORK_DIR/authorized_keys not found ... skipping"
fi

Das funktioniert soweit ich das bis jetzt erkennen kann wunderbar.
Langzeitwirkungen ausgeschlossen .....


Eure Meinung zu dieser Lösung?



Gruß
enteiser

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »enteiser« (30. November 2008, 17:17)


HWguru

NAS2000-Team

Beiträge: 1 001

Wohnort: Wien

7

Sonntag, 30. November 2008, 17:54

Hi,
klasse, ich würde sagen, das ist die Lösung und das Thema hat einen Umzug in die Lösungsecke verdient :happy: .

Ich habe bei dem NAS4220 nachgeschaut.
Dort gehört /root auch dem user root. Nachdem die Firmware fast ident ist, würde ich keine Probleme erwarten.
Außerdem ist auf /root nur .profile und .ash_history zu finden.

Ich würde sogar sagen, es ist schlecht dass /root admin gehört, weil admin ein ganz normaler NAS user ist.

lG HWguru

P.S. ich habe mir erlaubt den if/else Block etwas einzurücken
Leute ohne Laster haben oft wenige Tugenden...
NAS2000 2.3.2.IB.2.RS.1+Lüfterabschaltung+SSH+do_it+zusätzliche commandline tools+changed root password
1. suchen - lesen - Google - lesen - 1. Fragen gehören ins Forum, dann profitieren alle davon!

snoopy

NAS2000-Team

Beiträge: 467

Wohnort: Zu Hause

8

Sonntag, 30. November 2008, 20:12

Hi enteiser,

ich war der Meinung Du nutzt auch den dropbear als client. Mit dropbear---Putty sollte das klappen. Mit WinSCP geht es auch.

Allerdings steht zu Recht noch das sicherheitskritische root - admin Prob. Admin zu Root machen ist absolut ein Sicherheitsrisiko. DAmit kann sich aus dem internet jemand als user "admin" einloggen und zum root aufschwingen. -su .... Und damit ist egal, ob Du den Port nach außen dicht machst oder nicht. Warum änderst Du nicht den Besitzer von /root in root? Dann sollte es doch klappen. Als Admin sollte das auch erlaubt sein. :think: ... eigentlich.

Greetz. Snoopy

Ps. Die Fehlermeldung sagt es schon, "Not writable by others" ... Also /root rwxr-xr-x (Aber nicht rekursiv setzen ;) ) daran könnte es auch liegen
--------------------------------------------------------------------------
Der Mensch ist das wichtigste und kostbarste Peripheriegerät einer Computeranlage.

myStuff: NAS2001+4220(1000Gb-ext3)+Dlink524+KabelD. (120 Mbit)

snoopy

NAS2000-Team

Beiträge: 467

Wohnort: Zu Hause

9

Dienstag, 2. Dezember 2008, 22:52

Eine Frage am Rande, passt aber zum Thema Key & Co.: Hat schon jemand versucht die Keys zu zertifizieren? Selbst (www.openca.org/ oder mit ocert.org/ oder orgcert - tools) oder durch einen Drittanbieter?

Wäre dankbar für Erfahrungen, ehe ich mich von Grundauf selbst da rein wurschtel .... :happy:

Greetz. Snoopy
--------------------------------------------------------------------------
Der Mensch ist das wichtigste und kostbarste Peripheriegerät einer Computeranlage.

myStuff: NAS2001+4220(1000Gb-ext3)+Dlink524+KabelD. (120 Mbit)

10

Mittwoch, 3. Dezember 2008, 19:24

Hi snoopy.

Sorry, keine Erfahrung damit.

Gruß
enteiser

snoopy

NAS2000-Team

Beiträge: 467

Wohnort: Zu Hause

11

Freitag, 5. Dezember 2008, 17:01

OK. Dann an dieser Stelle: :closed:

Und das Thema Zertifikate & Co. bekommt ein neues Topic.

THX an alle fleissigen Bienchen in diesem Thema.
--------------------------------------------------------------------------
Der Mensch ist das wichtigste und kostbarste Peripheriegerät einer Computeranlage.

myStuff: NAS2001+4220(1000Gb-ext3)+Dlink524+KabelD. (120 Mbit)