rsnapshot mit ssh ohne Password scheitert

Status
Für weitere Antworten geschlossen.

wired2051

Benutzer
Mitglied seit
17. Mrz 2010
Beiträge
893
Punkte für Reaktionen
11
Punkte
44
OK, jetzt scheine ich Erfolg gehabt zu haben:

DS209> ssh -i /volume2/homes/user/.ssh/private.key user@IP_DES_PC
The authenticity of host 'IP_DES_PC (IP_DES_PC)' can't be established.
RSA key fingerprint is xxx.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'IP_DES_PC' (RSA) to the list of known hosts.
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: UNPROTECTED PRIVATE KEY FILE! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions 0644 for '/volume2/homes/user/.ssh/private.key' are too open.
It is recommended that your private key files are NOT accessible by others.
This private key will be ignored.
bad permissions: ignore key: /volume2/homes/user/.ssh/private.key

user@IP_DES_PC's password:
Linux AlexDenton 2.6.24-27-generic #1 SMP Fri Mar 12 01:10:31 UTC 2010 i686

The programs included with the Ubuntu system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Ubuntu comes with ABSOLUTELY NO WARRANTY, to the extent permitted by
applicable law.

To access official Ubuntu documentation, please visit:
http://help.ubuntu.com/
Last login: Mon Apr 26 20:53:14 2010
user@Rechner:~$

Offenbar bin ich nun auf dem PC aber private key ist immer noch nicht i.O. und ich musste mein pw eingeben...
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
.ssh muss chmod 0700 und alle Files darin chmod 0600 sein
Ein PrivateKey darf nur Rechte für den Eigentümer haben und niemanden sonst.
 

wired2051

Benutzer
Mitglied seit
17. Mrz 2010
Beiträge
893
Punkte für Reaktionen
11
Punkte
44
.ssh muss chmod 0700 und alle Files darin chmod 0600 sein

Habe ich noch einmal überprüft:

auf der DS:

drwx------ 2 user users 4096 Apr 26 21:36 .ssh

DS209> ls -la
drwx------ 2 user users 4096 Apr 26 21:36 .
drwxr-xr-x 3 user users 4096 Apr 26 16:14 ..
-rw------- 1 user users 1766 Apr 21 19:16 authorized_keys
-rw------- 1 user users 392 Apr 21 19:16 authorized_keys.pub
-rw------- 1 user users 1766 Apr 21 19:22 id_rsa
-rw------- 1 user users 396 Apr 21 19:22 id_rsa.pub
-rw------- 1 user users 395 Apr 26 21:36 known_hosts
-rw------- 1 user users 887 Apr 26 15:10 private.key

auf dem PC

drwx------ 2 user user 4096 2010-04-26 21:22 .ssh

drwx------ 2 user user 4096 2010-04-26 21:22 .
drwxr-xr-x 78 user user 4096 2010-04-26 20:53 ..
-rw------- 1 user users 237 2010-04-26 21:22 authorized_keys
-rw------- 1 user users 238 2010-04-26 16:39 authorized_keys~
-rw------- 1 user user 1675 2010-04-21 15:09 id_rsa
-rw------- 1 user user 401 2010-04-21 15:09 id_rsa.pub
-rw------- 1 user user 442 2010-04-26 21:00 known_hosts
-rw------- 1 user users 884 2010-03-21 12:44 known_hosts~
-rw------- 1 user users 887 2010-04-26 14:08 private.key
-rw------- 1 user users 272 2010-04-26 14:08 public.key

und dennoch muss ich immer wieder das user-pw eingeben, dann klappt es aber.

DS209> ssh user@IP_DES_PC
user@IP_DES_PC's password:
Linux Rechner 2.6.24-27-generic #1 SMP Fri Mar 12 01:10:31 UTC 2010 i686

The programs included with the Ubuntu system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Ubuntu comes with ABSOLUTELY NO WARRANTY, to the extent permitted by
applicable law.

To access official Ubuntu documentation, please visit:
http://help.ubuntu.com/
Last login: Mon Apr 26 22:08:27 2010 from ds209.usernet
user@Rechner:~$ exit
logout
Connection to IP_DES_PC closed.
DS209>
DS209>
DS209> ssh -i /volume2/homes/user/.ssh/private.key user@IP_DES_PC
user@IP_DES_PC's password:
Linux Rechner 2.6.24-27-generic #1 SMP Fri Mar 12 01:10:31 UTC 2010 i686

The programs included with the Ubuntu system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Ubuntu comes with ABSOLUTELY NO WARRANTY, to the extent permitted by
applicable law.

To access official Ubuntu documentation, please visit:
http://help.ubuntu.com/
Last login: Mon Apr 26 22:16:20 2010 from ds209.Recnernet
user@Recner:~$

ich fürchte allerdings, ich kann mich erst Mittwoch wieder mit diesem Thema beschäftigen. Danke für Deine Geduld bis hierher! ;)
 
Zuletzt bearbeitet:

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
Wichtig wäre zu wissen welcher Fehler kommt wenn du es mit dem PrivateKey versuchst. Oder musstest du die Rechte nicht anpassen und die waren schon so wie in deinem Post? Dann wär es echt komisch warum ssh von einem chmod 0644 ausgeht...
 

goetz

Super-Moderator
Teammitglied
Sehr erfahren
Mitglied seit
18. Mrz 2009
Beiträge
14.024
Punkte für Reaktionen
275
Punkte
393
Hallo,
in /var/log/auth.log auf dem Ubuntu Rechner wirst die Fehlermeldung finden in etwa
Rich (BBCode):
error: key_read: uudecode <Schlüssel> failed
Dein public-key ist nicht im richtigen Format. Auf dem Ubuntu Rechner mache
Rich (BBCode):
ssh-keygen -b 1024 -t rsa
speicher den public-key in authorized_keys und übertrage den private key auf die DS, dann klappts auch mit ssh.

Gruß Götz
 

wired2051

Benutzer
Mitglied seit
17. Mrz 2010
Beiträge
893
Punkte für Reaktionen
11
Punkte
44
Wichtig wäre zu wissen welcher Fehler kommt wenn du es mit dem PrivateKey versuchst. Oder musstest du die Rechte nicht anpassen und die waren schon so wie in deinem Post? Dann wär es echt komisch warum ssh von einem chmod 0644 ausgeht...

Ja, ich habe die Rechte angepasst. Die Ausgabe danach siehst Du in meinem Post #43 von 22:31

Dein public-key ist nicht im richtigen Format.

Stimmt, die Meldung ist wirklich da. Ich brauche also einen anderen Schlüssel. Das wird im Ununtuusers-wiki auch beschrieben (s.u.).

speicher den public-key in authorized_keys und übertrage den private key auf die DS, dann klappts auch mit ssh.

Ehe ich jetzt völlig verwirrt bin, fasse ich noch einmal zusammen:

Szenario #1: Backup der PC-Daten mit rsnapshot auf der Synology DS 209
(rsnapshot wird auf DS gestartet und greift via SSH auf PC zu)
PC = Server
DS = Client


  1. ich erstelle id_rsa und id_rsa.pub mit ssh-keygen -b 1024 -t rsa auf dem PC
  2. ich tragen id_rsa.pub mit ssh-copy-id -i ~/.ssh/id_rsa.pub user@IP_DER_DS in /volume2/homes/user/.ssh/authorized_keys auf der DS ein

Soweit, so gut. Ich kann mich nun mit ssh user@IP_DER_DS auf der DS einloggen. Allerdings benötige ich immer noch ein Password!

Szenario #2: Backup der PC-Daten mit rsync auf der Synology DS 209
(rsync wird auf dem PC gestartet und greift via SSH auf die DS zu)
DS = Server
PC = Client


  1. ich erstelle privat.key mit openssl genrsa -out ./private.key 1024 auf der DS
  2. ich erstelle public.key mit openssl rsa -in ./private.key -pubout > ./public.key auf der DS
  3. ich trage public.key mit copy&paste auf dem PC in /home/a-zeller/.ssh/authorized_keys ein (ohne Leerzeichen mit "= user@IP_DER_DS" am Ende).

Nun kann ich mich von der DS wieder beim PC mit ssh IP_DES_PC einloggen - allerdings brauche ich immer ein Password.

Auf dem PC steht in der authorized_keys der Inhalt von public.key (mit Ergänzungen) auf der DS steht in der authorized_keys neben dem Inhalt von id_rsa.pub auch noch ein "RSA PRIVATE KEY" den ich nicht zuordnen kann (er entspricht jedenfalls nicht id_rsa) kann ich den löschen?

in beiden /etc/ssh/sshd_config steht übrigens:

PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
Ein PrivateKey hat afaik in authorized_keys nichts zu suchen. Dort gehören nur PubKeys rein
 

wired2051

Benutzer
Mitglied seit
17. Mrz 2010
Beiträge
893
Punkte für Reaktionen
11
Punkte
44

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
OK, dachte ich mir.

Bleibt die Frage, warum muss ich immer noch ein PW eingeben?!
Die Antwort ist, im Gegensatz zu Lösung, einfach: :)
Weil der PC den PubKey in auth_keys nicht dem verwendeten PrivateKey zuordnen kann. Das Warum ist aber eine andere Sache, kann aber eigentlich nur die sshd Conf auf dem PC resp dessen auth_keys File sein
 

wired2051

Benutzer
Mitglied seit
17. Mrz 2010
Beiträge
893
Punkte für Reaktionen
11
Punkte
44
Danke.

Kann es an Besitzer und Rechten liegen? Ich mache ssh schliesslich als user.
DS209> cd /etc/ssh/
DS209> ls -la
total 36
drwxr-xr-x 2 root root 4096 Mar 20 10:35 .
drwxr-xr-x 14 root root 4096 Apr 28 14:03 ..
-rw------- 1 root root 668 Mar 20 10:35 ssh_host_dsa_key
-rw-r--r-- 1 root root 606 Mar 20 10:35 ssh_host_dsa_key.pub
-rw------- 1 root root 979 Mar 20 10:34 ssh_host_key
-rw-r--r-- 1 root root 643 Mar 20 10:34 ssh_host_key.pub
-rw------- 1 root root 1675 Mar 20 10:34 ssh_host_rsa_key
-rw-r--r-- 1 root root 398 Mar 20 10:34 ssh_host_rsa_key.pub
-rw-r--r-- 1 root root 3444 Apr 28 15:30 sshd_config

user@PC:/etc/ssh$ ls -la
insgesamt 4228
drwxr-xr-x 2 root root 4096 2010-04-26 20:23 .
drwxr-xr-x 149 root root 8192 2010-04-28 10:51 ..
-rw-r--r-- 1 root root 2064867 2008-05-13 14:36 blacklist.DSA-1024
-rw-r--r-- 1 root root 2064867 2008-05-13 14:36 blacklist.RSA-2048
-rw-r--r-- 1 root root 132777 2008-05-14 16:35 moduli
-rw-r--r-- 1 root root 1595 2008-05-14 16:35 ssh_config
-rw-r--r-- 1 root root 1870 2010-04-26 20:23 sshd_config
-rw-r--r-- 1 root root 1873 2010-04-26 20:19 sshd_config~
-rw-r--r-- 1 root root 1874 2010-04-26 13:38 sshd_config ORIGINAL
-rw------- 1 root root 668 2010-04-26 13:38 ssh_host_dsa_key
-rw-r--r-- 1 root root 605 2010-04-26 13:38 ssh_host_dsa_key.pub
-rw------- 1 root root 1671 2010-04-26 13:38 ssh_host_rsa_key
-rw-r--r-- 1 root root 397 2010-04-26 13:38 ssh_host_rsa_key.pub

Und was das alles für keys sind, weiss ich auch nicht... :rolleyes:

Hilft es, wenn ich beide sshd_config vollständig hier poste?

Auf der DS ist in der authorized_keys id_rsa.pub (ohne Leerzeichen mit "= user@NAME_DES_PC" am Ende).
Auf dem PC ist in der authorized_keys public.key (ohne Leerzeichen mit "= user@IP_DER_DS" am Ende).

In known_hosts seht auf der DS übrigens die IP_DES_PC in der known_hosts auf dem PC steht scheinbar keine IP...
 
Zuletzt bearbeitet:

goetz

Super-Moderator
Teammitglied
Sehr erfahren
Mitglied seit
18. Mrz 2009
Beiträge
14.024
Punkte für Reaktionen
275
Punkte
393
Hallo,
also zu Szenario1, rsnpshot:
Du brauchst eine ssh Verbindung von der DS zm PC
private key gehört auf die DS, pubkic-key wird auf dem PC in die authorized_keys des Users eingetragen. Testen auf der DS
ssh -i <private-key-file> user@IP_DES_PC

Szenario2:
private key gehört auf den PC, pubkic-key wird auf der DS in die authorized_keys des Users eingetragen. Testen auf dem PC
ssh -i <private-key-file> user@IP_DER_DS

Gruß Götz
 

wired2051

Benutzer
Mitglied seit
17. Mrz 2010
Beiträge
893
Punkte für Reaktionen
11
Punkte
44
Aber das habe ich doch alles gemacht... :eek: Ich bin mit meinem Latein am Ende. Also noch einmal:

PC = Client
DS = Server


public und privat Key auf dem PC erstellt mit
ssh-keygen -b 1024 -t rsa

Ergebnis:
-rw------- 1 user users 883 2010-04-28 22:01 id_rsa
-rw-r--r-- 1 user users 229 2010-04-28 22:01 id_rsa.pub

pubkic-key wird auf der DS in die authorized_keys des Users eingetragen.
ssh-copy-id -i ~/.ssh/id_rsa.pub user@IP_DER_DS

In der .ssh/authorized_keys auf der DS steht nun id_rsa.pub vom PC.

Testen auf dem PC mit
ssh -i ~/.ssh/id_rsa user@IP_DER_DS

Ergebnis ist eine Fehlermeldung:
user@Rechner:~/.ssh$ ssh -i ~/.ssh/id_rsa user@IP_DER_DS
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that the RSA host key has just been changed.
The fingerprint for the RSA key sent by the remote host is
3b:11:93:63:9c:eb:85:a7:ab:4d:19:87:c7:18:aa:67.
Please contact your system administrator.
Add correct host key in /home/user/.ssh/known_hosts to get rid of this message.
Offending key in /home/user/.ssh/known_hosts:1
RSA host key for IP_DER_DS has changed and you have requested strict checking.
Host key verification failed.

Die /home/user/.ssh/known_hosts auf dem PC enthält wirre Zeichen, die scheinbar nicht mit einem der Keys übereinstimmen, auch die IP der DS steht scheinbar nicht drin...

PC = Server
DS = Client


private key auf der DS erstellen mit
openssl genrsa -out ./private.key 1024

Die Erstellung bricht auch bei mehreren Versuchen mit einer Fehlermeldung ab:

DS209> openssl genrsa -out ./private.key 1024
Generating RSA private key, 1024 bit long modulus
.++++++
.................................++++++
unable to write 'random state'
e is 65537 (0x10001)
 

goetz

Super-Moderator
Teammitglied
Sehr erfahren
Mitglied seit
18. Mrz 2009
Beiträge
14.024
Punkte für Reaktionen
275
Punkte
393
Hallo,
Fehlermeldung bitte genau lesen, lösche auf den PC den Inhalt von known_hosts, beim nächsten Versuch wird dann gefragt ob Du den neuen Host-Key speichern möchtest.

Für den 2. Fall kannst Du die Schlüssel auch auf dem PC erstellen, nur kommt dann der private-key auf die DS und der public-key in authorized_keys.

Gruß Götz
 

wired2051

Benutzer
Mitglied seit
17. Mrz 2010
Beiträge
893
Punkte für Reaktionen
11
Punkte
44
Fehlermeldung bitte genau lesen, lösche auf den PC den Inhalt von known_hosts, beim nächsten Versuch wird dann gefragt ob Du den neuen Host-Key speichern möchtest.

ES KLAPPT! :D Herzlichen Dank!

Für den 2. Fall kannst Du die Schlüssel auch auf dem PC erstellen, nur kommt dann der private-key auf die DS und der public-key in authorized_keys.

Das klappt leider noch nicht. :(

Also, ich habe mit ssh-keygen -b 1024 -t rsa die Keys id_rsa2 und id_rsa2.pub auf dem PC erstellt. Dann habe ich auf der DS id_rsa2 erstellt und den Inhalt von Editor(PC) zu Editor(DS) mit copy&paste kopiert.

Brauche ich den ssh-copy-id Befehl dann wirklich nicht?

Wenn ich auf der DS mit Telnet als user angemeldet bin, kommt beim Test allerdings eine Fehlermeldung, die scheinbar den private Key bei root sucht. Warum?

DS209> ssh -i ~/.ssh/id_rsa2 user@IP_DES_PC
Warning: Identity file /root/.ssh/id_rsa2 not accessible: Permission denied.
The authenticity of host 'IP_DES_PC (IP_DES_PC)' can't be established.
RSA key fingerprint is bc:af:31:68:74:82:51:63:43:d3:52:48:b3:4b:ac:72.
Are you sure you want to continue connecting (yes/no)? no

/root/.ssh/id_rsa2 existiert auf der DS nicht, der Key liegt in volume2/homes/user/.ssh/id_rsa2 Wenn ich den Test mit ssh -i /volume2/homes/user/.ssh/id_rsa2 user@IP_DES_PC mache, scheint es zu funktionieren, denn es kommt die erwartete Meldung...
 
Zuletzt bearbeitet:

goetz

Super-Moderator
Teammitglied
Sehr erfahren
Mitglied seit
18. Mrz 2009
Beiträge
14.024
Punkte für Reaktionen
275
Punkte
393
Hallo,
schön, daß es jetzt funktioniert. Das mit ~ ist ein Bug, cd ~ bringt einen nach /root, das darf nicht sein. Also immer kompletten Pfad angeben.

Gruß Götz
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
Hallo,
schön, daß es jetzt funktioniert. Das mit ~ ist ein Bug, cd ~ bringt einen nach /root, das darf nicht sein. Also immer kompletten Pfad angeben.

Gruß Götz
Ups ich dachte immer ~/ sei das Home des gerade angemeldeten Benutzers, der das Kommando ausführt?
 

goetz

Super-Moderator
Teammitglied
Sehr erfahren
Mitglied seit
18. Mrz 2009
Beiträge
14.024
Punkte für Reaktionen
275
Punkte
393
Hallo,
ja so sollte es sein. Ich hab das mal geprüft und mit einer einfachen Nutzeranmeldung zeigt ~ nach /root, bB->böser Bug.

Gruß Götz
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
Hallo,
ja so sollte es sein. Ich hab das mal geprüft und mit einer einfachen Nutzeranmeldung zeigt ~ nach /root, bB->böser Bug.

Gruß Götz
Tatsache habe das gerade auch probiert obB ober-böser Bug ;)
Da ich immer als root unterwegs bin und absolute Pfade verwende bin ich da noch nie reingelaufen.
In der sshd_conf steht doch aber bei authorized_key jeweils ein Pfad mit ~/.ssh/authorized_keys
Weisst du ob der von ssh korrekt aufgelöst wird oder reicht ssh das einfach 1:1 an Linux weiter? Dann dürfte das mit ssh für alle User ausser root wohl kaum mit Zertifikaten funzen. Von dem her könnte man das schon beinahe als "Security-Feature" bezeichnen ;)
 

goetz

Super-Moderator
Teammitglied
Sehr erfahren
Mitglied seit
18. Mrz 2009
Beiträge
14.024
Punkte für Reaktionen
275
Punkte
393
Hi Tobi,
keine Ahnung. Da offiziell kein User, außer root/admin, eine login-shell hat wird das niemand beobachtet haben.

Gruß Götz
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
Hi Tobi,
keine Ahnung. Da offiziell kein User, außer root/admin, eine login-shell hat wird das niemand beobachtet haben.

Gruß Götz
Hei Goetz

ich frag mal bei Synology an ob das ein Bug oder ein Feature ist :)

Gruss

tobi
 
Status
Für weitere Antworten geschlossen.
 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat