Авторизация на сервере FreeBSD по SSH ключам

Дек 6, 2009 FreeBSD

Исходные данные: имеется сервер на базе FreeBSD, имеются клиентские машины с которых надо периодически заходить на этот сервер. В качестве SSH-клиента используется PuTTY.
Задача: избавить себя от постоянного ввода паролей вручную и проходить авторизацию с помощью специальных ключей.

Для подключения клиента требуется сгенерировать два ключа — закрытй и публичный. В клиенте PuTTY это делается утилитой puttygen.exe. В открывшемся окне меняем значение Number of bits in a generated key с 1024 на более сложное, например 2343. Нажимаем кнопку Generate и водим мышкой чтобы создать случайный код.

По завершении генерации станут активными две кнопки — Save public key и Save private key. Нажимаем на первую кнопку и сохраняем публичный ключ с названием, к примеру, rsa-pub. Второй ключ сохраним как rsa-private. При этом программа напомнит, что нужно ввести еще секретную фразу т.к. это увеличит безопасность, но мы откажемся т.к. задача соединяться не вводя пароли.

Теперь соединяемся с нашим сервером и заходим в домашнюю папку того пользователя под которым будем соединяться с сервером. Создаем там директорию .ssh

$ mkdir .ssh

Ставим на папку права 700

Копируем туда наш публичный ключ. И в этой же директории выполняем следующую команду:

# ssh-keygen -i -f rsa-pub > authorized_keys

Открываем PuTTY выбираем нашу запись для соединения с сервером, и добавляем в раздел Connection — SSH — Auth путь к нашему приватному ключу. Всё, теперь можно коннектиться. Если всё сделано правильно то мы попадем в директорию пользователя без запроса пароля.

Есть другой вариант переноса публичного ключа на сервер. Необходимо создать в директории .ssh файл authorized_keys

$ touch authorized_keys

Открыть для редактирования этот файл и скопировать туда наш публичный ключ. Ключ должен идти в одну строчку. Перед ключом должно быть написано ssh-rsa и поставлен пробел.

Пример:
ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAZYQ69twq6e39+S6LxO62E37wtlGvVknomrTSdGD/QRTiNKwCI0WzFmOjvshFbzi+ARYRUcIQpxjO1nVfcO+RfJHCjX3vjgEeq1vxhag0PQs8mJLaddeCISpW37zpxYczDPTwEC7vVnzW9H1YcB1x42V9dL4JJzhbRUmHWEuNw1h+MM0eOnJLcUHZuHmxiP6M8y41UPenuVnAt2FaNWzxxMUjSKg6zCj3q07Td/ilrCvARs7/hFERG7pn6QN9At/EpTQvyn/aYDByPc4xUkeGTapzaMBYSrRIVpyYvDjJza3TAgIYejwLgV+gwlXMYKkvErsdm1hh+K4Ioe0zkbGzkaYUA+a7q3tzjY5taCDp/9LFjwhuMVcswnNAjLX+ct+sSIvZn/KnZjafcywjdmZc1Nhrl6b9AxnJ+h9PJ2BC73h90ZWvr5EASiXSgyI8A2y1ObVpLvoNIJu0DeKnIZnKarTbhXvQFAAeOzsxkTzb95ceX+llRUHqyOBpnB7D2DR8Im1tdVaQy9v9dZ329+Ogjg2BXKfL5Oh

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

2 комментарий к «Авторизация на сервере FreeBSD по SSH ключам»
  1. Благодарю за статью. Все сделал как вы описали — все работает. Очень удобно.

Добавить комментарий для nik Отменить ответ

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: