cisza

Jak korzystać z polecenia ssh-copy-id

Jak korzystać z polecenia ssh-copy-id

Polecenie ssh-copy-id to proste narzędzie, które pozwala zainstalować klucz SSH na autoryzowanych kluczach zdalnego serwera. To polecenie ułatwia logowanie za pomocą klucza SSH, co eliminuje konieczność podawania hasła przy każdym logowaniu, zapewniając w ten sposób automatyczny proces logowania bez hasła. Polecenie ssh-copy-id jest częścią OpenSSH, narzędzia do zdalnego administrowania systemem przy użyciu szyfrowanych połączeń SSH.

Z tego artykułu dowiesz się, jak korzystać z narzędzia ssh-copy-id, aby logowanie SSH było bardziej płynne i bezpieczne.

Jak zainstalować polecenie ssh-copy-id?

Narzędzie ssh-copy-id, część pakietu OpenSSH, jest dostępne we wszystkich głównych repozytoriach dystrybucji Linuksa i możesz użyć swojego menedżera pakietów, aby zainstalować to polecenie.

Aby zainstalować narzędzie ssh-copy-id na Debianie, użyj następującego polecenia:

sudo apt-get update && sudo apt-get install openssh-client

Po zainstalowaniu OpenSSH możesz użyć narzędzia ssh-copy-id w wierszu poleceń.

$ identyfikator-kopii-ssh
Użycie: /usr/bin/ssh-copy-id [-h|-?|-f|-n] [-i [plik_tożsamości]] [-p port] [[-o ]… ] [użytkownik@]nazwa hosta         -f: tryb wymuszeń – kopiuj klucze bez sprawdzania, czy są już zainstalowane         -n: uruchomienie próbne    – żadne klucze nie są kopiowane         -h|-?: wydrukuj tę pomoc

Korzystanie z ssh-copy-id jest proste, ponieważ skrypt ułatwia i usprawnia proces uwierzytelniania klucza publicznego. Zanim zagłębimy się w korzystanie z narzędzia, najpierw omówimy, jak działa uwierzytelnianie za pomocą klucza publicznego SSH.

UWAGA: Jeśli już wiesz, jak działa uwierzytelnianie za pomocą klucza publicznego SSH, możesz pominąć tę część i natychmiast zagłębić się w temat korzystania z polecenia ssh-copy-id.

Uwierzytelnianie klucza publicznego SSH

Uwierzytelnianie publicznym kluczem SSH to metoda uwierzytelniania SSH, która pozwala użytkownikom używać kryptograficznie wygenerowanych kluczy do logowania się na zdalnych serwerach.

Klucze SSH są bezpieczniejsze niż surowe hasła i zapewniają znacznie wydajniejszy sposób logowania do SSH. Klucze SSH są zautomatyzowane, a po autoryzacji nie wymagają hasła przy każdym logowaniu.

Aby użyć klucza SSH, zaczniemy od wygenerowania klucza.

Jak wygenerować klucz SSH

Aby wygenerować klucz SSH, użyj narzędzia ssh-keygen, które jest częścią OpenSSH. To narzędzie generuje pliki kluczy publicznych i prywatnych przechowywane w ~/.katalog ssh, jak pokazano poniżej.

$ ssh-keygen
Generowanie pary kluczy publiczny/prywatny rsa.
Wpisz plik, w którym chcesz zapisać klucz (/root/.ssh/id_rsa):
Utworzony katalog '/root/.ciii.
Wpisz hasło (puste, jeśli nie ma hasła):
Wprowadź ponownie to samo hasło:
Twoja identyfikacja została zapisana w /root/.ssh/id_rsa.
Twój klucz publiczny został zapisany w /root/.ssh/id_rsa.pub.
Kluczowy odcisk palca to:
SHA256:ddVOQhS6CGt8Vnertz9aiSnvOUKmSpPrZ+gI24DptsA root@user Losowy obraz klucza to:
+---[RPA 2048]----+
| o=o |
| o. o|
| … + .+.|
|       . + + o .o|
| S + .  . |
|. o   … o o  + .|
|.Eo   +. +. + + |
|o.  =.o+ .o.+… |
|.o… oo=+   o=o.+|
+----[SHA256]-----+

Jak skopiować klucz SSH za pomocą SSH-copy-id

Po wygenerowaniu klucza SSH możemy ręcznie dodać klucz SSH do pliku autoryzowanych_kluczy maszyny zdalnej lub użyć polecenia ssh-copy-id.

Aby ułatwić ten proces, użyjemy polecenia ssh-copy-id. Po prostu wywołaj polecenie ssh-copy-id i przekaż ścieżkę do klucza publicznego w następujący sposób:

$ identyfikator-kopii-ssh -i ~/.ssh/id_rsa.użytkownik [email protected] -p 6576

Po wprowadzeniu powyższego polecenia powinieneś otrzymać następujące dane wyjściowe:

/usr/bin/ssh-copy-id: INFO: Źródło kluczy do zainstalowania: "/root/.ssh/id_rsa.pub"
/usr/bin/ssh-copy-id: INFO: próba zalogowania się przy użyciu nowych kluczy, aby odfiltrować te, które są już zainstalowane
/usr/bin/ssh-copy-id: INFO: 1 klucz(e) pozostało do zainstalowania -- jeśli teraz pojawi się monit, należy zainstalować nowe klucze [email protected]ło 101:
Liczba dodanych kluczy: 1 Teraz spróbuj zalogować się do komputera za pomocą: „ssh -p '6576”[zabezpieczony adres e-mail]” i upewnij się, że dodano tylko żądane klucze.

UWAGA: Nigdy nie kopiuj swojego klucza prywatnego na inny komputer.

Po pomyślnym wykonaniu polecenia spróbuj zalogować się do serwera za pomocą przesłanego klucza w następujący sposób:

$ ssh -p 6576 [email protected]

Powyższe polecenie będzie wymagało wprowadzenia hasła do klucza publicznego, jak pokazano na poniższym rysunku:

Wpisz hasło dla klucza '/root/.ssh/id_rsa':
Ostatnie logowanie: pt 5 marca 14:06:16 2021 od 173.208.98.186

Powyższe polecenie powinno umożliwić zalogowanie się do zdalnego hosta bez pytania o hasło użytkownika. System może poprosić Cię o wprowadzenie hasła klucza, który ustawiłeś wcześniej.

Opcje poleceń SSH-copy-id

Możesz zmodyfikować sposób działania polecenia ssh-copy-id za pomocą dostarczonych argumentów. Aby wyświetlić stronę pomocy, użyj polecenia ssh-copy-id -h lub użyj polecenia ssh-copy-id bez argumentów.

  1. -kłócę się: Ten argument określa plik tożsamości, który ma być użyty, i.mi., skopiowane do określonego zdalnego hosta. Jeśli nie podasz argumentu -i, wszystkie pliki w ~/.katalog ssh z pasującym wzorcem *.pub zostanie dodany.
  2. -f flaga: Ta flaga włącza tryb wymuszony, który nie sprawdza, czy klucz jest wstępnie skonfigurowany w Author_keys na serwerze. Flaga -f dodaje klucz, często skutkując wieloma kopiami tego samego klucza zainstalowanymi na serwerze.
  3. -flaga p: Ta flaga określa port SSH do połączenia ze zdalnym hostem. Ta flaga jest używana, gdy domyślny port SSH nie jest używany.
  4. -n flaga: Ta flaga wykonuje próbny przebieg, który drukuje klucze przeznaczone do instalacji bez instalowania ich na zdalnym hoście.

Wniosek

W tym przewodniku pokazano, jak używać polecenia ssh-copy-id do instalowania kluczy SSH na zdalnych hostach. Chociaż może to być prosta i wydajna metoda instalowania kluczy, źle skonfigurowane klucze mogą powodować problemy z bezpieczeństwem lub zablokowanie systemu. Dlatego bądź bardzo ostrożny podczas eksperymentowania z tym procesem.

Gry OpenTTD Tutorial
OpenTTD Tutorial
OpenTTD is one of the most popular business simulation games out there. In this game, you need to create a wonderful transportation business. However,...
Gry SuperTuxKart for Linux
SuperTuxKart for Linux
SuperTuxKart is a great title designed to bring you the Mario Kart experience free of charge on your Linux system. It is pretty challenging and fun to...
Gry Battle for Wesnoth Tutorial
Battle for Wesnoth Tutorial
The Battle for Wesnoth is one of the most popular open source strategy games that you can play at this time. Not only has this game been in developmen...