Несколько недель назад я наткнулся на mkcert, инструмент, написанный Filippo. Он тот же парень, что и создал популярный инструмент для тестирования heartbleed test.
Рассматриваемый инструмент отвечает на одну простую задачу:
Создавая локальный файл корневого CA, который устанавливается в вашей системе, он делает все сертификаты, выданные mkcert
, доверенными.
После загрузки последней версии с GitHub вы можете просто «установить» ее, запустив mkcert -install
. Как только это будет сделано, вы можете создать свой первый доверенный (вашей собственной системой) сертификат:
$ mkcert somedomain.local Using the local CA at "/home/alex/.local/share/mkcert" ✨ Created a new certificate valid for the following names 📜 - "somedomain.local" The certificate is at "./somedomain.local.pem" and the key at "./somedomain.local-key.pem" ✅
Например, вот как это выглядело бы, если бы вам пришлось загрузить сервер Node с поддержкой SSL:
const fs = require('fs') const options = { key: fs.readFileSync(__dirname + '/somedomain.local-key.pem'), cert: fs.readFileSync(__dirname + '/somedomain.local.pem') }; require('https').createServer(options, (req, res) => { res.writeHead(200) res.end(`Got SSL?`) }).listen(443)
Довольно аккуратно, а?
Что делает mkcert
, так это просто добавляет еще один файл CA в вашу систему (я предполагаю, что это /etc/ssl/certs/ca-certificates.crt
, но я не совсем уверен). Браузеры считают эти сертификаты надежными - хороший способ обмануть любого HTTP-клиента.
На сегодня все! Прощай!
Изначально опубликовано на odino.org ( 1 сентября 2018 ).
Вы можете подписаться на меня в Twitter - тирады приветствуются! 😉