[3] Autentykacja za pomocą kluczy SSH

7 maja 2020 Wyłączono przez Adam [zicherka] Nogły

[1] W domyślnej konfiguracji OpenSSH w W2k16S tylko użytkownicy z grupy [Administrators] są skonfigurowani w  [authorized_keys], ponieważ plik ten nie jest w domyślnej lokalizacji OpenSSH. Jeśli chcesz ustawić go jako domyślną lokalizację zakomentuj te dwie linie.

Plik konfiguracyjny: [C:\ProgramData\ssh\sshd_config].

[2] Zaloguj się jako użytkownik dla którego chcesz wygenerować parę kluczy. Uruchom PowerShell i uruchom [ssh-keygen].

PS > ssh-keygen

[3] przejdź do folderu [.ssh] i zmień nazwę public-key file to [authorized_keys].

PS > cd .ssh 
PS > mv id_rsa.pub authorized_keys

[4] Zmień ustawienia zabezpieczeń dla [authorized_keys].
Ponieważ każdy użytkownik [Everyone:(RX)] jest dodawany do pliku, ale normalnie uniemożliwia zalogowanie się parą kluczy SSH, dlatego usuwany to prawo.

PS > icalcs authorized_keys 
PS > icacls authorized_keys /remove Everyone

To wszystko po stronie serwera. Przejdźmy na klienta, z którego będziemy się łączyć.

[5] Zaloguj się jako użytkownik, którym będziesz się łączył za pomocą kluczy SSH i uruchom PowerShell lub wiersz poleceń.
Następnie stwórz folder [.ssh], w katalogu domowym tego użytkownika. Następnie przenieś/skopiuj klucz do folderu [.ssh].

PS > mkdir .ssh 
PS > cd .ssh 
PS > sftp (username)@(SSH server's Hostname or IP address) 
sftp > cd .ssh 
sftp > get id_rsa 
sftp > exit

[6] Let’s GO! Sprawdźmy czy da się zalogować za pomocą klucza SSH – jeśli w [2] ustawiliśmy haslo do klucza to musimy go wpisać by potwierdzić, że to nasz klucz.

[7] Jeżeli przeniesiesz plik [id_rsa] do katalogu [.ssh] w swoim katalogu domowym na hoście Linux to możesz się zalogować również z niego na W2k16S

[centuser@sr01-vm ~]$ sftp winadmin@192.168.100.11
winadmin@192.168.100.11's password:
Connected to winadmin@192.168.100.11.
sftp> get id_rsa
Fetching /C:/Users/Administrator/id_rsa to id_rsa
/C:/Users/Administrator/id_rsa                                                       100% 2655     3.6MB/s   00:00
sftp> exit
[centuser@sr01-vm ~]$ ssh winadmin@192.168.100.11
Enter passphrase for key '/home/centuser/.ssh/id_rsa':
Microsoft Windows [Version 10.0.14393]
(c) 2016 Microsoft Corporation. All rights reserved.

winadmin@WSR01VM C:\Users\Administrator>dir
 Volume in drive C has no label.
 Volume Serial Number is 74A6-0BAE

 Directory of C:\Users\Administrator

07.05.2020  17:39    <DIR>          .
07.05.2020  17:39    <DIR>          ..
07.05.2020  13:10    <DIR>          .ssh
04.05.2020  08:37    <DIR>          Contacts
07.05.2020  11:17    <DIR>          Desktop
04.05.2020  08:37    <DIR>          Documents
04.05.2020  08:37    <DIR>          Downloads
07.05.2020  17:38                 0 dupa.txt
04.05.2020  08:37    <DIR>          Favorites
07.05.2020  13:07             2 655 id_rsa
04.05.2020  08:37    <DIR>          Links
04.05.2020  08:37    <DIR>          Music
04.05.2020  08:37    <DIR>          Pictures
04.05.2020  08:37    <DIR>          Saved Games
04.05.2020  08:37    <DIR>          Searches
04.05.2020  08:37    <DIR>          Videos
               2 File(s)          2 655 bytes
              14 Dir(s)  40 920 129 536 bytes free

winadmin@WSR01VM C:\Users\Administrator>exit
Connection to 192.168.100.11 closed.
[centuser@sr01-vm ~]$