Puttygen ssh key linux

Как сгенерировать свой SSH-ключ на Linux/MacOS/Windows

Как сгенерировать свой SSH-ключ на Linux/MacOS/Windows

В этой статье я показал, как сгенерировать валидный ssh-ключ для любой ОС. Так же, кратко объяснил, как работать с этим ключом, какой ключ добавлять на сервер, и рассказал о некоторых нюансах генерации ключей, которые могут возникать у пользователей Windows.

Генерация SSH-ключа на Linux/MacOS

В системах Linux/MacOS уже встроена утилита ssh-keygen , которая позволяет из коробки сгенерировать пары SSH-ключей. Выполнив команду ssh-keygen из консоли компьютера, будет создан 2048-битный RSA-пара ключей, которую вы можете использовать для своих задач.

При вызове, эта утилита попросит вас указать путь, по которому эти ключи будут храниться. По умолчанию ключи сохраняются по пути ~/.ssh . При генерации ключей, создаётся 2 файла id_rsa (приватный ключ), и id_rsa.pub (публичный ключ). Если вы будете использовать путь по умолчанию, как предлагает ssh-keygen, то это позволит автоматически находить ваши SSH-ключи при аутентификации. Потому, я рекомендую принять все предложения, просто нажав ENTER .

Если в этой папке уже находятся ранее сгенерированные ключи, то вы получите сообщение с вопросом: перезаписать ли старые ключи новыми

/home/username/.ssh/id_rsa already exists. Overwrite (y/n)?

Если вы перезапишете ключ на новый, то старый больше не будет работать. Выбор опции y это необратимое удаление старого ключа, и перезапись его на новый.

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

Если вы зададите эту фразу, то вам придётся каждый раз, при использовании этого ключа вводить её (если вы не используете ПО агента SSH, которое хранит расшифрованный ключ). Я, обычно, оставляю эту фразу пустой, и просто нажимаю Enter , а так же, ниже, ещё раз подтверждаем ввод фразы, нажимая Enter .

keygenerated

После чего, пара ключей будет сгенерирована. И в указанной папке появится 2 фала (приватный и публичный ключи), которые вы теперь можете использовать для аутентификации.

Если вы не очень часто пользуетесь SSH, вы наверное путаетесь в том, что такое публичный ключ, и приватный ключ, и какой из них нужно добавлять на сервер (к примеру в DigitalOcean, GitHub), чтобы работала аутентификация. Так вот, вы делитесь с другими серверами только публичным ключом. Приватный ключ всегда хранится только на вашем локальном компьютере, и вы не должны делиться с ним ни с кем.

Генерация SSH-ключа на Windows

К сожалению, windows не может похвастаться встроенными инструментами генерации SSH-ключей. Потому, для того, чтобы создать пару SSH-ключей на windows, нужно установить утилиту PuTTY. Эта утилита позволяет подключаться к удалённым серверам через SSH, а их дополнительная утилита PuTTYgen используется для генерации SSH-ключей на windows.

Читайте также:  Шифрование домашней папки linux mint

На сайте вам необходимо скачать .msi версию (в секции Package files ), после чего запустить установку, следуя всем шагам установщика.

search

После того, как программа будет установлена, на вашем компьютере появится утилита PuTTYgen , найти которую вы можете либо в меню «пуск», либо нажав кнопку Windows и начать вводить её название:

interface

А чтобы сгенерировать ssh-ключ через putty, вам нужно запустите эту утилиту. Её интерфейс созданию ключа будет выглядеть подобным образом:

--------

Вы можете кастомизировать настройки создания ключей (во вкладке Parameters ), если хотите, но значения по умолчанию подходят для большинства всех случаев. Всё, что вам осталось — нажать на кнопку Generate , и рандомно подвигать мышкой ^^.

Когда ключ будет сгенерирован, то вы увидите публичный ключ, отображаемый в текстовом поле. Скопируйте его в буфер обмена, и его можете добавить на любой сервер для аутентификации (DigitalOcean, GitHub, BitBucket, . ). Обязательно проскрольте всю текстовую область, чтобы скопировать ключ полностью.

ssh-generated

Затем вам будет предложено ввести ключевую фразе для этого SSH-ключа. Его заполнение повышает безопасность, так как кто-то, кто захватит доступ к этому ключу, не сможет его использовать, не зная ключевую фразу. Вы должны будете указывать эту фразу каждый раз, когда будете использовать этот ключ (если вы не используете ПО агента SSH, которое хранит расшифрованный ключ). Но, я, обычно, оставляю его пустым, для удобства , плевал я на безопасность.

Когда вы закончите настройку, нажмите на кнопку Save private key и выберите безопасное место, куда вы сохраните его. Вы можете назвать свой ключ как угодно, а расширение .ppk будет добавлено ему автоматически.

Если вы не ввели ключевую фразу, то вас попросят подтвердить, что вы действительно хотите сохранить ключ неё. Если вы согласны с этим, нажмите ENTER , чтобы продолжить.

Читайте также:  Проверить скорость сетевой карты linux

Работа с форматом публичного ключа PuTTY

Вы также можете нажать на кнопку Save public key , но учтите: формат, который использует PuTTYGen, при сохранении публичного ключа, несовместим с файлами OpenSSH authorized_keys , используемыми для аутентификации ключа SSH на серверах Linux. Потому, у вас по незнанию этого нюанса может возникать ошибка при добавлении ключа, созданного через PuTTY.

Если вам нужно увидеть открытый ключ в правильном формате после того, как закрытый ключ был сохранен:

  • Откройте PuTTYgen.
  • Загрузите свой приватный ключ в утилиту, нажав на кнопку Load , и выбрав нужный файл ключа. load_key
  • Скопируйте публичный ключ из ранее известного поля. public_key

Генерация SSH-ключа на Windows с помощью Git Bash

Очень вероятно, что вы уже используете Git в своей системе. Потому, вам может даже не понадобиться установка PuTTY в свою систему. Ввиду того, что git bash является очень приближенной системой эмулирования Unix-подобных систем, там доступно большинство линуксовских команд. Потому, в этом случае, вы можете сгенерировать SSH ключ через GIT.

windows_git_bash

Потому, чтобы сгенерировать ключ в Windows, достаточно выполнить команду ssh-keygen , работа с которой была описана выше.

Резюме

В этой статье я показал, как сгенерировать ssh ключ на разный операционных системах: Windows, Linux, MacOS. Прочитав эту статью вы со стопроцентной уверенностью будете знать, как создать свой SSH ключ на любое ОС, с котороми будете работать. В этой статье показан подход, при котором генерируется общий ключ, который подойдёт под большинство случаев: ssh ключ для GitLab, GitHub, DigitalOcean.

Последнее, что вам останется — скопировать публичный ключ, и добавить его на сервер, с котором будете работать.

В серці. Назавжди.

В серці. Назавжди.

Вчора у мене помер однокласник. А сьогодні бабуся. І хто б міг уявити, що цей рік принесе війну, смерть товариша, та смерть члена сім’ї? Це боляче. Проте це добре нагадування про те, як швидко тече час. І як його ціна збільшується кожної марно витраченої секунди. І я не скажу щось

Ось такий він, руський мир

Ось такий він, руський мир

«Руський мир» — звучить дуже сильно та виправдовуюче. Гарна обгортка виправдання слабкості, аморальності та нікчемності своїх дійсних намірів. Руський мир, який дуже солодко звучить для всіх, хто хоче закрити очі на факт повномасштабної війни. Дуже добре виправдання вбивства для купки звірів. Втім, це ж росія, в якій все виглядає логічно

Читайте также:  Tar no such file or directory linux

Перехват запросов и ответов JavaScript Fetch API

Перехват запросов и ответов JavaScript Fetch API

Перехватчики — это блоки кода, которые вы можете использовать для предварительной или последующей обработки HTTP-вызовов, помогая в обработке глобальных ошибок, аутентификации, логирования, изменения тела запроса и многом другом. В этой статье вы узнаете, как перехватывать вызовы JavaScript Fetch API. Есть два типа событий, для которых вы можете захотеть перехватить HTTP-вызовы:

Источник

How To Configure SSH Keys Authentication With PuTTY And Linux Server

This tutorial explains how you can replace password-based SSH authentication with key-based authentication which is more secure because only the people that own the key can log in. In this example, we’re using PuTTY as our SSH client on a Windows system.

Generate a private and public key pair

Open PuTTYgen.exe, press Generate button, move mouse. Once the keys are generated, type your key passphrase (choose a «hard to guess» one). Save Public key. Save Private key.

PuTTY Key Generator

Configure your Linux server (create user, save public key)

For this guide let’s assume you regular login name is us3r (replace it with one that you use regularly).

As root, on the shell, type:

adduser us3r --disabled-password

You will be asked to fill in some details such as the user’s real name (empty string is fine).

su us3r cd /home/us3r mkdir .ssh chmod 700 .ssh cd .ssh

Then in that folder, create and edit a file called authorized_keys2 .

In there, cut/paste your public ssh key, on ONE LINE (That is very important. )

  • Do not add the email@example.com at the end of the line.
  • Do not add the BEGIN PUBLIC KEY or END PUBLIC KEY.
  • Do not add the rsa-key-20090211 at the end.
  • Make sure, there is ssh-rsa at the beginning.

It should be something like:

ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAIBf3inevLchN36/bjLulNKDOnWTd/12I2QkM+o3uxg4C…
chmod 600 authorized_keys2

Add Private key to PuTTY SSH authentication agent

Start the PuTTY SSH authentication agent PAGEANT.EXE. When started, right-click its systray icon and select «add key». Select your private key file, and type in your passphrase when you add the key. The Pageant works as a passphrase keeper.

Use PuTTY to connect to your server

Open PuTTY and connect as us3r@putty.org.ru :

PuTTY - connect to a server

See that you log in without a password …

Источник

Оцените статью
Adblock
detector