Главная > Программы MINGWНастройка SSHУстановка SSH (secure shell) для git При использовании протокола https при каждом подключении к Bitbacket требуется авторизация (например,
при выполнении команды git push). * Инструкция Шаг 1. Проверить, что установлен клиент SSH a.polischuk@polischuk-a MINGW64 / # ssh -v usage: ssh [-1246AaCfGgKkMNnqsTtVvXxYy] [-b bind_address] [-c cipher_spec] [-D [bind_address:]port] [-E log_file] [-e escape_char] [-F configfile] [-I pkcs11] [-i identity_file] [-L address] [-l login_name] [-m mac_spec] [-O ctl_cmd] [-o option] [-p port] [-Q cipher | cipher-auth | mac | kex | key] [-R address] [-S ctl_path] [-W host:port] [-w local_tun[:remote_tun]] [user@]hostname [command] Шаг 2. Установить аутентификацию по-умолчанию * запустить GitBash
* ввести команду <ssh-keygen> # ssh-keygen.exe Generating public/private rsa key pair. Enter file in which to save the key (/c/Users/a.polischuk//.ssh/id_rsa): anatolean4bitbucket Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in anatolean4bitbucket. Your public key has been saved in anatolean4bitbucket.pub. The key fingerprint is: SHA256:csep7ze8mibnRnJ/W1Nj1Tk2ucs84Il72qvAX0nxZ/E a.polischuk@polischuk-a The key''s randomart image is: +---[RSA 2048]----+ | | | +| | . Bo| | . . + B| | . S + o =E| | oooo + B.=| | .* + = *.| | ..*.O...o| | B*B=*o. | +----[SHA256]-----+ * проверить созданные файлы # ls ~/.ssh id_rsa id_rsa.pub Шаг 3. Создание конфигурационного файла для SSH
* создать файл ~/.ssh/config # Host bitbucket.org IdentityFile ~/.ssh/id_rsa Вторая строка должна отстоять от первой ровно на один пробел!!! * сохранить и закрыть файл* перезапустить GitBash Шаг 4. Обновление файла настроек .bashrc Для того, чтобы ssh-служба запускалась при каждом старте GitBash внести следующие изменения в файл .bashrc SSH_ENV=$HOME/.ssh/environment
# start the ssh-agent
function start_agent {
echo "Initializing new SSH agent..."
# spawn ssh-agent
/usr/bin/ssh-agent | sed 's/^echo/#echo/' > "${SSH_ENV}"
echo succeeded
chmod 600 "${SSH_ENV}"
. "${SSH_ENV}" > /dev/null
/usr/bin/ssh-add
}
if [ -f "${SSH_ENV}" ]; then
. "${SSH_ENV}" > /dev/null
ps -ef | grep ${SSH_AGENT_PID} | grep ssh-agent$ > /dev/null || {
start_agent;
}
else
start_agent;
fi
"
Если файл .bashrc отсутствует, то создать руками в домашней директории пользователя (/c/users/a.polischuk) # ssh-add -l 2048 0f:37:21:af:1b:31:d5:cd:65:58:b2:68:4a:ba:a2:46 /Users/manthony/.ssh/id_rsa (RSA) После установки публичного ключа на bitbucket наличие скрипта аутентификации избавит от необходимости указывать каждый раз пароль. Шаг 5. Установка публичного ключа в профиле bitbucket # cat ~/.ssh/id_rsa.pub * выделить и скопировать в буфер памяти содержимое файла публичного ключа # ssh -T git@bitbucket.org Системное сообщение сообщит о том, какой аккаунт bitbacket может подключаться с этим ключом Шаг 6. Настроить свой репозиторий на использование протокола SSH. # https://anatolean@bitbucket.org/anatolean/mytetra.git git@bitbucket.org:anatolean/mytetra.git Шаг 7. Внести изменнеия в проект по новому протоколу # git commit -m "making a change under the SSH protocol" * передать изменения на сервер # git push Counting objects: 5, done. Delta compression using up to 2 threads. Compressing objects: 100% (2/2), done. Writing objects: 100% (3/3), 287 bytes, done. Total 3 (delta 1), reused 0 (delta 0) remote: bb/acl: newuserme is allowed. accepted payload. To git@bitbucket.org:newuserme/bb101repo.git 056c29c..205e9a8 master -> masterМатериал взят с сайта: Главная > Программы |