Как сгенерировать ssh keys для git mac os

4.3 Git на сервере — Генерация открытого SSH ключа

Генерация открытого SSH ключа

Как отмечалось ранее, многие Git-серверы используют аутентификацию по открытым SSH-ключам. Для того чтобы предоставить открытый ключ, каждый пользователь в системе должен его сгенерировать, если только этого уже не было сделано ранее. Этот процесс аналогичен во всех операционных системах. Сначала вам стоит убедиться, что у вас ещё нет ключа. По умолчанию пользовательские SSH ключи сохраняются в каталоге

/.ssh домашнем каталоге пользователя. Вы можете легко проверить наличие ключа перейдя в этот каталог и посмотрев его содержимое:

Ищите файл с именем id_dsa или id_rsa и соответствующий ему файл с расширением .pub . Файл с расширением .pub — это ваш открытый ключ, а второй файл — ваш приватный ключ. Если указанные файлы у вас отсутствуют (или даже нет каталога .ssh ), вы можете создать их используя программу ssh-keygen , которая входит в состав пакета SSH в системах Linux/Mac, а для Windows поставляется вместе с Git:

Сначала программа попросит указать расположение файла для сохранения ключа ( .ssh/id_rsa ), затем дважды ввести пароль для шифрования. Если вы не хотите вводить пароль каждый раз при использовании ключа, то можете оставить его пустым или использовать программу ssh-agent . Если вы решили использовать пароль для приватного ключа, то настоятельно рекомендуется использовать опцию -o , которая позволяет сохранить ключ в формате, более устойчивом ко взлому методом подбора, чем стандартный формат.

Теперь каждый пользователь должен отправить свой открытый ключ вам или тому, кто администрирует Git-сервер (подразумевается, что ваш SSH-сервер уже настроен на работу с открытыми ключами). Для этого достаточно скопировать содержимое файла с расширением .pub и отправить его по электронной почте. Открытый ключ выглядит примерно так:

Источник

Как сгенерировать свой 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 .

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

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

Читайте также:  Ярлык удаленного доступа windows 10

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

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

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

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

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

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

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

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

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

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

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

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

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

Читайте также:  Драйвер для геймпада xbox 360 для windows 10 не видит

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

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

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

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

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

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

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

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

Резюме

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

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

Subscribe to Блог php программиста: статьи по PHP, JavaScript, MySql

Get the latest posts delivered right to your inbox

Источник

How To Set Up GitLab SSH Key on macOS

Prerequisite

If you want to clone a repository from GitLab, there are 2 ways to do it.

The first choice is using HTTPS , but you need to insert your GitLab username and password every time you clone a repository.

The second choice is using SSH key. By using SSH key, you can clone a repository from GitLab without inserting username and password. Because, SSH key will handle the authentication.

Today, we will learn how to set GitLab SSH Key on macOS.

Generate SSH Key

  • Open your terminal, go to .ssh directory

Exit fullscreen mode

  • Create your SSH Key. We will use RSA SSH key configuration.

Exit fullscreen mode

  • You’ll see a message to insert file name for SSH key. For example, I insert: id_rsa_gitlab_key

Exit fullscreen mode

  • Next, you’ll be asked to enter passphrase. Just leave it empty

Exit fullscreen mode

  • Congratulations, you just create your own SSH Key. To check SSH key exist or not, run:

Exit fullscreen mode

Exit fullscreen mode

Register SSH Key

To make sure your mac able to authenticate automatically with GitLab, you need to register your SSH key to SSH agent in your mac.

Exit fullscreen mode

Exit fullscreen mode

Exit fullscreen mode

  • To make sure your SSH key added automatically to SSH agent after a reboot (or logout/login), we need to set config file.
Читайте также:  Run url in linux

Exit fullscreen mode

Save config file by using ctrl + x .

Check your SSH key in SSH agent.

Exit fullscreen mode

  • You will see your SSH key has been registered to SSH agent.

Insert SSH Key to GitLab Account

  • Copy your SSH Key. This key will be copied to your GitLab account.

Exit fullscreen mode

  • Go to gitlab.com, then go Profile >> SSH Keys menu ( https://gitlab.com/profile/keys ).

Paste your SSH Key to Key input, and also add the Title.

Press Add Key button.

To test whether your SSH key was added correctly, run:

Exit fullscreen mode

Exit fullscreen mode

Great, now you can clone and push a repository in GitLab, getting work done and have a time with your family 😁 .

Источник

How to Install Git on Mac and Generate SSH Keys

Amir Ghahrai

In this step-by-step Git Tutorial, we will go through how to install Git on a Mac machine, how to generate SSH keys and upload your public SSH key to your GitHub account for authorization.

How to Install Git on Mac

Open a terminal and type

This will install Git on your system. To confirm the installation, type

This will print the version of Git installed on your machine.

How to generate SSH key for GitHub authorization

  1. Open a terminal
  2. Go to your home directory by typing cd

Type the following command ssh-keygen -t rsa

  • This will prompt you to enter a filename to store the key
  • Just press enter to accept the default filename (/Users/you/.ssh/id_rsa)
  • Then it will ask you to create a passphrase. This is optional, either create a passphrase or press enter for no passphrase
  • When you press enter, two files will be created

      /.ssh/id_rsa.pub

    Your public key is stored in the file ending with .pub, i.e.

    How to access and copy public SSH key

    In order to authenticate yourself and your device with GitHub, you need to upload your public SSH key which you generated above to your GitHub account.

    Copy public SSH key

    Open a terminal and type

    This will copy the contents of the id_rsa.pub file to your clipboard.

    How to upload your public SSH key to GitHub

    1. Once you have copied your public SSH key, login to your GitHub account and go to
    2. https://github.com/settings/profile
    3. On the left-hand side menu, you will see a link “SSH and GPG keys”
    4. Click on that link which will take you to a page where you can enter your public SSH key that you copied earlier.
    5. Click the button which says ‘New SSH key’
    6. Then enter a title name — can be anything, e.g. newMac
    7. Paste the public SSH key in the key textbox
    8. Click “Add SSH key”

    Test your GitHub authorization:

    Open a terminal and type

    1. It will ask you if you want to continue to connect, type yes
    2. If you created a passphrase when you were generating the public key, then it will ask you to enter it.
    3. Enter your passphrase and press enter.
    4. It will then start to clone the project to your directory.

    You are all now set up to use Git and GitHub.

    Источник

  • Оцените статью