[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"page-ru-/guides/general/git-ssh-key":3,"mdc--cvaatc-key":438,"mdc--yi9xci-key":449,"mdc--4t124t-key":465,"mdc--539vtg-key":497,"mdc--uw1m4-key":521,"mdc-p6s2sz-key":538,"mdc-orje0c-key":582,"mdc--yhxxp4-key":604,"related-/guides/general/git-clone,/guides/general/git-push,/guides/general/git-pull":634},{"id":4,"title":5,"appliesTo":6,"author":11,"body":12,"canonical":374,"code":67,"createdAt":375,"description":376,"difficulty":377,"draft":378,"estimatedTime":379,"extension":380,"faq":381,"howToSteps":391,"howToTotalTime":407,"image":374,"keywords":408,"locale":419,"meta":420,"navigation":421,"path":422,"platform":423,"related":424,"section":428,"seo":429,"severity":67,"stem":430,"summary":431,"tags":432,"twitterCreator":374,"twitterSite":374,"type":436,"updatedAt":375,"__hash__":437},"content_ru/guides/general/git-ssh-key.md","Как настроить SSH-ключ для Git за 5 минут – пошаговое руководство",[7,8,9,10],"Git 2.30+","Linux (Ubuntu 20.04+)","macOS (Ventura и выше)","Windows (10/11)","FixPedia Team",{"type":13,"value":14,"toc":361},"minimark",[15,20,24,28,49,53,58,61,99,106,110,117,130,133,136,140,143,174,177,200,204,211,227,234,238,245,274,277,281,284,300,303,307,357],[16,17,19],"h2",{"id":18},"введение-зачем-это-нужно","Введение / Зачем это нужно",[21,22,23],"p",{},"Использование SSH-ключей упрощает и защищает процесс аутентификации при работе с удаленными Git-репозиториями. Вместо ввода паролей вы используете пару ключей, что быстрее и безопаснее. После настройки вы сможете клонировать, изменять и отправлять изменения без лишних вопросов.",[16,25,27],{"id":26},"требования-подготовка","Требования / Подготовка",[29,30,31,35,38,46],"ul",{},[32,33,34],"li",{},"Установленный Git версии 2.30 или выше.",[32,36,37],{},"Доступ к терминалу (Linux, macOS или Windows с Git Bash/WSL).",[32,39,40,41,45],{},"Права на запись в директорию ",[42,43,44],"code",{},"~/.ssh",".",[32,47,48],{},"Аккаунт на GitHub, GitLab или другом Git-сервере, с которым вы хотите подключиться.",[16,50,52],{"id":51},"пошаговая-инструкция","Пошаговая инструкция",[54,55,57],"h3",{"id":56},"шаг-1-генерация-ssh-ключа","Шаг 1: Генерация SSH-ключа",[21,59,60],{},"Создайте новый RSA-ключ с длиной бит 4096 бит. Это стандартный выбор для современного оборудования.",[62,63,68],"pre",{"className":64,"code":65,"language":66,"meta":67,"style":67},"language-bash shiki shiki-themes github-light github-dark","ssh-keygen -t rsa -b 4096 -C \"user@example.com\"\n","bash","",[42,69,70],{"__ignoreMap":67},[71,72,75,79,83,87,90,93,96],"span",{"class":73,"line":74},"line",1,[71,76,78],{"class":77},"sScJk","ssh-keygen",[71,80,82],{"class":81},"sj4cs"," -t",[71,84,86],{"class":85},"sZZnC"," rsa",[71,88,89],{"class":81}," -b",[71,91,92],{"class":81}," 4096",[71,94,95],{"class":81}," -C",[71,97,98],{"class":85}," \"user@example.com\"\n",[21,100,101,102,105],{},"Следуйте подсказкам мастера: нажмите Enter, чтобы принять стандартное имя файла ",[42,103,104],{},"~/.ssh/id_rsa",", и, если хотите, добавьте парольную фразу. После завершения ключ будет сгенерирован.",[54,107,109],{"id":108},"шаг-2-добавление-публичного-ключа-в-провайдер","Шаг 2: Добавление публичного ключа в провайдер",[21,111,112,113,116],{},"Публичная часть ключа хранится в файле ",[42,114,115],{},"~/.ssh/id_rsa.pub",". Откройте его, чтобы скопировать содержимое.",[62,118,120],{"className":64,"code":119,"language":66,"meta":67,"style":67},"cat ~/.ssh/id_rsa.pub\n",[42,121,122],{"__ignoreMap":67},[71,123,124,127],{"class":73,"line":74},[71,125,126],{"class":77},"cat",[71,128,129],{"class":85}," ~/.ssh/id_rsa.pub\n",[21,131,132],{},"Вставьте этот текст в настройки SSH-ключей вашего Git-хоста (например, GitHub → «SSH и GPG ключи» → «Добавить SSH-ключ»). Публичный ключ теперь привязан к аккаунту.",[134,135],"in-article-ad",{},[54,137,139],{"id":138},"шаг-3-настройка-ssh-агента-и-автодобавление-ключа","Шаг 3: Настройка SSH-агента и автодобавление ключа",[21,141,142],{},"SSH-агент управляет вашими ключами, автоматически подставляя их при необходимости. Инициализируйте агент и добавьте ваш ключ.",[62,144,146],{"className":64,"code":145,"language":66,"meta":67,"style":67},"eval \"$(ssh-agent -s)\"\nssh-add ~/.ssh/id_rsa\n",[42,147,148,165],{"__ignoreMap":67},[71,149,150,153,156,159,162],{"class":73,"line":74},[71,151,152],{"class":81},"eval",[71,154,155],{"class":85}," \"$(",[71,157,158],{"class":77},"ssh-agent",[71,160,161],{"class":81}," -s",[71,163,164],{"class":85},")\"\n",[71,166,168,171],{"class":73,"line":167},2,[71,169,170],{"class":77},"ssh-add",[71,172,173],{"class":85}," ~/.ssh/id_rsa\n",[21,175,176],{},"Добавьте конфигурацию, чтобы агент автоматически добавлял ключ при подключении:",[62,178,180],{"className":64,"code":179,"language":66,"meta":67,"style":67},"echo -e \"\\nHost *\\n\\tAddKeysToAgent yes\\n\\tIdentityAgent ssh-agent\" >> ~/.ssh/config\n",[42,181,182],{"__ignoreMap":67},[71,183,184,187,190,193,197],{"class":73,"line":74},[71,185,186],{"class":81},"echo",[71,188,189],{"class":81}," -e",[71,191,192],{"class":85}," \"\\nHost *\\n\\tAddKeysToAgent yes\\n\\tIdentityAgent ssh-agent\"",[71,194,196],{"class":195},"szBVR"," >>",[71,198,199],{"class":85}," ~/.ssh/config\n",[54,201,203],{"id":202},"шаг-4-проверка-подключения-к-репозиторию","Шаг 4: Проверка подключения к репозиторию",[21,205,206,207,210],{},"Теперь проверьте, что аутентификация работает. Замените ",[42,208,209],{},"github.com"," на ваш хост, если нужно.",[62,212,214],{"className":64,"code":213,"language":66,"meta":67,"style":67},"ssh -T git@github.com\n",[42,215,216],{"__ignoreMap":67},[71,217,218,221,224],{"class":73,"line":74},[71,219,220],{"class":77},"ssh",[71,222,223],{"class":81}," -T",[71,225,226],{"class":85}," git@github.com\n",[21,228,229,230],{},"Если вы видите сообщение «Hello ",[231,232,233],"username",{},"! You've successfully authenticated», всё настроено правильно.",[54,235,237],{"id":236},"шаг-5-автодобавление-ключа-при-подключении-опционально","Шаг 5: Автодобавление ключа при подключении (опционально)",[21,239,240,241,244],{},"Для автоматического использования ключа при каждой сессии добавьте в ",[42,242,243],{},"~/.ssh/config"," блок для конкретного хоста:",[62,246,250],{"className":247,"code":248,"language":249,"meta":67,"style":67},"language-ini shiki shiki-themes github-light github-dark","Host github.com\n    AddKeysToAgent yes\n    UseKeychain yes\n    IdentityFile ~/.ssh/id_rsa\n","ini",[42,251,252,257,262,268],{"__ignoreMap":67},[71,253,254],{"class":73,"line":74},[71,255,256],{},"Host github.com\n",[71,258,259],{"class":73,"line":167},[71,260,261],{},"    AddKeysToAgent yes\n",[71,263,265],{"class":73,"line":264},3,[71,266,267],{},"    UseKeychain yes\n",[71,269,271],{"class":73,"line":270},4,[71,272,273],{},"    IdentityFile ~/.ssh/id_rsa\n",[21,275,276],{},"Сохраните изменения. В следующих подключениях ключ будет автоматически подставляться через агент.",[16,278,280],{"id":279},"проверка-результата","Проверка результата",[21,282,283],{},"Выполните клонирование репозитория, чтобы убедиться, что авторизация прошла успешно:",[62,285,287],{"className":64,"code":286,"language":66,"meta":67,"style":67},"git clone git@github.com:username/repo.git\n",[42,288,289],{"__ignoreMap":67},[71,290,291,294,297],{"class":73,"line":74},[71,292,293],{"class":77},"git",[71,295,296],{"class":85}," clone",[71,298,299],{"class":85}," git@github.com:username/repo.git\n",[21,301,302],{},"Если клонирование происходит без запроса пароля, настройка выполнена верно.",[16,304,306],{"id":305},"возможные-проблемы","Возможные проблемы",[29,308,309,319,331,344],{},[32,310,311,315,316,318],{},[312,313,314],"strong",{},"Ключ не принят"," – убедитесь, что публичный ключ добавлен в правильный аккаунт и что файл ",[42,317,115],{}," содержит именно тот ключ, который вы вставили.",[32,320,321,324,325,328,329,45],{},[312,322,323],{},"ssh-agent не работает"," – перезапустите агент: ",[42,326,327],{},"eval \"$(ssh-agent -s)\""," и повторите ",[42,330,170],{},[32,332,333,336,337,340,341,45],{},[312,334,335],{},"Неправильные права доступа"," – проверьте права на директорию и файлы: ",[42,338,339],{},"chmod 700 ~/.ssh"," и ",[42,342,343],{},"chmod 600 ~/.ssh/*",[32,345,346,349,350,353,354,45],{},[312,347,348],{},"Git запрашивает пароль"," – возможно, ключ защищён паролем. Введите его или настройте автоматическое использование парольной фразы через ",[42,351,352],{},"ssh-add -e","/",[42,355,356],{},"ssh-add -t",[358,359,360],"style",{},"html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}",{"title":67,"searchDepth":167,"depth":167,"links":362},[363,364,365,372,373],{"id":18,"depth":167,"text":19},{"id":26,"depth":167,"text":27},{"id":51,"depth":167,"text":52,"children":366},[367,368,369,370,371],{"id":56,"depth":264,"text":57},{"id":108,"depth":264,"text":109},{"id":138,"depth":264,"text":139},{"id":202,"depth":264,"text":203},{"id":236,"depth":264,"text":237},{"id":279,"depth":167,"text":280},{"id":305,"depth":167,"text":306},null,"2026-08-04 10:15:17","Пошаговая инструкция по созданию и подключению SSH-ключа для Git. Узнайте, как защитить репозитории и упростить авторизацию за 5 минут.","easy",false,"5-10 мин","md",[382,385,388],{"question":383,"answer":384},"Зачем использовать SSH-ключи для Git?","SSH-ключи обеспечивают безопасную и беспарольную авторизацию при работе с удаленными репозиториями, предотвращая передачу паролей по сети.",{"question":386,"answer":387},"Как добавить публичный ключ в GitHub или GitLab?","Скопируйте содержимое файла `~/.ssh/id_rsa.pub`, перейдите в настройки SSH-ключей в вашем аккаунте и вставьте ключ.",{"question":389,"answer":390},"Что делать, если Git не может аутентифицироваться с помощью SSH-ключа?","Проверьте, добавлены ли ключи в агент (`ssh-add -l`), верны ли права доступа (`chmod 600 ~/.ssh/config`) и совпадает ли хост в `~/.ssh/known_hosts`.",[392,395,398,401,404],{"name":393,"text":394},"Генерация SSH-ключа","Откройте терминал и выполните команду для создания нового RSA-ключа с длиной бит 4096 бит. Пример: `ssh-keygen -t rsa -b 4096 -C \"user@example.com\"`. Следуйте подсказкам, установите безопасное имя файла (по умолчанию `~/.ssh/id_rsa`). При необходимости установите пароль.",{"name":396,"text":397},"Добавление публичного ключа в провайдер","Откройте публичный ключ в редакторе: `cat ~/.ssh/id_rsa.pub`. Скопируйте его и вставьте в настройки SSH-ключей на GitHub или GitLab (раздел «SSH и GPG ключи»).",{"name":399,"text":400},"Настройка SSH-агента и автодобавление ключа","Инициализируйте SSH-агент и добавьте ваш ключ: `eval \"$(ssh-agent -s)\"` и `ssh-add ~/.ssh/id_rsa`. Для автоматического добавления ключа при каждом подключении добавьте в `~/.ssh/config` блок `AddKeysToAgent yes` и `IdentityAgent ssh-agent`.",{"name":402,"text":403},"Проверка подключения к репозиторию","Выполните проверку аутентификации: `ssh -T git@github.com` (замените домен на ваш). Если видите сообщение «Hello \u003Cusername>!», подключение успешно.",{"name":405,"text":406},"Автодобавление ключа при подключении (опционально)","Откройте `~/.ssh/config` и добавьте конфигурацию, например:\n\n```\nHost github.com\n    AddKeysToAgent yes\n    UseKeychain yes\n    IdentityFile ~/.ssh/id_rsa\n```\n\nСохраните и переподключитесь.","PT10M",[409,410,411,412,413,414,415,416,417,418],"git ssh ключ","настроить ssh ключ git","создать ssh ключ git","добавить публичный ключ git","подключить ssh ключ к github","git авторизация по ssh","генерировать ssh ключ","настроить ssh агент git","git remote add ssh","проверить ssh подключение git","ru_RU",{},true,"/guides/general/git-ssh-key","general",[425,426,427],"/guides/general/git-clone","/guides/general/git-push","/guides/general/git-pull","Гайды Git",{"title":5,"description":376},"guides/general/git-ssh-key","В этом гайде вы узнаете, как сгенерировать SSH-ключ, добавить публичный ключ в GitHub/GitLab и настроить автодобавление ключа в агент. После выполнения инструкции вы сможете беспрепятственно работать с удаленными репозиториями.",[293,220,433,434,435],"github","ssh-key","авторизация","guide","Ksej_ZSXxuxF7IEqBzwR1qjcqTq79oho1EvJbbd5w48",{"data":439,"body":440},{},{"type":441,"children":442},"root",[443],{"type":444,"tag":21,"props":445,"children":446},"element",{},[447],{"type":448,"value":384},"text",{"data":450,"body":451},{},{"type":441,"children":452},[453],{"type":444,"tag":21,"props":454,"children":455},{},[456,458,463],{"type":448,"value":457},"Скопируйте содержимое файла ",{"type":444,"tag":42,"props":459,"children":461},{"className":460},[],[462],{"type":448,"value":115},{"type":448,"value":464},", перейдите в настройки SSH-ключей в вашем аккаунте и вставьте ключ.",{"data":466,"body":467},{},{"type":441,"children":468},[469],{"type":444,"tag":21,"props":470,"children":471},{},[472,474,480,482,488,490,496],{"type":448,"value":473},"Проверьте, добавлены ли ключи в агент (",{"type":444,"tag":42,"props":475,"children":477},{"className":476},[],[478],{"type":448,"value":479},"ssh-add -l",{"type":448,"value":481},"), верны ли права доступа (",{"type":444,"tag":42,"props":483,"children":485},{"className":484},[],[486],{"type":448,"value":487},"chmod 600 ~/.ssh/config",{"type":448,"value":489},") и совпадает ли хост в ",{"type":444,"tag":42,"props":491,"children":493},{"className":492},[],[494],{"type":448,"value":495},"~/.ssh/known_hosts",{"type":448,"value":45},{"data":498,"body":499},{},{"type":441,"children":500},[501],{"type":444,"tag":21,"props":502,"children":503},{},[504,506,512,514,519],{"type":448,"value":505},"Откройте терминал и выполните команду для создания нового RSA-ключа с длиной бит 4096 бит. Пример: ",{"type":444,"tag":42,"props":507,"children":509},{"className":508},[],[510],{"type":448,"value":511},"ssh-keygen -t rsa -b 4096 -C \"user@example.com\"",{"type":448,"value":513},". Следуйте подсказкам, установите безопасное имя файла (по умолчанию ",{"type":444,"tag":42,"props":515,"children":517},{"className":516},[],[518],{"type":448,"value":104},{"type":448,"value":520},"). При необходимости установите пароль.",{"data":522,"body":523},{},{"type":441,"children":524},[525],{"type":444,"tag":21,"props":526,"children":527},{},[528,530,536],{"type":448,"value":529},"Откройте публичный ключ в редакторе: ",{"type":444,"tag":42,"props":531,"children":533},{"className":532},[],[534],{"type":448,"value":535},"cat ~/.ssh/id_rsa.pub",{"type":448,"value":537},". Скопируйте его и вставьте в настройки SSH-ключей на GitHub или GitLab (раздел «SSH и GPG ключи»).",{"data":539,"body":540},{},{"type":441,"children":541},[542],{"type":444,"tag":21,"props":543,"children":544},{},[545,547,552,553,559,561,566,568,574,575,581],{"type":448,"value":546},"Инициализируйте SSH-агент и добавьте ваш ключ: ",{"type":444,"tag":42,"props":548,"children":550},{"className":549},[],[551],{"type":448,"value":327},{"type":448,"value":340},{"type":444,"tag":42,"props":554,"children":556},{"className":555},[],[557],{"type":448,"value":558},"ssh-add ~/.ssh/id_rsa",{"type":448,"value":560},". Для автоматического добавления ключа при каждом подключении добавьте в ",{"type":444,"tag":42,"props":562,"children":564},{"className":563},[],[565],{"type":448,"value":243},{"type":448,"value":567}," блок ",{"type":444,"tag":42,"props":569,"children":571},{"className":570},[],[572],{"type":448,"value":573},"AddKeysToAgent yes",{"type":448,"value":340},{"type":444,"tag":42,"props":576,"children":578},{"className":577},[],[579],{"type":448,"value":580},"IdentityAgent ssh-agent",{"type":448,"value":45},{"data":583,"body":584},{},{"type":441,"children":585},[586],{"type":444,"tag":21,"props":587,"children":588},{},[589,591,597,599],{"type":448,"value":590},"Выполните проверку аутентификации: ",{"type":444,"tag":42,"props":592,"children":594},{"className":593},[],[595],{"type":448,"value":596},"ssh -T git@github.com",{"type":448,"value":598}," (замените домен на ваш). Если видите сообщение «Hello ",{"type":444,"tag":231,"props":600,"children":601},{},[602],{"type":448,"value":603},"!», подключение успешно.",{"data":605,"body":606},{},{"type":441,"children":607},[608,620,629],{"type":444,"tag":21,"props":609,"children":610},{},[611,613,618],{"type":448,"value":612},"Откройте ",{"type":444,"tag":42,"props":614,"children":616},{"className":615},[],[617],{"type":448,"value":243},{"type":448,"value":619}," и добавьте конфигурацию, например:",{"type":444,"tag":62,"props":621,"children":624},{"className":622,"code":248,"language":448},[623],"language-text",[625],{"type":444,"tag":42,"props":626,"children":627},{"__ignoreMap":67},[628],{"type":448,"value":248},{"type":444,"tag":21,"props":630,"children":631},{},[632],{"type":448,"value":633},"Сохраните и переподключитесь.",[]]