it-swarm.com.de

Ist es möglich, ssh-copy-id auf einem anderen Port als 22 auszuführen?

Ich habe einen Server mit SSH, der auf einem nicht standardmäßigen Port ausgeführt wird. Anstelle von 22 läuft es auf 8129. Um mich anzumelden, verwende ich:

ssh -p 8129 hostname

Wenn ich jetzt einen Schlüssel für die kennwortlose Anmeldung einrichten muss, muss ich den öffentlichen Schlüssel kopieren und manuell zu autorisierten Schlüsseln hinzufügen. Ich entdeckte, dass der Befehl ssh-copy-id könnte verwendet werden, um diesen Prozess zu vereinfachen, aber es scheint, dass es keine Option gibt, den Port des SSH-Servers anzugeben.

Gibt es eine Möglichkeit, ssh-copy-id um Port 8129 zu verwenden, oder sollte ich diesen Befehl einfach vergessen und wie zuvor manuell kopieren/einfügen?

100
Milan Babuškov
$ ssh-copy-id "-p 8129 [email protected]"

Quelle :http://it-ride.blogspot.com/2009/11/use -ssh-copy-id-on-different-port.html

HINWEIS: Der Port muss sich vor dem Benutzer @ Host befinden, sonst wird er nicht aufgelöst

115
Jsan

ssh-copy-id akzeptiert keine Argumente, die an den zugrunde liegenden Befehl ssh weitergegeben werden könnten, aber Sie können einen Alias ​​in ~/.ssh/config .

Host myhost
HostName hostname
Port 8129

Dann renne ssh-copy-id myhost.

Ab openssh-client_6.2 gibt es jetzt ein dediziertes Port-Flag für den Befehl, das diese Syntax zulässt:

ssh-copy-id -p 8129 [email protected]

Es wurde auch Unterstützung für das Hinzufügen anderer ssh-Optionen mit dem Flag -o hinzugefügt.

Hier ist Ubuntus Manpage für die entsprechende Version, die in 13.04 eingeführt wurde: http://manpages.ubuntu.com/manpages/saucy/man1/ssh-copy-id.1.html

19
Colt McCormack

Ein kurzer Blick auf die Quelle zeigt, dass ssh-copy-id scheint keine Funktion zu haben, die dies erlaubt. Sie können jedoch stattdessen Folgendes tun:

ssh -p8129 [email protected] 'cat >> ~/.ssh/authorized_keys' < ~/.ssh/id_*.pub
11
Chris Down

Dies funktioniert (von hier ):

ssh-copy-id -i ~/.ssh/id_rsa.pub '-p 221 [email protected]'
7
DJR

Ich habe immer scp verwendet, um es zu kopieren:

scp -P 8129 ~/.ssh/id_*.pub [email protected]:
ssh -p 8129 [email protected] 'cat id_*.pub >> ~/.ssh/authorized_keys'

Obwohl ich sagen muss, werde ich wahrscheinlich die anderen Methoden (Einzeile/Verbindung) verwenden, wenn ich mich in Zukunft an sie erinnere. Dies ist jedoch eine weitere Option für Sie.

5
Kevin

Auf CentOS7 ist nur:

 ssh-copy-id "-p 1234" [email protected]

Bitte achten Sie darauf, user @ Host nicht in die Anführungszeichen zu setzen, da sonst in dieser Distribution der folgende Fehler angezeigt wird:

/usr/bin/ssh-copy-id: ERROR: Bad port ' 1234 [email protected]'
2
Max Cuttins

Mit meinem macOS hat das funktioniert.

ssh-copy-id -i ~/.ssh/id_rsa.pub -p <port> [email protected]
0
Jin Kwon

Ich benutze diesen Befehl:

ssh-copy-id ssh://[email protected]_addr:port

Beispiel:

ssh-copy-id ssh://[email protected]:23

0
Carlos