GitHub позволяет работать с репозиториями через SSH — это безопаснее и удобнее, чем HTTPS. Особенно полезно при регулярных git push и git pull: не нужно каждый раз вводить логин и пароль. Ниже — настройка на Windows, Linux и macOS.
Шаг 1: Подготовка папки .ssh и проверка наличия SSH-ключей
Для Linux / macOS
mkdir -p ~/.ssh chmod 700 ~/.ssh cd ~/.ssh
Для Windows
Откройте Командную строку или PowerShell и выполните:
mkdir .ssh cd .ssh dir
Шаг 2: Создание SSH-ключа
ssh-keygen -t rsa -b 4096 -C "ваш_email@example.com"
После запуска команда задаст несколько вопросов:
Enter file in which to save the key (.../.ssh/id_rsa):— путь к файлу, где будет сохранён приватный ключ; если просто нажатьEnter, он сохранится по умолчанию в~/.ssh/id_rsa.Enter passphrase (empty for no passphrase):— дополнительный пароль к ключу: при его установке даже в случае кражи файла ключа им нельзя будет воспользоваться без этого пароля, а если оставить поле пустым и просто нажатьEnter, ключ создастся без дополнительного пароля (удобнее, но менее безопасно).Enter same passphrase again:— повтор ввёденного пароля для подтверждения (или сноваEnter, если оставили предыдущее поле пустым).
В результате в папке ~/.ssh появятся файлы вроде id_rsa (приватный ключ, никому не показывать) и id_rsa.pub (публичный ключ, его как раз нужно добавить в GitHub).
Шаг 3: Запуск SSH-агента и добавление ключа
SSH-агент позволяет не вводить passphrase (если вы его задали) и не подгружать ключ вручную при каждом использовании Git. Если вы создали ключ без дополнительного пароля, этот шаг обычно можно пропустить — Git сможет использовать ключ и без запущенного агента.
Linux / macOS
eval "$(ssh-agent -s)" ssh-add ~/.ssh/id_rsa
Если ключ в другом файле — укажите его вместо id_rsa.
Windows (PowerShell, встроенный OpenSSH)
В PowerShell можно запустить/включить сервис агента и добавить ключ так:
Get-Service ssh-agent | Set-Service -StartupType Automatic Start-Service ssh-agent ssh-add $env:USERPROFILE\.ssh\id_rsa
Если файл ключа называется иначе — подставьте своё имя файла вместо id_rsa.
Шаг 4: Добавление ключа на GitHub
Для Linux / macOS
cat ~/.ssh/id_rsa.pub
Для Windows
notepad id_rsa.pub
Дальше:
1. Откройте GitHub → Settings → SSH and GPG keys

2. Нажмите New SSH key
3. Укажите имя (например: «мой ноутбук» или «мой сайт site.ru»)

4. Вставьте содержимое ключа и сохраните
Шаг 5: Проверка подключения
ssh -T git@github.com
Успешный ответ выглядит так:
Hi username! You've successfully authenticated, but GitHub does not provide shell access.
Если вы видите это сообщение, SSH‑подключение к GitHub настроено корректно — можно использовать SSH‑URL репозиториев вида git@github.com:username/repository.git для git clone, git pull и git push.

Возможные ошибки
Permission denied (publickey) — ключ не добавлен в агент или не загружен на GitHub. Проверьте: ssh-add -l
Could not load SSH key — агент не запущен или ключ не добавлен. Повторите ssh-add ~/.ssh/id_rsa
Host key verification failed — добавьте GitHub в доверенные хосты:
ssh-keyscan github.com >> ~/.ssh/known_hosts
Заключение
После настройки SSH вы получаете защищённое соединение с GitHub, доступ без ввода логина и пароля и более удобную работу с автоматизацией и CI/CD. Если вы только начинаете знакомство с Git и GitHub, настройка SSH — отличный старт для уверенной и безопасной работы с репозиториями.
Комментарии (6)

netricks
05.03.2026 13:10И, добавлю по теме, что доступ по ssh - удобный способ разграничения аккаунтов. Если с одной машины работать, допустим, с личными репозиториями и корпоративными с разных учёток - без ssh-пути настройка доступа, какой логин куда, превращается в головную боль, а с ssh всё решается через переопределение remote линка. Ssh config сам нужные креды подставляет

FeudeyTF
05.03.2026 13:10Спасибо за статью! GitHub же предоставляет возможность авторизоваться через их утилиту github-cli, чтобы не аутентифицироваться каждый раз. Чем этот способ хуже, особенно для новичков?

olegnastyle Автор
05.03.2026 13:10Я полагаю, что начинать надо с Git, а GitHub CLI использовать уже после — как дополнение к нему.
netricks
Ух ты. Жанр технических гайдов ещё не вымер?
С одной стороны, моё почтение, а с другой - в век победившего chatgpt, который расскажет тоже самое, но с персонализированными подробностями - неясно, кто целевая аудитория данной статьи
olegnastyle Автор
Разного рода «галлюцинации» искусственного интеллекта встречаются регулярно, поэтому моя статья призвана сэкономить ваше время и избавить от лишних переживаний. Я делюсь проверенной информацией, которая поможет избежать типичных ошибок.
Эта публикация является продолжением моей предыдущей работы и частью обширной серии материалов о создании и развёртывании веб-приложений. Буду признателен за любые замечания и корректировки - ваше мнение поможет сделать материал ещё более полезным и точным.
aztextal
Если таких статей не будет, то ИИ не на чем будет учиться. Появляются новые версии и функции, если никто не будет рассказывать, спрашивать и отвечать, победивший ChatGPT ничем помочь не сможет!