Bitbucket ssh keys windows

Настройка SSH ключей для Bitbucket на Windows

Во-первых, я абсолютный нуб с git, РЕПО и командной строкой. У меня есть РЕПО на Bitbucket, и я в основном хочу иметь возможность нажимать на репозиторий через gitbash, не вводя пароль каждый раз.

Что у меня есть :

  • Репозиторий на Bitbucket с уже настроенным кодом.
  • Локальный каталог, в котором клонируется репозиторий.
  • Открытый ключ и закрытый ключ, сгенерированные с помощью PuTTY.
  • Открытый ключ добавлен в Bitbucket через страницу управление ключами SSH.

Как мне теперь заставить его работать так, чтобы мне не приходилось вводить пароль каждый раз, когда я нажимаю на gitbash terminal? Я использую Windows 10.

7 ответов

Bitbucket руководство по использованию ssh предоставляет скрипт, который я добавил в bashrc, но когда он запускается, он просто автоматически говорит connected вместо запроса парольной фразы. Когда я выполняю ssh-add -l Я получаю сообщение The agent has no identities. Я нахожусь на windows, у меня.

Поэтому я использую приложение sourcetree и использую это руководство (нажмите здесь ) для получения инструкций о том, как создать открытый ключ на моей машине Windows. Когда я копирую открытый ключ из генератора ключей Putty в настройку ключей SSH Bitbucket, Bitbucket жалуется, что он слишком.

Пожалуйста, выполните следующие действия, чтобы добавить ключ ssh в учетную запись bitbucket, чтобы решить вашу проблему.

  1. Откройте git bash terminal и введите команду ssh-keygen -t rsa -C «your email address»
  2. Введите парольную фразу (Оставьте ее пустой) и введите
  3. Введите ту же фразу еще раз (оставьте ее пустой) и введите
  4. Скопируйте содержимое файла id_rsa.pub из того места, где он находится в вашей системе ( C:\Users\username\.ssh )
  5. Войдите в учетную запись bitbucket и нажмите на самый верхний правый значок пользователя ->настройки bitbucket->ключи ssh в меню Безопасность, затем вставьте в поле ключ и сохраните его. 6.Restart ваш git bash terminal и введите команду git init и добавьте ssh git местоположение репозитория git@bitbucket.org:username/repository_name.git, которое присутствует в вашем репозитории bitbucket.

1) создайте папку .ssh в вашем домашнем каталоге, например: mkdir C:\Users\USERNAME\.ssh

2) скопируйте id_rsa и id_rsa.pub в каталог с предыдущего шага

3) закрыть и открыть cmd (окно консоли)

4) Вам нужно клонировать репозиторий как SSH репозитория, например: git clone ssh://git@bitbucket.test.com:USERNAME/repository.git

Тогда это должно сработать.

Существует два способа загрузки удаленного репозитория git: с помощью SSH и с помощью HTTPS.

SSH будет использовать пару ключей и требует, чтобы открытый ключ был добавлен в ваш профиль BitBucket/GitHub.

HTTPS требует вашего имени пользователя и пароля BitBucket/GitHub. Вы будете получать повышение за свой пароль каждый раз, когда вы взаимодействуете с удаленным сервером (клонирование, извлечение, push, pull).

Если в данный момент вам предлагается ввести пароль, это означает, что удаленный URL в данный момент настроен на использование HTTPS. Вы можете определить, что это работает git remote -v . Чтобы перейти на использование SSH, необходимо обновить удаленный URL до SSH URL, запустив git remote set-url . Если у вас есть только один удаленный сервер, то будет origin . Вы можете найти SSH URL в BitBucket/GitHub под опцией клонирования репозитория.

Я пытаюсь написать сценарий конвейера YAML для развертывания файлов, которые были изменены из моего репозитория bitbucket на мой удаленный сервер, используя ключи ssh. Документ, который у меня есть на данный момент, был скопирован с самого bitbucket и содержит ошибки: pipelines: default: — step.

Это будет вопрос и ответ одновременно. Моя цель состоит в том, чтобы GitHub(через git) и BitBucket(через hg) сосуществовали на одной машине, используя ключи SSH для всех репозиториев каждого соответствующего типа. Установка: Windows 10 git-scm tortoisehg (Несмотря на использование Win 10, я буду.

Я думаю, вы упускаете из виду, что после того, как вы сгенерировали пару ключей SSH, вам нужно добавить закрытый ключ SSH в pageant, инструмент управления ключами PuTTY.

Во-первых, запустите pageant, который можно найти в каталоге, где вы установили пакет PuTTY (помните, что по умолчанию: c:\Program Files\PuTTY). Вы увидите небольшой значок в системном трее (см. скриншот справа), который указывает на то, что конкурс запущен. Нажмите на значок и в окне конкурса нажмите кнопку “Add Keys”. Добавьте закрытый ключ, который был сгенерирован puttygen на предыдущем шаге. Закрытый ключ имеет расширение .ppk, то есть это самый простой способ отличить его от открытого ключа, который вы создали.

Читайте также:  Windows 10 пропал значок сети wifi

После добавления ключа SSH, вы должны увидеть его в конкурсе.

Не используйте PuTTY для генерации ключа. Создайте новый ключ с помощью ssh-keygen in .ssh. Оставить пароль пустым. Откройте этот новый ключ в PuTTY. Скопируйте и вставьте его в поле ключа Bitbucket. Сохраните ключ с помощью PuTTY и Bitbucket. Это должно сработать.

если вам нужно обновить несколько сеансов putty на windows через powershell:

set-Itemproperty -path HKCU:\Software\SimonTatham\PuTTY\Sessions\sessionname -name PublicKeyFile -value «C:\Users\username.ssh\putty.ppk»

Для Windows 7 пользователей:

  1. Откройте Git Bash и введите ssh-keygen , а затем нажмите Enter три раза (один на месте, а две пустые фразы).
  2. Теперь a dir .ssh должен перечислить эти два файла: id_rsa id_rsa.pub
  3. Добавьте открытый ключ в настройки Bitbucket, как описано в разделе Настройка ключа SSH , Шаг 3. Вы в основном копируете и вставляете содержимое файла «id_rsa.pub» к вашему профилю в BitBucket через веб-интерфейс (никаких прав администратора , конечно, не требуется).
  4. Перезапустить Git Bash.
  5. Перейдите в каталог назначения, где вы хотите клонировать свой репозиторий и сделайте git init
  6. Получите ssh из Клона РЕПО, а затем сделайте git clone ssh://git@bitbucket.test.com:YOURUSERNAME/myrepository.git

Похожие вопросы:

У меня есть счет BitBucket . Несмотря на то, что я установил ssh key на компьютере, а затем добавил его в свою учетную запись bitbucket , мне не удалось подключиться: $ git clone.

Я настроил репозиторий Satis на одном из наших удаленных серверов, разрешив доступ к нашим частным пакетам, размещенным на Bitbucket. Я создал пару ключей SSH на этом сервере и добавил открытый ключ.

Мне очень трудно получить мои ключи SSH и запустить их после установки Windows 10. Обычный метод-создать его и бросить в учетную запись пользователя под .ssh. Эта папка, по-видимому, недоступна в.

Bitbucket руководство по использованию ssh предоставляет скрипт, который я добавил в bashrc, но когда он запускается, он просто автоматически говорит connected вместо запроса парольной фразы. Когда.

Поэтому я использую приложение sourcetree и использую это руководство (нажмите здесь ) для получения инструкций о том, как создать открытый ключ на моей машине Windows. Когда я копирую открытый ключ.

Я пытаюсь написать сценарий конвейера YAML для развертывания файлов, которые были изменены из моего репозитория bitbucket на мой удаленный сервер, используя ключи ssh. Документ, который у меня есть.

Это будет вопрос и ответ одновременно. Моя цель состоит в том, чтобы GitHub(через git) и BitBucket(через hg) сосуществовали на одной машине, используя ключи SSH для всех репозиториев каждого.

Я настраиваю SSH ключей, чтобы установить SSH соединение с частной компанией моей компании. Но я все еще не могу клонировать хранилище. Я использую Windows 10. Я генерирую ключ с помощью команды.

Я пытаюсь получить доступ к bitbucket через ssh из vscode, но всегда получаю отказ в разрешении (publickey) . Ключ(ы) SSH расположен под

\.ssh\ , открытый ключ(ы) правильно настроен в.

У меня есть 2 bitbucket счета. Один — для работы, другой-для моих домашних проектов. Я следовал документации bitbucket, как настроить несколько ssh-ключей . Учетная запись для рабочих целей имеет.

GIT. Работа с Bitbucket и Github через ssh без ввода пароля

При работе с git репозиториями Bitbucket и GitHub постоянно приходится вводить свои регистрационные данные в виде логина и пароля или просто пароля.
Для того, чтобы не вводить постоянно регистрационные данные, можно воспользоваться ssh.

Для того, чтобы начать использовать ssh с git, нужно:

    Проверить существуют ли уже ключи на вашей машине:
    Для проверки необходимо выполнить команду

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

Для создания нового ключа, необходимо выполнить команду:

В конце строки, вместо your@mail.com — необходимо указать ваш email адрес.
При выполнении данной команды вам предложат ввести ответы на 3 вопроса.
Одним из запросов будет просьба заполнить ключевую фразу, которую нужно будет вводить каждый раз.
Если вам не нужна ключевая фраза или вы не хотите заполнять ответы на вопросы, то оставьте поле пустым и нажмите Enter.

Узнаем об ssh именах удаленных репозиториев:

Читайте также:  Windows 10 pro antispy

Скопируйте SSH ссылку на проект и вставьте ее после команд:

Должно получиться что то вроде того:

Запускаем SSH агент и добавляем к нему созданные ключи:

Результат выполнения команды должен быть примерно следующим:

Добавляем созданные ключи:

Вставляем ключи на Bitbucket и GitHub:
Выводим публичный ключ на экран:

Далее нужно копировать его и зарегистрировать на Bitbucket и GitHub.
Bitbucket:

  • Нажать на аватар своего профиля
  • Далее нажимаем Bitbucket settings
  • И выбираем SSH keys

В открывшимся окне заполоняем поля с наименованием ключа и вставляем содержимое публичного ключа, полученное при выполнении команды:

Доступ к bitbucket и github по ssh ключам

Если попытка склонировать любой приватный репозиторий с bitbucket или github по ssh вызывает ошибку вида:

То это значит, что вы не прошли авторизацию по ssh-ключам. Тут 2 варианта:

  1. Клонировать через https схему, при этом будет запрошен имя пользователя и пароль от аккаунта. Минус тот, что при любом обращении к центральному серверу (пр. git fetch , git pull ) придётся снова вводить пароль.
  2. Настроить ssh-ключи, чтобы git-аутентификация проходила автоматически без ввода паролей и т.д.

Если ключи у вас уже есть, то читайте сразу как добавить ssh ключ на github или добавить ssh ключ на bitbucket.

Рассмотрим подробнее как 1. создать ssh-ключи на linux (ubuntu) и добавить ssh ключи на 2. github и 3. bitbucket.

Генерация ssh-ключей

Для генерации ssh-ключа выполняем следующие команды:

После этого будет предложено ввести имя файла с ключами, либо если имя файла не указать, ключи будут созданы в файле id_rsa. Задаём имя файла с ключами, например, как «git_rsa«. Таким образом мы будем знать, что этот ssh-ключ используется конкретно для git-авторизации. Хотя, никто не запрещает использовать один и тот же ключ id_rsa. Ключи будут храниться в домашней директории пользователя

На запрос о установке пароля на связку ключей можно нажать enter, т.е. оставить пароль пустым (это безопасно). Теперь в каталоге

/.ssh появились 2 файла ключа:

  • git_rsa — приватный, который нельзя никому сообщать
  • git_rsa.pub — публичный, который мы сообщим gitbucket и github

По умолчанию при подключении к серверу для ssh-авторизации используется ключ с именем id_rsa. Мы это обойдём. Чтобы не указывать имя нужного нам ключа (git_rsa) при каждом подключении к серверу, отредактируйте файл

/.ssh/config (если файла ещё нет, создайте), добавьте содержимое для идентификации bitbucket-хоста и github:

Всё, на нашем комьютере или сервере (смотря где создавали ключи) нужные ключи созданы. Остаётся сообщить (добавить) наш публичный ключ туда, где мы будем проходить авторизацию, т.е. на github и bitbucket.

Добавление ssh-ключа на github

В своём профиле нажимаем Edit Profile -> SSH Keys -> Add SSH key.

В свежем интерфейсе github:

  1. кликаем на иконку профиля в правом верхнем углу, далее
  2. выбираем меню Settings
  3. в меню слева выбираем SSH and GPG keys
  4. Жмем кнопку New SSH key.

В форме добавления ключа указываем title (это название ключа, вводится для удобства, не на что не влияет) и key (это сам ключ, т.е. вставляем сюда всё содержимое файла

/.ssh/git_rsa.pub). Нажимаем Add key.

Добавление ssh-ключа на bitbucket

Авторизуемся, заходим в свой аккаунт. Нажимаем SSH keys -> Add Key. После ввода ключа в попап окошке нажимаем кнопку Add key для сохранения ssh-ключа.

Теперь вы можете клонировать свои приватные репозитории по ssh (git@github) без ввода пароля.

На что стоит обратить внимание если ssh-авторизация по ключу все еще не работает:

  • Как в git влить все изменения из ветки, чтобы получился один коммит? Решено!
  • Как добавить на linux сервер мой публичный ключ для входа по ssh по ключу без пароля? 2 ответа
  • git как перенести коммит из одной ветки в другую? Решено!
  • Как очистить git stash? Решено!
  • Не открывает git remote 1 ответ
  • git. Настройка git 0 комментариев
  • git алиасы 0 комментариев
  • Отправить Pull Request в чужой репозиторий на github 0 комментариев
  • Настройка прав для id_rsa (bad permissions) 0 комментариев
  • Сказать git какой из ssh-ключей использовать 0 комментариев

Комментарии 5

Мне вообще уже этот «Permission denied (publickey).» всю печёнку выел!
Суть такова: есть боевой проект на jino.ru, есть репо на bitbucket-е, есть локальная версия. Сгенерил путтигеном ключи. Публичный положил на сервер в папку .ssh и добавил ключ к аккаунту на битбаккете. У себя на ПК в путти-агенте активировал приватный ключ — все должно заработать, ан нет! В путти пытаюсь запулить или запушить изменения в связке бой-битбакет — постоянно такая шняга вылезает:

«Warning: Permanently added the RSA host key for IP address ‘2406:da. e9:9f55’ to the list of known hosts.
Permission denied (publickey).»

да, на бою в папке .ssh после первого запуска пула или пуша в путти был такой запрос:

»
The authenticity of host ‘bitbucket.org (2406:da0. 2c0:3470)’ can’t be established.
RSA key fingerprint is SHA256:zzX. YXaGp1A.
RSA key fingerprint is MD5:97:8c:1. aa:46:46:74:7c:40.
Are you sure you want to continue connecting (yes/no)?
»
как я понял, что-то в стиле «подлинность битбакета не установлена, хотите ли продолжить?». Я ответил согласием, после чего создался успешно файл known_hosts (на бою в папке с ключами), куда пишется ip битбаккета (как я понимаю) и дублируется строка из ключа доступа в том виде ,в котором лежит на битбакете. На др ресурсах вычитал, что чтобы Warning не выскакивал, нужно на бю в папке с ключами положить файл config без расширения и с содержимым «UserKnownHostsFile

/.ssh/known_hosts» — сделано. Права доступа на файл ключа на бою — 600, на остальные 2 файла (конфиг и хостс) — 644, на всю папку .ssh — 700.

Что еще нужно, чтобы пул/пуш заработал по ssh. Я уже в депрессии полнейшей!)) Может для доступа к самому репо на битбакете отдельные ключи нужно добавлять? Типа, к аккаунту на битбаккете подключается, а к репе уже нет?

Amati2007, с виду вы все делаете верно!
на битбакет публичный ключ достаточно добавить только в аккаунт. Можно и отдельно в каждый репозиторий добавлять ключ, но не обязательно.

Вот еще вы пишете, что в бою при запушить возникает ошибка «Permission denied (publickey)».
1) А как вы на боевой сервер подключаетесь? Вводите пароль или авторизуетесь по тому же самому ssh ключу? Если вводите пароль, то попробуйте для начала проверить ssh-авторизацию на хостинг по тому же ключу.
2) У вас одна единственная пара ключей создана и называется id_rsa по дефолту? Чтобы убедиться что один и тот же ключ используется для коннекта, тот же что на битбакет прописан.
3) а в

/.ssh/config нет ничего лишнего? Указания на какой-то левый ключ? Для чистоты эксперимента удалить файл)
4) known_hosts удалить для чистоты эксперимента, он должен сам создаваться при первом подключении (хотя возможно еще зависит от ssh-клиента).

Вообще, судя по ошибке, не нравится именно ключ: проверить что на битбакет залит нужный ключ. Может, стоит сгенерить новый ключ и проверить заново (старый удалить).

/.ssh/known_hosts и все. Изначально этого файла не было и без него всегда выдает Warning. если соединяюсь по ssh. С ним. с ним warning выдавать не должно, но выдает все равно, правда не всегда — если в путти сделать 4 раза подряд сделать попытку пуш или пулл, то этого сообщения нет. Оно появляется с 5-ой и далее попытки. И да, я еще приметил, что в тексте сообщения этого warning вторая часть (после ::) значения IP всегда разное. Например:
5-я попытка -> 2406:da00:ff00::6b17:d1f5
6-я попытка -> 2406:da00:ff00::22c2:513
7-я попытка -> 2406:da00:ff00::22c0:3470

и т.д.
То есть складывается такое ощущение, что у битбакета динамический IP, хотя, по-идее, для таких подключений должен быть набор статичных. Они даже их список где-то публиковали.
4) Да, если я удаляю known_hosts, то при попытке пула / пуша в путти вначале идет запрос про ключи The authenticity of host ‘. (полный текст я приводил в основном сообщении), а когда я отвечаю на него Yes, то known_hosts на сервере создается заново.

Ремарка: если пробовать работать с репо не по ssh, а по https, то происходит следующее: при заходе в путти по логин/паролю все успешно, при попытке пулл/пуш просит пароль — я его ввожу тот, что от аккаунта битбакета и, вуаля, меня не пускает. все тот же «Доступ запрещен», хотя локальная связка работает и я могу как принимать файлы с битбакета на локал, так и отправлять изменения обратно.

Читайте также:  Таймаут при загрузке windows 10 что это
Оцените статью