- ИТ База знаний
- Полезно
- Навигация
- Серверные решения
- Телефония
- Корпоративные сети
- Курс по сетям
- Пошаговый ввод в домен Windows 10
- Основные команды cmd в Windows
- Поднимаем контроллер домена на Windows 2008 R2
- Как освободить место на компьютере Windows 10: 8 советов
- Вывод Windows 10 из домена
- Создание загрузочного USB накопителя для установки Windows Server 2019
- Как использовать анализатор пакетов PktMon в Windows 10
- Как сгенерировать ключ SSH в Windows
- Генерация ключа SSH в Windows 10 с помощью OpenSSH Client
- Шаг 1. Проверьте, установлен ли клиент OpenSSH
- Шаг 2. Откройте командную строку
- Шаг 3. Использование OpenSSH для генерации пары ключей SSH
- Генерация ключей SSH с помощью PuTTY
- Шаг 1: Установите PuTTY
- Шаг 2: Запустите генератор ключей PuTTY SSH
- Шаг 3: Используйте PuTTY для создания пары ключей SSH
- Использование ваших ключей SSH
- SSH авторизация по ключу через PuTTY
- Генерация ключа
- Установка публичного ключа на сервере
- Настройка и подключения PuTTY
- Подключение PuTTy по SSH-ключу в один клик
- Введение
- Гугл в помощь
- Заключение
- Создание ключей SSH в Windows с помощью PuTTYgen
- Скачивание PuTTYgen
- Создание ключей SSH с помощью PuTTYgen
- Копирование открытого ключа на сервер
- Войдите на сервер с помощью ключей SSH
- Отключение аутентификации по паролю SSH
- Выводы
ИТ База знаний
Курс по Asterisk
Полезно
— Узнать IP — адрес компьютера в интернете
— Онлайн генератор устойчивых паролей
— Онлайн калькулятор подсетей
— Калькулятор инсталляции IP — АТС Asterisk
— Руководство администратора FreePBX на русском языке
— Руководство администратора Cisco UCM/CME на русском языке
— Руководство администратора по Linux/Unix
Навигация
Серверные решения
Телефония
FreePBX и Asterisk
Настройка программных телефонов
Корпоративные сети
Протоколы и стандарты
Популярное и похожее
Курс по сетям
Пошаговый ввод в домен Windows 10
Основные команды cmd в Windows
Поднимаем контроллер домена на Windows 2008 R2
Как освободить место на компьютере Windows 10: 8 советов
Вывод Windows 10 из домена
Создание загрузочного USB накопителя для установки Windows Server 2019
Как использовать анализатор пакетов PktMon в Windows 10
Еженедельный дайджест
Как сгенерировать ключ SSH в Windows
OpenSSH и PuTTY
4 минуты чтения
SSH расшифровывается как Secure Shell и представляет собой метод, используемый для установления безопасного соединения между двумя компьютерами.
Обучайся в Merion Academy
Пройди курс по сетевым технологиям
Начать
SSH работает путем аутентификации на основе пары ключей, причем закрытый ключ находится на удаленном сервере, а соответствующий открытый ключ — на локальной машине. Когда ключи совпадают, доступ предоставляется удаленному пользователю.
Это руководство покажет вам, как сгенерировать пару ключей SSH в Windows 10, используя OpenSSH или PuTTY.
Генерация ключа SSH в Windows 10 с помощью OpenSSH Client
Шаг 1. Проверьте, установлен ли клиент OpenSSH
Во-первых, проверьте, установлен ли у вас клиент OpenSSH:
1. Войдите в меню Параметры, и затем нажмите Приложения.
2. Во вкладке Приложения и возможности выберите Дополнительные компоненты.
3. Прокрутите список вниз, чтобы увидеть, есть ли в списке клиент OpenSSH.
- Если клиента нет, нажмите знак плюс рядом с Добавить компонент
- Прокрутите список, чтобы найти и выбрать OpenSSH Client.
- Нажмите Установить.
Шаг 2. Откройте командную строку
Нажмите клавишу Windows, в строке поиска введите cmd , в результатах нажните правой кнопкой на значок командной строки и выберите Запуск от имени администратора.
Шаг 3. Использование OpenSSH для генерации пары ключей SSH
1. В командной строке введите следующее:
2. По умолчанию система сохранит ключи в C:\Users\your_username\.ssh\id_rsa . Вы можете использовать имя по умолчанию, или вы можете выбрать более осмысленные имена. Это может помочь различать ключи, если вы используете несколько пар ключей. Чтобы придерживаться опции по умолчанию, нажмите Enter. Если файл с таким именем уже существует, вам будет предложено перезаписать файл.
3. Вас попросят ввести кодовую фразу. Нажмите Enter, чтобы пропустить этот шаг.
4. Система сгенерирует пару ключей и отобразит отпечаток ключа и изображение randomart.
5. Откройте проводник
6. Перейдите к C:\Users\your_username\.ssh .
7. Вы должны увидеть два файла. Идентификация сохраняется в файле id_rsa , а открытый ключ помечается как id_rsa.pub . Это ваша пара ключей SSH.
Обычно открытый ключ идентифицируется расширением .pub . Вы можете использовать Блокнот, чтобы просмотреть содержимое как закрытого, так и открытого ключа.
Генерация ключей SSH с помощью PuTTY
До того, как OpenSSH был включен в Windows, инструмент PuTTY был золотым стандартом для генерации ключей SSH.
Шаг 1: Установите PuTTY
Скачайте PuTTY с оффициального сайта, затем дважды щелкните загруженный файл и следуйте указаниям мастера установки, чтобы завершить установку. Тут все просто, но если что, у нас есть подробное описание как скачать и установить PuTTY
Шаг 2: Запустите генератор ключей PuTTY SSH
1. Откройте меню Пуск
2. Введите puttygen .
3. В результатах щелкните правой кнопкой мыши на PuTTYgen и нажмите Запуск от имени администратора.
Шаг 3: Используйте PuTTY для создания пары ключей SSH
Процесс, описанный ниже, сгенерирует ключи RSA, классический и широко используемый тип алгоритма шифрования. Инструмент PuTTY keygen предлагает несколько других алгоритмов — DSA, ECDSA, Ed25519 и SSH-1 (RSA).
Если вам требуется другой алгоритм шифрования, выберите нужную опцию в разделе Parameters перед созданием пары ключей.
1. В окне PuTTY Key Generator нажмите Generate.
2. Переместите курсор в серое поле, чтобы заполнить зеленую полосу.
3. Сохраните открытый ключ:
- Нажмите кнопку Save public key.
- Выберите место для сохранения ключа.
- Дайте ключу имя (например, putty_key.pub )
4. Сохраните закрытый ключ:
- Откройте меню Conversions наверху.
- Нажмите Export OpenSSH key.
- Вас спросят, хотите ли вы сохранить ключ без ключевой фразы. Нажмите Да.
- Выберите место для сохранения ключа (обычно это та же папка, что и открытый ключ).
- Дайте ключу имя (например, putty_key ).
Использование ваших ключей SSH
Чтобы использовать ваши ключи SSH, скопируйте ваш открытый ключ SSH в систему, к которой вы хотите подключиться. Используйте свой личный ключ SSH в своей системе. Ваш закрытый ключ будет соответствовать открытому ключу и предоставит доступ.
SSH авторизация по ключу через PuTTY
На сегодняшний день набирает обороты практика аутентификации к SSH-серверу по ключу, в этом есть несколько преимуществ:
- Удобство в использовании. У вас может быть несколько серверов и один ключ, не нужно всякий раз вводить пароль от нужного сервера, что сэкономит время.
- Это безопасно. Вы сможете отключить аутентификацию по паролю и ssh будет защищён от брутфорса.
В это статье мы настроим SSH авторизации на сервере CentOS 7 по ключу, и настроем подключение через ключ утилиту PuTTY.
Генерация ключа
Для генерации ключа будем использовать утилиту PuTTYgen. После запуска выбираем тип ключа для генерации — SSH-2 RSA, и длину ключа — 2048 бит. После чего нажимаем Generate и крутим мышкой по окну пока не закончится генерация ключа.
- Key comment — комментарий к ключу.
- Key passphrase — парольная фраза к приватному ключу. (Не обязательно к заполнению)
- Confirm passphrase — подтверждение парольной фразы.
Если вы хотите обезопасить себя по максимальному вы можете задать пароль для защиты приватного ключа в полях Key Passphrase и Confirm Passphrase. Но при каждом входе у вас будет запрашивать пароль который вы ввели. Это обезопасит вас если ваш приватный ключ будет похищен.
Далее сохраняем public key и private key. Приватный ключ мы будем использовать для подключения к серверу, а вот публичный ключ надо будет передать на удаленный сервер которому мы будем подключаться.
Обратите внимания на то как был сгенерирован ваш публичный ключ.
Лично у меня он был сгенерирован не совсем верно, вот пример public_key в дальнейшем при подключении через PuTTY с таким ключом могут возникнуть ошибка Server refused our key.
Для того чтобы избежать подобной ошибки правим файл с публичным ключом, пример правильного ключа.
Установка публичного ключа на сервере
Далее необходимо скопировать наш публичный ключ на сервер. Мы воспользуемся для передачи на сервер ключа утилитой PSFTP, но вам ничего не мешает его передать через любой FTP клиент.
Ключ с копировался, теперь нужно добавить его в
/.ssh/authorized_keys. Далее логинемся еще раз по паролю, через PuTTY и выполняем:
Далее нужно проверить настройки нашего SSH сервера, сами настройки лежат в файле /etc/ssh/sshd_config:
Теперь нам надо будет перезапустить SSH сервер:
Теперь мы можем подключиться к серверу по ключу или паролю.
Но мы можем вообще запретить подключатся к SSH серверу по паролю указав в файле /etc/ssh/sshd_config.
После чего не забываем заново перезапустить SSH сервер.
Настройка и подключения PuTTY
Теперь все что нам осталась это создать новый сеанс и настроить его подключения к SSH серверу по ключу.
Создаем новый сеанс пиши на IP Адрес к серверу.
Далее, мы выбираем меню категорию SSH и там выберем под категорию Auth
В поле Private key file for authentication загружаем наш приватный ключ.
Далее переходим обратно в раздел Session и сохраняем нашу сессию для того чтобы следующий раз не заполнять все эти поля.
Остаётся только проверить правильность аутентификации к SSH серверу по ключу. Запустите PuTTY и подключитесь к своему серверу. Если вы при создании, ключа заполнили поле Key Passphrase и Confirm Passphrase то вас запросит вести этот пароль. Если же всё настроено неправильно, то будет выдано сообщение об ошибке и предложено ввести пароль.
Подключение PuTTy по SSH-ключу в один клик
Введение
Недавно я арендовал небольшой сервер под Ubuntu для того, чтобы потренироваться разворачивать на нем свои поделки на Java (небольшие веб-приложения). Я специально не стал пользоваться готовыми решениями, а решил научиться самостоятельно настраивать окружение на удаленном linux сервере.
Для подключения к серверу я использовал многим известную программу PuTTy. И мне было жутко неудобно запускать её и загружать сохраненную настройку. Я задался вопросом запуска в один клик. Скажу сразу, я не сильно искушенный человек в такого рода вопросах и большую часть жизни необходимости использования данного инструмента не было. В связи с чем, возможно, я не начал поиск там, где надо, и в итоге не нашел готового решения и изобрел велосипед. Надеюсь, другим людям с подобным вопросом поможет этот пост.
Гугл в помощь
Поспрашивав у коллег на работе, никто мне не смог ничего дельного подсказать, кроме «гугл в помощь». Но, видимо, гуглил я как-то не так и всё, что я находил — это решения типа:
Но нигде не было описано как подключиться к серверу по ssh ключу и сразу залогиниться в систему. Были примеры использования plink, но это не то, что я искал. В процессе моих исследований, я выяснил что в арсенале PuTTy есть еще один инструмент, с помощью которого можно запустить подключение. И называется он pageant. Немного разобравшись в способах его использования я сваял себе простой батничек. Можно обойтись одной строкой, но для наглядности я написал файл с переменными и комментариями.
В результате выполнения этого скрипта запустится pageant и запросит у Вас фразу для расшифровки приватного ключа. После чего он запустит PuTTy и начнет подключнение к серверу, а также запомнит ввод парольной фразы. Пока pageant будет запущен, Вы сможете подключаться без повторного ввода парольной фразы. При подключении, в окне консоли PuTTy вы увидите что-то вроде примера с картинки.
Автоматический вход под заданным пользователем
Т.к. я использовал не портативную PuTTy, а установочный дистрибутив, то у меня вместо пути к PuTTy можно использовать обычный консольный вызов putty:
pageant «%keypath%%keyname%» -c putty -ssh %usrname%@%host%
Заключение
Надеюсь, кому-то этот пост поможет быстрее найти решение и не тратить время на изучение командного интерфейса PuTTy. Не стал прикладывать описание процедуры генерации SSH ключа и настройки сервера, т.к. скорее всего, вы все это уже нагуглили и настроили. Ключ я генерировал с помощью генератора в составе PuTTy.
Данная статья не подлежит комментированию, поскольку её автор ещё не является полноправным участником сообщества. Вы сможете связаться с автором только после того, как он получит приглашение от кого-либо из участников сообщества. До этого момента его username будет скрыт псевдонимом.
Создание ключей SSH в Windows с помощью PuTTYgen
Secure Shell (SSH) — это криптографический сетевой протокол, используемый для безопасного соединения между клиентом и сервером и поддерживающий различные механизмы аутентификации.
Двумя наиболее популярными механизмами являются аутентификация на основе паролей и аутентификация на основе открытого ключа. Использование ключей SSH более безопасно и удобно, чем традиционная аутентификация по паролю.
В этом руководстве объясняется, как сгенерировать ключи SSH в Windows с помощью PuTTYgen. Мы также покажем вам, как настроить аутентификацию на основе ключа SSH и подключиться к удаленным серверам Linux без ввода пароля.
Скачивание PuTTYgen
PuTTYgen — это утилита с открытым исходным кодом, которая позволяет генерировать ключи SSH для самого популярного клиента Windows SSH PuTTY .
PuTTYgen доступен как отдельный исполняемый файл, а также является частью установочного пакета PuTTY .msi. Если у вас не установлен PuTTYgen, перейдите на страницу загрузки PuTTY и загрузите установочный пакет PuTTY. Установка проста, дважды щелкните установочный пакет и следуйте инструкциям.
Создание ключей SSH с помощью PuTTYgen
Чтобы сгенерировать пару ключей SSH в Windows с помощью PuTTYgen, выполните следующие действия:
Запустите PuTTYgen, дважды щелкнув его файл «.exe» или выбрав в Windows меню «Пуск» → PuTTY (64-разрядная версия) → PuTTYgen.
В блоке «Тип ключа для генерации» оставьте RSA по умолчанию. В поле «Число бит в сгенерированном ключе» оставьте значение по умолчанию 2048, которого достаточно для большинства случаев использования. При желании вы можете изменить его на 4096.
Нажмите кнопку «Создать», чтобы начать процесс создания новой пары ключей.
Вам будет предложено навести указатель мыши на пустую область в разделе «Ключ», чтобы создать некоторую случайность. Когда вы перемещаете указатель, зеленый индикатор выполнения будет двигаться вперед. Процесс должен занять несколько секунд.
После генерации открытого ключа он будет отображаться в блоке «Ключ».
Если вы хотите установить парольную фразу, введите ее в поле «Ключевая фраза-пароль» и подтвердите ту же парольную фразу в поле «Подтвердить парольную фразу». Если вы не хотите использовать кодовую фразу, оставьте поля пустыми.
Если файлы закрытого ключа предназначены для интерактивного использования, рекомендуется использовать кодовую фразу. В противном случае при генерации ключа для автоматизации он может быть установлен без ключевой фразы.
Парольная фраза добавляет дополнительный уровень безопасности, защищая закрытый ключ от несанкционированного использования.
Если установлена кодовая фраза, ее необходимо вводить каждый раз, когда используется закрытый ключ.
Сохраните закрытый ключ, нажав кнопку «Сохранить закрытый ключ». Вы можете сохранить файл в любом каталоге как файл «.ppk» (закрытый ключ PuTTY), но желательно сохранить его в месте, где вы можете легко его найти. Обычно для файла закрытого ключа используется описательное имя.
При желании вы также можете сохранить открытый ключ, хотя его можно восстановить позже, загрузив закрытый ключ.
Щелкните правой кнопкой мыши текстовое поле с надписью «Открытый ключ для вставки в файл авторизованных_ ключей OpenSSH» и выберите все символы, нажав «Выбрать все». Откройте текстовый редактор, вставьте символы и сохраните. Убедитесь, что вы вставляете весь ключ. Рекомендуется сохранить файл в том же каталоге, в котором вы сохранили закрытый ключ, используя то же имя закрытого ключа и «.txt» или «.pub» в качестве расширения файла.
Это ключ, который вы должны добавить на свой удаленный сервер Linux.
Копирование открытого ключа на сервер
Теперь, когда пара ключей SSH создана, следующим шагом будет копирование открытого ключа на сервер, которым вы хотите управлять.
Запустите программу PuTTY и войдите на удаленный сервер Linux.
Если ваш пользовательский каталог SSH не существует, создайте его с помощью команды mkdir и установите правильные разрешения:
Откройте текстовый редактор и вставьте открытый ключ, который вы скопировали на шаге 4 при генерации пары ключей, в файл
Весь текст открытого ключа должен быть в одной строке.
Выполните следующую команду chmod чтобы только ваш пользователь мог читать и записывать файл
Войдите на сервер с помощью ключей SSH
Pageant — это агент аутентификации PuTTY SSH, который хранит закрытые ключи в памяти. Бинарный файл Pageant является частью установочного пакета PuTTY .msi и может быть запущен, выбрав в Windows меню Пуск → PuTTY (64-разрядная версия) → Pageant.
Когда вы запускаете Pageant, он помещает значок в системный трей. Дважды щелкните значок, и откроется окно Pageant.
Чтобы загрузить ключ, нажмите кнопку «Добавить ключ», при этом откроется диалоговое окно нового файла. Найдите файл закрытого ключа и нажмите «Открыть». Если вы не установили кодовую фразу, ключ будет загружен немедленно. В противном случае вам будет предложено ввести кодовую фразу.
Введите пароль, и Pageant загрузит закрытый ключ.
После выполнения описанных выше действий вы сможете войти на удаленный сервер без запроса пароля.
Чтобы проверить это, откройте новый сеанс PuTTY SSH и попробуйте войти на удаленный сервер. PuTTY будет использовать загруженный ключ, и вы войдете на сервер без ввода пароля.
Отключение аутентификации по паролю SSH
Чтобы добавить дополнительный уровень безопасности к вашему серверу, вы можете отключить аутентификацию по паролю для SSH.
Перед отключением парольной аутентификации SSH убедитесь, что вы можете войти на свой сервер без пароля, а пользователь, с которым вы входите, имеет привилегии sudo .
Войдите на удаленный сервер и откройте файл конфигурации SSH:
Найдите следующие директивы и измените их следующим образом:
Когда вы закончите, сохраните файл и перезапустите службу SSH, набрав:
На этом этапе аутентификация на основе пароля отключена.
Выводы
В этом руководстве вы узнали, как сгенерировать новую пару ключей SSH и настроить аутентификацию на основе ключей SSH. Вы можете добавить один и тот же ключ на несколько удаленных серверов. Мы также показали вам, как отключить аутентификацию по паролю SSH и добавить дополнительный уровень безопасности на ваш сервер.
По умолчанию SSH прослушивает порт 22. Изменение порта SSH по умолчанию снизит риск автоматических атак.
Если у вас есть какие-либо вопросы или отзывы, не стесняйтесь оставлять комментарии.