В браузере интернет работает идеально, а pip install, npm и git clone на ноутбуке падают с ошибкой SSL: CERTIFICATE_VERIFY_FAILED: настраиваем системное доверие за 60 секунд!
Знакомый до боли парадокс каждого разработчика, аналитика данных, инженера автотестов и специалиста по информационной безопасности на рабочем ноутбуке с Windows 11! Вы открываете браузер — pypi.org, npmjs.com и github.com открываются за долю секунды с идеальным замочком HTTPS! Открываете рядом VS Code или PowerShell, пишете простейшее pip install pandas или **git clone — и терминал заливает красным полотном ошибок: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate или SSL certificate problem: self-signed certificate in certificate chain!
И тут на форумах новичкам дают ужасный совет: «А ты выруби вообще проверку SSL-сертификатов флагами --trusted-host и sslVerify = false!» — открывая свой ноутбук для подмены любых скачиваемых библиотек! Ничего выключать не нужно! В 2026 году и в Git, и в Python 3.10–3.14, и в Node.js уже встроен официальный штатный переключатель на родное криптохранилище сертификатов Windows (Windows Schannel / CryptoAPI), который решает проблему раз и навсегда за одну минуту с сохранением 100 % криптографической защиты!
Почему браузер доверяет соединению, а консольные утилиты Python / Git / Node — нет?!
Потому что по исторической традиции из мира Linux консольные инструменты приходят на Windows со своим собственным отдельным файликом корневых сертификатов cacert.pem (библиотека OpenSSL) и в упор не смотрят в системное хранилище сертификатов самой Windows! А на вашем ноутбуке стоит один из трёх легитимных фильтров:
- Корпоративный шлюз безопасности вашей компании (DLP / TLS Inspection, сертификат которого сисадмин централизованно добавил в хранилище Windows!);
- Модуль «Проверка защищённых соединений HTTPS» в домашнем антивирусе (Kaspersky / ESET / Dr.Web);
- Или отечественный корневой сертификат в хранилище Windows!
Браузер смотрит в системное хранилище Windows — и видит доверенный корень. А pip / git смотрят в свой закрытый cacert.pem — и бьют тревогу! Научим все три инструмента пользоваться родным системным хранилищем самой Windows одной командой для каждого!
| Какой инструмент выдаёт ошибку SSL на ноутбуке | Официальная чистая команда перехода на системное хранилище Windows! | Почему это в 100 раз лучше --trusted-host / sslVerify false |
|---|---|---|
| Git for Windows (git clone / pull / push) | git config --global http.sslBackend schannel | Переводит Git с изолированного openssl на встроенный системный движок Windows Secure Channel (schannel) — все корпоративные и системные сертификаты подхватываются автоматически! |
| Python 3.10+ (pip install) | pip config set global.use-feature truststore (или установка пакета pip-system-certs) | Встроенный стандарт PEP 543 / truststore в современном pip: проверяет подлинность пакетов через родной системный криптопровайдер ОС! |
| Node.js 20.x / 22.x+ (npm / pnpm / yarn) | Переменная запуска NODE_OPTIONS=--use-openssl-ca (или в Node 23+ нативный флаг --use-system-ca!) | Включает чтение системных корневых сертификатов ОС во всех запросах npm и fetch! |
Пошаговая 60-секундная настройка для Git, Python и Node.js прямо в Терминале!
1. Чиним Git за 3 секунды навсегда!
Откройте обычный терминал VS Code или PowerShell и выполните одну глобальную настройку:
git config --global http.sslBackend schannel
Проверьте тут же любую команду git fetch или git clone — ошибка unable to get local issuer certificate исчезла мгновенно и больше никогда не вернётся ни в одном репозитории!
2. Чиним Python pip и библиотеку requests в ваших скриптах!
Начиная с pip версии 24.2+ поддержка системного хранилища truststore уже встроена прямо в коробку pip! Включите её глобально для всего вашего пользователя Windows одной строкой:
python -m pip config set global.use-feature truststore
А если ваши собственные рабочие Python-скрипты (парсеры API банков, интеграции с CRM на библиотеках requests, httpx или urllib3) тоже спотыкаются на корпоративном прокси — установите один раз крошечный официальный пакет с PyPI:
python -m pip install pip-system-certs truststore
Он автоматически прозрачно подключает системное хранилище сертификатов Windows ко всем вызовам ssl внутри вашего виртуального окружения .venv!
3. Чиним Node.js (22.x / 23.x+):
В современных выпусках Node.js добавлен официальный системный флаг --use-system-ca! Пропишите в переменных среды вашего пользователя (Win + R -> sysdm.cpl -> Дополнительно -> Переменные среды -> Создать для пользователя) имя переменной NODE_OPTIONS и значение --use-system-ca (а если у вас установлен корпоративный .pem-файл от IT-отдела компании — переменную NODE_EXTRA_CA_CERTS с путём к файлу corp-root.pem, которая одновременно подхватывается и Node.js, и AWS CLI, и плагинами VS Code / Cursor!).
Для быстрой и комфортной работы с большими проектами на Python, TypeScript, Docker и локальными базами данных мы подбираем проверенные бизнес-машины — в частности, корпоративные ноутбуки ThinkPad и EliteBook, лёгкие ноутбуки для удалёнки и командировок и конфигурации под апгрейд оперативной памяти и SSD в ноутбуке — с полной проверкой всех узлов в цифровом паспорте ноутбука (см. также гарантию 12 месяцев и правила сервиса).
Чек-лист проверки на случай домашнего ноутбука (без корпоративного прокси!)
- [ ] Если ошибка SSL: CERTIFICATE_VERIFY_FAILED внезапно выскочила на обычном домашнем ноутбуке без всяких корпоративных сетей — первым делом взгляните на дату и год в правом нижнем углу экрана! Если на часах стоит прошлый или будущий год, проверка срока действия сертификата pypi.org гарантированно упадёт!
- [ ] Проверьте в настройках домашнего стороннего антивируса (раздел Настройки сети) галочку «Внедрять скрипт и проверять защищённые соединения HTTPS»: на ноутбуке разработчика перехват локального трафика антивирусом часто замедляет npm install втрое!
Частые вопросы
А как при установке pip-system-certs скачать этот самый Первый пакет, если pip install прямо сейчас ещё не работает из-за ошибки SSL?!
Блестящий практический вопрос курицы и яйца! Ровно один единственный первый раз при установке самого моста truststore добавьте временный одноразовый флаг в команду: python -m pip install --trusted-host pypi.org --trusted-host files.pythonhosted.org pip-system-certs Через 3 секунды мост установлен — и все последующие тысячи пакетов вы ставите обычной чистой командой pip install ... с полной проверкой SSL!
Где физически создаётся файл конфигурации pip.ini в Windows после команды pip config set?
Он аккуратно сохраняется в вашей папке профиля по пути %APPDATA%\pip\pip.ini — вы всегда можете открыть его обычным Блокнотом, посмотреть две понятные строчки внутри или перенести на второй рабочий ноутбук!
Помогает ли git config --global http.sslBackend schannel также для настольных программ GitHub Desktop, Sourcetree и встроенного Git в VS Code / PyCharm?
Да, на все сто процентов! И встроенная панель Source Control в VS Code, и JetBrains PyCharm / IntelliJ IDEA, и Sourcetree под капотом вызывают системный git.exe и автоматически читают ваш глобальный файл .gitconfig!
Официальные источники и техническая документация
- Официальное руководство документации менеджера пакетов Python pip по использованию системного хранилища сертификатов ОС (truststore):
- Официальный справочник документации Git (git-config) по параметру http.sslBackend = schannel для Windows:
- Документация командной строки среды выполнения Node.js по флагам --use-system-ca и переменной NODE_EXTRA_CA_CERTS:
- Страница официальной Python-библиотеки truststore (PEP 543) в реестре пакетов Python Package Index (PyPI):
- Документация Visual Studio Code по работе с сетевыми сертификатами прокси-серверов предприятий: