Secure Shell (SSH) — это криптографический сетевой протокол, используемый для безопасного соединения между клиентом и сервером, и поддерживает различные механизмы аутентификации.
Двумя наиболее популярными механизмами являются аутентификация на основе паролей и аутентификация на основе открытого ключа. Использование ключей SSH более безопасно и удобно, чем традиционная аутентификация по паролю.
В этой статье объясняется, как генерировать ключи SSH в Windows с помощью PuTTYgen. Мы также покажем вам, как настроить аутентификацию на основе ключей SSH и подключаться к удаленным серверам Linux без ввода пароля.
PuTTYgen — это утилита с открытым исходным кодом, которая позволяет генерировать ключи SSH для самого популярного Windows-клиента PuTTY.
PuTTYgen доступен в виде отдельного исполняемого файла и также является частью установочного пакета PuTTY.msi. Если у вас не установлен PuTTYgen, перейдите на страницу загрузки PuTTY и загрузите установочный пакет PuTTY. Установка проста, дважды щелкните по установочному пакету и следуйте инструкциям.
Чтобы сгенерировать пару ключей SSH в Windows с помощью PuTTYgen, выполните следующие действия:
Если вы зададите фразу-пароль, вам нужно будет вводить фразу-пароль каждый раз, когда используется закрытый ключ.
Теперь, когда вы сгенерировали пару ключей SSH, следующий шаг — скопировать открытый ключ на сервер, которым вы хотите управлять.
Запустите программу PuTTY и войдите на удаленный сервер Linux.
Если ваш пользовательский каталог SSH не существует, создайте его с помощью команды mkdir и установите правильные разрешения:
mkdir -p ~/.ssh chmod 0700 ~/.ssh
Откройте текстовый редактор и вставьте открытый ключ, который вы скопировали на шаге 4 при создании пары ключей, в файл ~/.ssh/authorized_keys:
nano ~/.ssh/authorized_keys
Весь текст открытого ключа должен быть в одной строке с.
Запустите следующую команду chown, чтобы убедиться, что только ваш пользователь может читать и записывать ~/.ssh/authorized_keysфайл:
chmod 0600 ~/.ssh/authorized_keys
Pageant — это аутентификационный агент PuTTY SSH, который хранит закрытые ключи в памяти. Двоичный файл Pageant является частью установочного пакета PuTTY .msi и может быть запущен с помощью меню «Пуск» Windows → PuTTY (64-разрядная версия) → Pageant.
Когда вы запускаете Pageant, он помещает значок в системный трей. Дважды щелкните значок, и откроется окно Pageant.
Чтобы загрузить ключ, нажмите кнопку «Add Key», чтобы открыть диалоговое окно нового файла. Найдите файл с закрытым ключом и нажмите «Open». Если вы не установили ключевую фразу, ключ будет загружен немедленно. В противном случае вам будет предложено ввести кодовую фразу.
Введите пароль, и Pageant загрузит закрытый ключ.
После выполнения описанных выше шагов вы сможете войти на удаленный сервер без запроса пароля.
Чтобы проверить это, откройте новый сеанс PuTTY SSH и попробуйте войти на свой сервер. PuTTY будет использовать загруженный ключ, и вы войдете на свой сервер Linux без ввода пароля.
Чтобы добавить дополнительный уровень безопасности на ваш сервер, вы можете отключить аутентификацию по паролю для SSH.
Перед отключением аутентификации по паролю SSH убедитесь, что вы можете войти на свой сервер без пароля, и у пользователя, с которым вы входите, есть привилегии sudo.
Войдите на удаленный сервер и откройте файл конфигурации SSH /etc/ssh/sshd_config в текстовом редакторе:
sudo nano /etc/ssh/sshd_config
Найдите следующие директивы и измените их следующим образом:
PasswordAuthentication no ChallengeResponseAuthentication no UsePAM no
Когда вы закончите, сохраните файл и перезапустите службу SSH, набрав:
sudo systemctl restart ssh
На этом этапе аутентификация на основе пароля отключена.
Из этой статьи вы узнали, как создать новую пару ключей SSH и настроить аутентификацию на основе ключей SSH. Вы можете добавить один и тот же ключ на несколько удаленных серверов. Мы также показали, как отключить аутентификацию по паролю SSH и добавить дополнительный уровень безопасности на ваш сервер.
По умолчанию SSH прослушивает порт 22. Изменение порта SSH по умолчанию снизит риск автоматических атак.
Если у вас есть какие-либо вопросы или отзывы, не стесняйтесь оставлять комментарии.