Программы
Как добавить самоподписанный сертификат в MacOS

Как добавить самоподписанный сертификат в MacOS

Предположим, у вас есть веб-сайт / git-репозиторий и т.д. и вы

  • либо не захотели использовать Let's Encrypt для получения сертификатов,
  • либо же это сугубо внутренний сервис, поэтому нас вполне устраивает самоподписанный сертификат.

Тем не менее, чтобы ходить по HTTPS на данные сервисы без "игнорировать невалидный сертификат" при запросах, надо бы его добавить в хранилище сертификатов MacOS.

Для этого сначала вытащим PEM-сертификат:

openssl s_client -connect {{ host }}:443 -showcerts \
  < /dev/null 2>/dev/null \
  | awk '/BEGIN/{r=""}/BEGIN/,/END/{r = r ORS $0}END{print r}' \
  > cert.pem

– положили в файл cert.pem.

После этого его можно добавить в систему:

sudo security add-trusted-cert -d -r trustRoot -k \
  /Library/Keychains/System.keychain cert.pem

– тот же Google Chrome подхватит его после следующего перезапуска. Ну и различные сетевые утилиты также будут его использовать – красота!

Также может быть вам интересно:

SQLite приняли Code of Conduct, основанный на Уставе святого Бенедикта

Проект SQLite приняли новый Code of Conduct. И он сильно отличается от того, к чему мы привыкли

Читать »

Сделаем свою небольшую общую библиотеку

Мы уже делали библиотеку для Си. Настало сделать общую библиотеку!

Читать »
Фото Так ли безопасен Linux? Несколько коммитов с уязвимосятми в stable

Так ли безопасен Linux? Несколько коммитов с уязвимосятми в stable

Исследователи сумели пройти code-review с реквестами в ядро Linux, заведомо содержащими добавление уязвимостей.

Фото Пример своей консольной команды в Django проекте

Пример своей консольной команды в Django проекте

Если вы работали с Django проектом, то, скорее всего, запускали команды из консоли (manage.py). В Django есть простой способ писать свои команды для управления проектом.

Фото Разграничение прав доступа на Django сайте

Разграничение прав доступа на Django сайте

Почти на любом веб-сайте необходимо разделять пользователей на группы и предоставлять им разные возможности. В Django есть довольно серьёзная система прав доступа для пользователей - давайте её рассмотрим!

Фото Пользователи и их создание в Django - своя регистрация на сайте

Пользователи и их создание в Django - своя регистрация на сайте

Если вашим сайтом должны активно пользоваться несколько человек, то полезно их различать, а значит - надо уметь создавать пользователей, либо предоставлять возможность регистрации Django пользователей.

Фото Как удалить локальную или удалённую ветку в Git

Как удалить локальную или удалённую ветку в Git

Git - распределённая система контроля версий, где ветки(branch) используются крайне активно. На каждую задачу - отдельная ветка - вот хороший тон!

Фото Асинхронность и очереди в распределённых системах

Асинхронность и очереди в распределённых системах

Немного примеров работы с асинхронностью в распределённых системах

Фото Зачем писать "hello world"?

Зачем писать "hello world"?

Немного размышлений об одной из самых известных программ для обучения программированию.

Фото Как на Bash получить файлы, изменённые за сегодняшний день

Как на Bash получить файлы, изменённые за сегодняшний день

Bash имеет огромные возможности по программированию/скриптованию и администрированию операционной системы. Не важно: Linux это, FreeBSD, или MacOS – на Bash можно сделать многое.