Konfigūruojame ssh autentifikaciją (Key-Based Authentication)
Didinsime saugumą. Saugiasniam prisijungimui prie serverio naudosime ne standartinį slaptažodį, o autentifikaciją raktų pagalbą (viešo ir privataus, angl. key based authentication).
1. Jei neturime, susigeneruojame ssh raktų porą (linux):
ssh-keygen
(passphrase naudojame dėl didesnio saugumo, t.y. jei reikia papildomos frazės kad pasinaudoti raktu)
Your identification has been saved in /home/username/.ssh/id_rsa. Your public key has been saved in /home/username/.ssh/id_rsa.pub. The key fingerprint is: a9:49:2e:2a:5e:33:3e:a9:de:4e:77:11:58:b6:90:26 username@hostname The key's randomart image is: +--[ RSA 2048]----+ | ..o | | E o= . | | o. o | | .. | | ..S | | o o. | | =o.+. | |. =++.. | |o=++. | +-----------------+
2. Viešas raktas bus id_rsa.pub
cat ~/.ssh/id_rsa.pub
3. Šį raktą patalpiname į kitą serverį į kurį jungsimės:
~/.ssh/authorized_keys
Galime pasinaudoti ssh-copy-id komanda:
ssh-copy-id username@remote_host
arba galime nukopijuoti per ssh:
cat ~/.ssh/id_rsa.pub | ssh username@remote_host "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"
arba paprastu būdu, prisijungiame prie serverio:
mkdir -p ~/.ssh echo public_key_string >> ~/.ssh/authorized_keys
p.s. public_key_string yra 2 žingsnyje cat komandos pavaizduotas stringas, t.y. jūsų viešas raktas.
4. Išjungiame mažiau saugų prisijungimą slaptažodžiu:
nano /etc/ssh/sshd_config
surandame PasswordAuthentication ir pakeičiame:
PasswordAuthentication no
Restartuojame ssh Ubuntu arba Debian operacinėje įvykdome:
service ssh restart
CentOS/Fedora operacinėje įvykdome:
service sshd restart
5. Nepamirštame saugumą:
chmod 700 ~/.ssh && chmod 600 ~/.ssh/*
Viskas!
Pastaba: Windows OS raktus galima susigeneruoti PuTTY Key Generator (puttygen):