Это старая версия документа!
Для шифрования, в основном, используется алгоритм RSA.
Две версии, openssh-client и openssh-server.
Для организации беспарольного доступа нужно сгенерировать открытый и закрытый ключи, с помощью утилиты ssh-keygen, генерируются на клиентской машине (что бы закрытый ключ не передавать).
При генерации нужно указать название ключевой пары, можно добавить парольную фразу (нужно будет вводить ее при каждом подключении).
После генерации все находится в ~/.ssh/, файл с названием ключевой пары и расширением .pub и есть открытый ключ, его нужно скопировать на сервер, в файл /home/учетка_для_входа/.ssh/authorized_keys.
Есть несколько алгоритмов, «rsa» популярный но устаревающий, в данном примере «ecdsa» с длинной ключа 521
# ssh-keygen -t ecdsa -b 521 [либо можно -t rsa -b 4096]
Если имеется несколько ключей для разных подключений, нужно указывать полный путь к файлу ключа, после аргумента -i.
# ssh -i .ssh/mykey
Передать файл по ssh можно либо перенаправив вывод:
# cat .ssh/name.pub ssh user@host "cat >> .ssh/authorized_keys"
Копирование с удаленной машины, команда scp (порядок файлов мб наоборот)
# scp [-P 22] user@host:source_file desc_file
Копирование на удаленную машину, команда scp
# scp [-P 22] source_file user@host:desc_file
Для копирования открытого ключа есть специальная утилита ssh-copy-id, она сама скопирует нужный файл в нужное место
# ssh-copu-id user@host