Was ist der beste Weg, um scp
von einer Box zur anderen zu wechseln, ohne nach dem Passwort zu fragen?
Es gibt zwei Server:
Server A (10.152.2.10):
/home/oracle/export/files.txt
Server B (10.152.2.11):
/home/oracle/import/
Wenn ich die Dateien mit scp
von Server A auf Server B übertragen möchte, ohne zur Eingabe eines Kennworts aufgefordert zu werden
[Ausführen von Server A /home/oracle/export/
]
scp files.txt [email protected]:/home/oracle/import
Dies würde mich bei der Eingabe des Befehls zur Eingabe eines Passworts auffordern.
Ich verstehe, dass ein Keygen generiert und auf Server A kopiert werden muss. Also [auf Server A]:
ssh-keygen -t rsa
Dies gibt mir zwei Dateien gespeichert in /home/oracle/.ssh
:
id_rsa
id_rsa.pub
1. Soll ich die beiden Dateien ( id_rsa
, id_rsa.pub
) auf Server B kopieren /home/oracle/.ssh
?
Während der Google-Suche wurden einige Artikel zum Anhängen / Verketten an authorized_keys erwähnt.
2. Soll ich diese Datei selbst erstellen?
Ich scheine verwirrt darüber zu sein, was der richtige Weg ist, um dies zu tun.
Übrigens laufen auf den beiden Servern Suse Linux Enterprise Edition 9 ...
quelle
Antworten:
id_rsa
für sich. Dieserid_rsa.pub
öffentliche Schlüssel kann jedoch auf Server kopiert werden, auf die Sie Zugriff haben möchten. Verketten Sie sie bis zum Ende von~/.ssh/authorized_keys
.~/.ssh/authorized_keys
wenn es nicht bereits erstellt wurde. Ansonsten hängen Sie einfach mit an das Ende der Datei ancat id_rsa.pub >>~/.ssh/authorized_keys
.quelle
Es gibt auch ein Tool, das all dies für Sie sortiert
ssh-copy-id
.Der Schlüssel in Ihrem Agenten wird angehängt, wenn einer in der
authorized_keys
Datei ausgeführt wird, und erstellt, wenn er nicht mit den richtigen Berechtigungen vorhanden ist. Wenn Sie keinen Agenten ausführen, können Sie den Schlüssel angeben, mit dem gedrückt werden soll-i
:ssh-copy-id -i ~/.ssh/id_rsa
quelle
Sie sollten auch die Berechtigungen für die verschiedenen Dateien und Verzeichnisse überprüfen:
Ihr Home-Verzeichnis darf nur von Ihnen selbst beschrieben werden.
quelle
Wenn Sie den Schlüssel konfigurieren, der von der
ssh-keygen
Übertragung ohne Kennwort generiert wurde , jedoch nicht funktioniert, überprüfen Sie den auf dem Quellcomputer im ausführlichen Modus verwendeten öffentlichen Schlüssel wie folgt:Normalerweise bezieht es sich auf einen öffentlichen Schlüssel,
/home/<user>/.ssh/id_rsa.pub
der sich möglicherweise von dem unterscheidet, den Sie mit generiert habenssh-keygen
. Sie müssen diesid_rsa.pub
auf dem Zielserver hinzufügen .quelle
Ich würde folgendes tun:
Dadurch wird der Schlüssel vom Client auf den Server kopiert. Sie benötigen das Kennwort des Servers, damit er Ihren Schlüssel zu seinem Ring hinzufügt.
Ich würde zumindest die Kennwortauthentifizierung deaktivieren.
quelle