Добавить пароль в существующий ssh ключ

ssh-keygen -p -f ~/.ssh/id_rsa

Не прошло и года, решение проблемы неработающего SSH на OpenSUSE с ESET NOD32 antivirus

sudo nano /etc/ssh/sshd_config
#UsePrivilegeSeparation sandbox
UsePrivilegeSeparation yes
sudo systemctl restart sshd.service

Спасибо тех поддержке eset за помощь. Долго думали но всё же решили.

eset vs ssh

Обнаружил интересный баг проявляющийся после установки  ESET NOD32 Антивирус для Linux Desktop. ssh сервер перестал обрабатывать подключения, клиент вываливал что соединение закрыто либо ошибку broken pipe. Дебаг вываливает вот такое: http://pastebin.com/8GLXrVM5

Техподдержка eset ответила что вопрос сложный и перевели меня на второй уровень техподдержки.. пока жду ответа и временно снёс с этой тачки антивирь..

ssh без пароля

У вас есть отдельно стоящий сервер? Ходите на него через ssh? Пароль в целях безопасности больше 10 символов? В день заходите на сервер n-ное количество раз? Реально задолбало вводить каждый раз пароль на вход? Меня тоже/
А выход как всегда прост до безобразия, потому что все уже придумано до нас.

Ключи SSH. Или метод Identity/Pubkey

При использовании метода идентификации Identity/Pubkey исключается использования статических паролей. Дабы каждый раз не набирать пароли, которые можно перехватить кейлоггером ну или просто подсмотреть, мы будем хранить на диске пару ключей, которые и будут использоваться для проверки подлинности.

Вот некоторые из положительных моментов этого типа аутентификации:

  • Никто не сможет войти на сервер с Вашей учетной записью, так как им необходимо обладать приватным ключом и кодовой фразой.
  • Администратор сервера может вообще убрать пароль учетной записи, дабы исключить его дискредитацию.
  • Вы можете использовать утилиту ssh-agent и он будет предоставлять аутентификационные данные за Вас.
  • Вы можете устанавливать определенные ограничения, например запрещая перенаправление портов, выполнение определенных программ и т.д.

(далее…)

Авторизация ssh без пароля

У учёток должно быть одно имя (ВАЖНО!)

на клиенте:

ssh-keygen -t rsa

копипастим на сервак:

ssh-copy-id -i ~/.ssh/id_rsa.pub username@remote_host

и на сервере выполняем:

chmod 600 ~/.ssh/authorized_keys

profit