Ga naar inhoud


{PLI-garnet} Heeft iemand RSA/DSA keys en dropbear werkend?


Aanbevolen berichten

Geplaatst:

Hoi,

 

Op al mijn bakken hier heb ik RSA/DSA keys utigewisseld en overal kan ik netjes zonder password inloggen.

Alleen lukt het me op de dreambox niet.

Ik draai pli-garnet op een 7020 en ik vroeg me af of het iemand anders al wel is gelukt.

Even voor de duidelijkheid: de keys zijn op de goede manier aangemaakt (ga ik nu even niet op in), in de juiste files op de dreambox gezet en de .ssh-dir en files daarin hebben de juiste permissies (ik heb deze procedure al vele malen op andere machines uitgevoerd waar het wel werkt).

Echter, als ik probeer in te loggen lijkt het erop dat op het moment dat de client een public key aan biedt, er vanaf de kant van de dreambox niks mee gedaan wordt. Gevolg: fallback naar password (zie debug info hieronder).

 

Code:
mauce@mauce-laptop ~ # ssh root@dreambox -vvvOpenSSH_4.3p2 Debian-5ubuntu1, OpenSSL 0.9.8b 04 May 2006debug1: Reading configuration data /etc/ssh/ssh_configdebug1: Applying options for *debug2: ssh_connect: needpriv 0debug1: Connecting to dreambox [192.168.175.106] port 22.debug1: Connection established......BLA BLA BLA BLA ......debug1: sending SSH2_MSG_KEXDH_INITdebug1: expecting SSH2_MSG_KEXDH_REPLYdebug3: check_host_in_hostfile: filename /home/mauce/.ssh/known_hostsdebug3: check_host_in_hostfile: match line 18debug3: check_host_in_hostfile: filename /home/mauce/.ssh/known_hostsdebug3: check_host_in_hostfile: match line 19debug1: Host 'dreambox' is known and matches the RSA host key.debug1: Found key in /home/mauce/.ssh/known_hosts:18debug2: bits set: 517/1024debug1: ssh_rsa_verify: signature correctdebug2: kex_derive_keysdebug2: set_newkeys: mode 1debug1: SSH2_MSG_NEWKEYS sentdebug1: expecting SSH2_MSG_NEWKEYSdebug2: set_newkeys: mode 0debug1: SSH2_MSG_NEWKEYS receiveddebug1: SSH2_MSG_SERVICE_REQUEST sentdebug2: service_accept: ssh-userauthdebug1: SSH2_MSG_SERVICE_ACCEPT receiveddebug2: key: /home/mauce/.ssh/id_dsa (0x809ca38)debug2: key: /home/mauce/.ssh/id_rsa (0x809c398)debug2: key: /home/mauce/.ssh/id_rsa (0x80974b8)debug2: key: /home/mauce/.ssh/id_dsa (0x80974d0)debug1: Authentications that can continue: publickey,passworddebug3: start over, passed a different list publickey,passworddebug3: preferred publickey,keyboard-interactive,passworddebug3: authmethod_lookup publickeydebug3: remaining preferred: keyboard-interactive,passworddebug3: authmethod_is_enabled publickeydebug1: Next authentication method: publickeydebug1: Offering public key: /home/mauce/.ssh/id_dsadebug3: send_pubkey_testdebug2: we sent a publickey packet, wait for replydebug1: Authentications that can continue: publickey,passworddebug1: Offering public key: /home/mauce/.ssh/id_rsadebug3: send_pubkey_testdebug2: we sent a publickey packet, wait for replydebug1: Authentications that can continue: publickey,passworddebug1: Offering public key: /home/mauce/.ssh/id_rsadebug3: send_pubkey_testdebug2: we sent a publickey packet, wait for replydebug1: Authentications that can continue: publickey,passworddebug1: Offering public key: /home/mauce/.ssh/id_dsadebug3: send_pubkey_testdebug2: we sent a publickey packet, wait for replydebug1: Authentications that can continue: publickey,passworddebug2: we did not send a packet, disable methoddebug3: authmethod_lookup passworddebug3: remaining preferred: ,passworddebug3: authmethod_is_enabled passworddebug1: Next authentication method: passwordroot@dreambox's password:

 

Je ziet dat er tot 3 keer toe wordt geprobeerd om een public key aan te bieden aan de dreambox maar helaas geen resultaat en daarom dus een fallback.

 

Dit kan gerelateerd zijn aan de image (misschien dat gemini gebruikers het ook even kunnen testen).

 

Ik hoor graag van degene die dit werkend heeft op pli (garnet) hoe die dit gedaan heeft.

 

Bvd


  • Reacties 32
  • Aangemaakt
  • Laatste reactie

Beste reacties in dit onderwerp

Beste reacties in dit onderwerp

Geplaatst:

Hier werkt public key authentication met PLi Garnet (DM7020).

 

M'n OpenSSH DSA key in /home/root/.ssh/authorized_keys plaatsen is eigenlijk het enige wat ik gedaan heb. Daarbij moet ik wel zeggen dat het de eerste paar keer niet werkte, ook na het opnieuw starten van dropbear. Toen heb ik wat geknoeid met permissies, maar volgens mij staat alles weer op de oude waardes en het stopt nu alleen met werken als ik authorized_keys verwijder.

 

Zo zien de permissies er uit;

-rw-r--r-- 1 root root 610 Feb 21 14:41 /home/root/.ssh/authorized_keys

drwxr-xr-x 2 root root 0 Feb 21 14:41 /home/root/.ssh/

drwxr-xr-x 3 root root 0 Jan 1 10:51 /home/root/

drwxr-xr-x 2 root root 0 Feb 21 14:41 /etc/dropbear/

Geplaatst:
Citaat:
Hier werkt public key authentication met PLi Garnet (DM7020).

M'n OpenSSH DSA key in /home/root/.ssh/authorized_keys plaatsen is eigenlijk het enige wat ik gedaan heb. Daarbij moet ik wel zeggen dat het de eerste paar keer niet werkte, ook na het opnieuw starten van dropbear. Toen heb ik wat geknoeid met permissies, maar volgens mij staat alles weer op de oude waardes en het stopt nu alleen met werken als ik authorized_keys verwijder.

Zo zien de permissies er uit;
-rw-r--r-- 1 root root 610 Feb 21 14:41 /home/root/.ssh/authorized_keys
drwxr-xr-x 2 root root 0 Feb 21 14:41 /home/root/.ssh/
drwxr-xr-x 3 root root 0 Jan 1 10:51 /home/root/
drwxr-xr-x 2 root root 0 Feb 21 14:41 /etc/dropbear/


Raar, want hier heb ik alles net zo en toch werkt het niet.
Misschien dat het er aan ligt HOE je je DSA hebt aangemaakt.
Ik maak het aan met 'ssh-keygen -t dsa'

Hoe doe jij dat?

Misschien kun jij je debug info posten zodat ik de verschillen kan zien en op welk moment precies het bij mij mis gaat.
Geplaatst:

openssh en dropbear gebruiken andere keys.

keys moeten dus geconvert worden of ik moet een dropbear client gebruiken.

 

Ik had gehoopt met openssh als client zonder passwords naar de dreambox te connecten maar dat gaat dus niet <img src="/forums/images/graemlins/frown.gif" alt="" />

Geplaatst:

Ik heb .ssh op 700, en authorized_keys op 600.

Dat zijn de officiele rechten, openssh werkt niet als je teveel leesrechten geeft.

Maar blijkbaar dropbear wel...

 

Heb ook niks bijzonders hoeven doen, gewoon een ssh-dss key aan authorized_keys geappend.

Dropbear restarten enzo was niet nodig.

Wat ik wel altijd doe is .ssh laten aanmaken door ssh zelf (vanwege luiheid).

Dus door een keer vanaf de dreambox met de dropbear ssh client in te loggen op een extern systeem.

Geplaatst:

Lijkt me sterk dat het aan de public key ligt. De mijne heb ik 5 jaar geleden aangemaakt, dus ik weet niet meer precies hoe ik 'm gemaakt heb. Maar, een snel testje met 'ssh-keygen -t dsa' maakt een werkende sleutel.

 

Met PuTTY/PuTTYgen werkt public key authentication ook prima.

 

Ik denk toch dat je het aan de Dreambox/dropbear kant moet zoeken. Ik wou dat ik kon zeggen waar precies, maar ik heb mijn stappen niet precies genoeg bijgehouden.

 

Hier is mijn debug output (-vv), maar of je er wat aan hebt...

debug1: Host '192.168.0.17' is known and matches the RSA host key.

debug1: Found key in known_hosts:206

debug2: bits set: 510/1024

debug1: ssh_rsa_verify: signature correct

debug2: kex_derive_keys

debug2: set_newkeys: mode 1

debug1: Enabling compression at level 6.

debug1: SSH2_MSG_NEWKEYS sent

debug1: expecting SSH2_MSG_NEWKEYS

debug2: set_newkeys: mode 0

debug1: SSH2_MSG_NEWKEYS received

debug1: SSH2_MSG_SERVICE_REQUEST sent

debug2: service_accept: ssh-userauth

debug1: SSH2_MSG_SERVICE_ACCEPT received

debug1: Authentications that can continue: publickey,password

debug1: Next authentication method: publickey

debug1: Offering agent key:

debug2: we sent a publickey packet, wait for reply

debug1: Server accepts key: pkalg ssh-dss blen 434 lastkey 0x80947b8 hint -1

debug2: input_userauth_pk_ok: fp 21:52:df:c9:87:5d:66:ac:82:a1:9f:04:d6:c3:b8:f1

debug1: Authentication succeeded (publickey).

debug1: channel 0: new [client-session]

debug2: channel 0: send open

debug1: Entering interactive session.

debug2: callback start

debug2: ssh_session2_setup: id 0

debug1: channel 0: request pty-req

debug1: channel 0: request shell

debug2: callback done

debug1: channel 0: open confirm rwindow 8000 rmax 8000

root@dm7020 ~ #

Geplaatst:

Oja, en je moet wel ff een sterretje zetten in /etc/passwd voor root.

Inloggen met dropbear mag niet met een leeg password.

Geplaatst:

Het gaat hier gewoon niet werken.

 

DIt is wat ik doe:

 

Op mijn laptop (ubuntu) maar ik een key aan (heb zowel rsa als dsa geprobeerd):

ssh-keygen -t rsa

ssh-keygen -t dsa

De passphrase heb ik gewoon leeggelaten

 

daarna zet ik de public keys in authorized_keys op de dreambox:

cat ~/.ssh/id_rsa.pub | ssh root@dreambox "cat - >> ~/.ssh/authorized_keys"

cat ~/.ssh/id_dsa.pub | ssh root@dreambox "cat - >> ~/.ssh/authorized_keys"

 

Vervolgens converteer ik voor de zekerheid de private keys naar dropbear formaat:

/usr/lib/dropbear/dropbearconvert openssh dropbear ~/.ssh/id_rsa ~/.ssh/id_rsa.db

/usr/lib/dropbear/dropbearconvert openssh dropbear ~/.ssh/id_rsa ~/.ssh/id_rsa.db

 

Daarna probeer ik met een dropbear client naar de dreambox te knekken met gebruik van de zojuist gegenereerde id's:

dbclient -i id_dsa.db root@dreambox

of

dbclient -i id_rsa.db root@dreambox

 

En telkens blijft ie vragen om een password.

Ik heb de dropbear-server al eens gerestart (zelfs al eens de dreambox gereboot), maar helaas zonder resultaat.

 

Permissies van de .ssh dir en files daarin zijn goed (idd, dropbear is wat toleranter dan openssh wat permissie settings betreft).

 

Dropbear zoals in de dreambox geimplementeerd logt niks dus ik kan ook niet debuggen....

 

Zie ik wat over het hoofd of wat? (ben nu ff aan het koffiedik-kijken denk ik)

 

NB: een sterretje in /etc/passwd is voor mij niet van toepassing omdat ik daar al een (encrypted) password heb staan.

Geplaatst:

converteren van de keys is absoluut niet nodig.

En connecten met een dropbear client ook niet, ik gebruik gewoon de openssh client, om te connecten naar de dreambox.

Geplaatst:

Eerst zorgen dat root een password heeft. Als het root password leeg is, kom je er niet in, met of zonder key.

 

Ik gebruik een SSH key (RSA) van PuTTY, werkt prima vanaf dag 1. Door SSH te laten forwarden door m'n router, kan ik vanaf het internet secure met m'n DB connecten en de WebIf enzo gebruiken.

 

Als je authorized_keys cat, zou je iets moeten zien in de trend van:

 

ssh-rsa XXXXXXXDITXVERKLAPXIKXNIETXXXX comment

 

Permissies op die file maken niet zoveel uit, 644 is goed genoeg. Sommige systemen eisen dat deze file 400 permissie heeft.

 

Controleer ook of je SSH client wel een key stuurt. OpenSSH bijvoorbeeld pikt een id_rsa file niet automatisch op. Voor PuTTY moet je de keyfile ook apart aanwijzen.

Geplaatst:
Citaat:
Eerst zorgen dat root een password heeft. Als het root password leeg is, kom je er niet in, met of zonder key.

Ik gebruik een SSH key (RSA) van PuTTY, werkt prima vanaf dag 1. Door SSH te laten forwarden door m'n router, kan ik vanaf het internet secure met m'n DB connecten en de WebIf enzo gebruiken.

Als je authorized_keys cat, zou je iets moeten zien in de trend van:

ssh-rsa XXXXXXXDITXVERKLAPXIKXNIETXXXX comment

Permissies op die file maken niet zoveel uit, 644 is goed genoeg. Sommige systemen eisen dat deze file 400 permissie heeft.

Controleer ook of je SSH client wel een key stuurt. OpenSSH bijvoorbeeld pikt een id_rsa file niet automatisch op. Voor PuTTY moet je de keyfile ook apart aanwijzen.


Ja dat heb ik zo ook allemaal al jaren goed draaien met openssh (ik tunnel altijd naar mijn server voor hetzelfde).

Maar inmiddels ben ik er achter.
Alhoewel ik het bijna niet kan geloven dat dit het is geweest, maar tijdens het ssh-keygen commando heb ik de optie -b 1024 (aantal bits) meegegeven en daarna werkte het.

schiet mij maar lek.........
Geplaatst:

Dan zat je waarschijnlijk default met een erg korte key...

 

options.h van dropbear:

Code:
/* Minimum key sizes for DSS and RSA */#ifndef MIN_DSS_KEYLEN#define MIN_DSS_KEYLEN 512#endif#ifndef MIN_RSA_KEYLEN#define MIN_RSA_KEYLEN 512#endif
Geplaatst:
Citaat:
Dan zat je waarschijnlijk default met een erg korte key...

options.h van dropbear:
Code:
/* Minimum key sizes for DSS and RSA */#ifndef MIN_DSS_KEYLEN#define MIN_DSS_KEYLEN 512#endif#ifndef MIN_RSA_KEYLEN#define MIN_RSA_KEYLEN 512#endif


Nou ik denk eerder dat de dreambox niet met een te LANGE key overweg kan want ik zie dat de keys die ik in de eerste instantie gebruikte twee keer zo lang waren (ik denk dat in mijn geval -ubuntu 6.10- standaard 2048 bits wordt gebruikt).
Dit is slechts mijn vermoeden...
Geplaatst:

Hoi,

 

heb het ook maar eens geprobeerd, maar krijg het niet werkend. Probeer met putty de verbinding te maken maar krijg daarna de melding "server refuses key", waarna ik weer het password moet intikken (SSH verbinding met password komt gewoon tot stand). Ik heb "puttygen" een key laten genereren, en de public key vervolgens met een editor in authorized keys geplakt. Ik zie dat jullie commando "cat" daarvoor gebruiken. Kan dit een verschil maken?

 

groeten ftjl

Maak een account aan of log in om te reageren

Je moet een lid zijn om een reactie te kunnen achterlaten

Account aanmaken

Registreer voor een nieuwe account in onze community. Het is erg gemakkelijk!

Registreer een nieuwe account

Inloggen

Heb je reeds een account? Log hier in.

Nu inloggen
  • Wie is er online   0 leden

    • Er zijn geen geregistreerde gebruikers deze pagina aan het bekijken
×
×
  • Nieuwe aanmaken...