ssh-copy-id schlägt fehl

Alle weiteren Dienste, die nicht in die drei oberen Foren gehören.
Antworten
vdvogt
Beiträge: 397
Registriert: 22.12.2012 14:55:17
Lizenz eigener Beiträge: GNU Free Documentation License

ssh-copy-id schlägt fehl

Beitrag von vdvogt » 23.03.2018 18:51:44

Hallo,
da ich vor ein paar Tagen mein Buerorechner neu aufsetzen musste, bin ich nun dabei wieder rdiff-backup einzurichten.

Leider scheitert aber die Übertragung des id_rsa.pub files auf den Buero-Rechner, der gesichert werden soll.

Auf dem Backup-Rechner gibt es den User rdiff-backup mit dem Homeverzeichnis /backup. Drin gibt es das Unterverzeichnis .ssh.
Dort habe ich ein Schluesselpaar erzeugt, damit sich rdiff-backup mit einem cronjob Nachts als root passwortlos auf dem Buero-Rechenr einloggen und das Backup machen kann.

Mit dem Befehl

ssh-copy-id -i /backup/.ssh/id_rsa.pub root@Buero-Rechner

will ich nun die id_rsa.pub zum Buero-Rechner uebertragen.

Das scheitert aber mit folgender Fehlermeldung:

Code: Alles auswählen

/usr/bin/ssh-copy-id:59: can't cd to root
/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "id_rsa.pub"
/backup/.ssh/config line 13: Bad cipher 'blowfish'
Der configfile hat folgenden Inhalt:

Code: Alles auswählen

host			PX6-330				#Das ist mein Buero-Rechner
hostname		PX6-330.vogt.local
user			root
idetityfile		/backup/.ssh/id_rsa
compression		yes
cipher			blowfish				#so steht es im Tutorial
protocol		2
Offensichtlich ist blowfish hier nicht richtig.
Soll ich das einfach weglassen, oder etwas anderes einsetzen? Was?

Was ist gemeint mit dem Fehler: "/usr/bin/ssh-copy-id:59: can't cd to root"

Muss ich den Befehl etwa als root ausfuehren?

Kann es an den Berechtigungen der id_rsa-files liegen?

Diese haben:

id_rsa rw- --- ---
id_rsa.pub rw- r-- r--
config rwx --- ---

Auf dem Buero-Rechner habe ich schon durch touch in /root/.ssh folgende Dateien angelegt, mit den Berchtigungen:

-rw-r--r-- 1 root root 0 Mär 23 16:47 authorized_keys
-rw-r--r-- 1 root root 0 Mär 23 16:40 id_rsa
-rw-r--r-- 1 root root 0 Mär 23 16:44 id_rsa.pub
-rw-r--r-- 1 root root 0 Mär 23 16:45 known_hosts

in der Hoffnung, dass der Copy-Befehl gelingt, aber alles hat nichts geholfen.

Kann mir jemand weiterhelfen?

Viele Gruesse
Veit

Lookbehind
Beiträge: 143
Registriert: 12.08.2011 18:09:13

Re: ssh-copy-id schlägt fehl

Beitrag von Lookbehind » 23.03.2018 22:42:32

Eine genaue Ursache kann ich dir nicht nennen. Aber ein paar Dinge, die mir spontan einfallen, die es evtl wert sind zu überprüfen.

1. Auch wenns banal klingt: Ein SSH-Server ist auf dem Büro-Rechner installiert und läuft?
2. Blowfish ist seit, ich glaub 2 Jahren, nicht mehr Bestandteil von OpenSSH. Zu unsicher. Entweder einen besseren Algorithmus eintragen, oder einfach die ganze Zeile weg lassen, dann sucht sich OpenSSH selbst was passendes.
3. SSH ist sehr picky wenn es um Zugriffsrechte geht. Das .ssh-Verzeichnis muss Rechte 700 haben, alle Dateien darin 600, außer den *.pub-Dateien, die dürfen 644 haben.
Ach ja, leere id_rsa Dateien sind absolut sinnfrei.

Wenn es wirklich nur um das übertragen des Keys geht. Du kannst auch einfach von Hand den Inhalt der id_rsa.pub (einfach mit cat ausgeben) in die authorized_keys Datei auf dem anderen Rechner eintragen. Was anderes macht ssh-copy-id auch nicht. ;)

vdvogt
Beiträge: 397
Registriert: 22.12.2012 14:55:17
Lizenz eigener Beiträge: GNU Free Documentation License

Re: ssh-copy-id schlägt fehl

Beitrag von vdvogt » 23.03.2018 23:40:48

Hallo Lookbehind,
1. ja, ich habe openssh-server auf beiden Rechnern installiert.

2. Blowfish werde ich dann mal aus der config streichen.

3. Ob das ssh-Verzeichnis 700 hat muss ich nachpruefen, aber die Rechte fuer die anderen Dateien sind ja, so wie Du schreibst, OK.

4. Die leeren Dateien auf dem Buero-Rechner hatte ich angelegt, weill ich irgendwo im Internet gefunden habe, dass es daran leigen koennte, dass die Dateien nicht vorhanden sind.
Also habe ich sie angelegt, damit ssh-copy dort reinschreiben kann. Aber wenn Du sagst, dass das nicht sein muss, dann loesche ich die wieder.

Pub-Key uebertragen: Ist es OK, wenn ich die Datei id_rsa.pub mit scp auf den anderen Rechner uebertrage und in die Authorized-keys von root schreibe?
Als welcher user soll ich das machen, als user rdiff-backup, oder als root?

Viele Gruesse
Veit

Lookbehind
Beiträge: 143
Registriert: 12.08.2011 18:09:13

Re: ssh-copy-id schlägt fehl

Beitrag von Lookbehind » 24.03.2018 16:57:25

Hallo vdvogt,
vdvogt hat geschrieben: ↑ zum Beitrag ↑
23.03.2018 23:40:48
...
3. Ob das ssh-Verzeichnis 700 hat muss ich nachpruefen, aber die Rechte fuer die anderen Dateien sind ja, so wie Du schreibst, OK.
Nein, haben sie nicht. Die sind, laut deinem Post, auf 644, müssen aber 600 haben. Einzige Ausnahme sind die *.pub-Dateien.
vdvogt hat geschrieben: ↑ zum Beitrag ↑
23.03.2018 23:40:48
...
Pub-Key uebertragen: Ist es OK, wenn ich die Datei id_rsa.pub mit scp auf den anderen Rechner uebertrage und in die Authorized-keys von root schreibe?
Als welcher user soll ich das machen, als user rdiff-backup, oder als root?
...
Der Inhalt der id_rsa.pub vom rdiff-Rechner, muss eben in die authorized_keys auf dem Büro-Rechner. Wie der jetzt da hin kommt, ob per ssh-copy-id, per kopieren der Datei, per Ein-Ausgabe-Umleitung oder per Copy-Paste in einer GUI, is herzlich egal. Zumindest auf dem Büro-Rechner solltest du das aber als root machen, sonst dürftest du da die nötigen Rechte nicht für haben. Is ja schließlich auch das Home-Verzeichnis von root.

vdvogt
Beiträge: 397
Registriert: 22.12.2012 14:55:17
Lizenz eigener Beiträge: GNU Free Documentation License

Re: ssh-copy-id schlägt fehl

Beitrag von vdvogt » 03.04.2018 17:36:19

Hallo,
ich bin zurueck aus dem Osterurlaub und habe heute mit rdiff-backup weitergemacht.
Soweit, sogut.
Authorized_keys ist eingerichtet.
Jetzt wollte ich rdiff-backup mit folgendem Befehl vom Backup-Rechner aus testen (Backup meines Home-Verzeichnisses nach /home/backup/PX6-330 auf dem Backup-Rechner):

rdiff-backup PX6-330::/home/<username> /home/backup/PX6-330 #PX6-330 heist der Buero-Rechner

Leider fragt der rdiff-Befehl trotz authorized_keys im /root/.ssh-Verzeichnis des Buero-Rechners (ssh-service wurde gestoppt und wieder gestartet nach der Aenderung von /etc/ssh/sshd_config Die Zeilen RSAAuthentication yes und PubkeyAuthentication yes wurde hinzugefuegt.) immer noch nach einem Password fuer Root.

Was habe ich diesmal falsch gemacht?

Die Zugriffsrechte fuer /root/.ssh sind 700, die Authorized_keys hat 644.

Viele Gruesse
Veit

Lookbehind
Beiträge: 143
Registriert: 12.08.2011 18:09:13

Re: ssh-copy-id schlägt fehl

Beitrag von Lookbehind » 03.04.2018 19:19:56

vdvogt hat geschrieben: ↑ zum Beitrag ↑
03.04.2018 17:36:19
...
Die Zugriffsrechte fuer /root/.ssh sind 700, die Authorized_keys hat 644.
...
Also immernoch falsch.
Lookbehind hat geschrieben: ↑ zum Beitrag ↑
23.03.2018 22:42:32
...
3. SSH ist sehr picky wenn es um Zugriffsrechte geht. Das .ssh-Verzeichnis muss Rechte 700 haben, alle Dateien darin 600, außer den *.pub-Dateien, die dürfen 644 haben.
...

vdvogt
Beiträge: 397
Registriert: 22.12.2012 14:55:17
Lizenz eigener Beiträge: GNU Free Documentation License

Re: ssh-copy-id schlägt fehl

Beitrag von vdvogt » 04.04.2018 14:16:09

Hallo,
ich habe jetzt alles kontrolliert und korrigiert:

Auf dem Buero-Rechner (PX6-330), von dem ein Backup gemacht werden soll und auf den vom Backup-Rechner per root-Rechten zugegriffen wird, ist:

/root/.ssh 700
Dateien in .ssh: id_rsa.pub und authorized_keys 600

Trotzdem fragt der Befehl ausgefuehrt auf dem Backup-Rechner:

rdiff-backup PX6-330::/home/<username> /home/backup/PX6-330

immer noch nach dem Root-Password.

Die Rechte auf dem Backup-Rechner sind
/home/backup/.ssh: 700
Dateien in .ssh: known_hosts, config und id_rsa: 600; id_rsa.pub: 644

Irgendwas ist immer noch falsch.

Was kann das sein?

Gruesse
Veit

vdvogt
Beiträge: 397
Registriert: 22.12.2012 14:55:17
Lizenz eigener Beiträge: GNU Free Documentation License

Re: ssh-copy-id schlägt fehl

Beitrag von vdvogt » 06.04.2018 18:00:17

Hallo,
ich habe heute nochmals alles kontrolliert und rdiff-backup ausprobiert.

Leider fragt rdiff-backup immer noch nach dem Password des Buero-Rechners.
Wenn ich rdiff-backup per Hand anstosse, ist das ja kein Problem.
Aber das schlaegt natuerlich fehl, wenn das per cronjob erledigt werden soll.

Kann das an den Files known_hosts liegen, die auch in .ssh drin sind.

Dort sind die ssh-Passwoerter gespeichert mit denen ich mich per ssh auf den einzelnen Rechnern einlogge.

Kann es sein, dass rdiff-backup sich daran stoert?

Woran koennte das noch liegen?

Viele Gruesse
Veit

Lookbehind
Beiträge: 143
Registriert: 12.08.2011 18:09:13

Re: ssh-copy-id schlägt fehl

Beitrag von Lookbehind » 08.04.2018 11:13:15

Ähm, Passwörter? In der known_hosts? Da sollten Host-Namen (gehasht) und deren Public-Keys (bzw Fingerprints) drin stehen. Aber keine Passwörter! Das ganze System ist eigentlich so gebaut, dass nirgendwo Passwörter gespeichert werden müssen. Schon gar nicht im Klartext!

Ansonsten: Wie sehen denn die Berechtigungen in dem .ssh-Verzeichnis auf dem Backup-Saystem aus?

Was passiert, wenn du auf dem Backup-System folgendes versuchst:
ssh -v root@Bürorechner

Den -v Parameter kann man mehrfach angeben. Je öfter man ihn angibt, desto ausführlicher wird die Ausgabe. Vielleicht findet sich darin ein Hinweis, warum keine Authentifizierung mit Public-Key stattfindet.

guennid

Re: ssh-copy-id schlägt fehl

Beitrag von guennid » 08.04.2018 11:24:44

Kann es sein, dass du an der falschen Stelle gräbst?

wie wär's damit, die sshd.config so zu ändern, dass root das Einloggen erlaubt wird, aber mit Passwort. Und anschließend das procedere mit ssh-copy-id durchzuziehen?

Gab's in diesem Thread nicht mal 'ne Code-Zeile mit sowas wie "root login without passwort"?

Antworten