В статье Своё Certificate Authority — в 5 OpenSSL команд я предложил разработчикам создавать свои СА и применять SSL всегда, вместо изобретения велосипеда. В нашей компании мы активно используем SSL. У нас есть несколько СА и множество доменов. Основным потребителем наших сертификатов являются виртуальные сервера.

Пришло время автоматизировать эту задачу и я создал веб приложение на Go — менеджер сертификатов. (Программа решила основную проблему — как называть файлы сертификатов. Программа назовет ключ сертификата для домена secret.mywebsite.com — secret.mywebsite.com.key, а не как душе угодно. Например: secret_mywebsite_com.key, + программа не перепутает папку где разместить сертификат и ключ). Приложение представляет из себя один единственный файл на Go.

Его предлагается скачать (если у вас линукс или мак)
wget https://raw.githubusercontent.com/CossackPyra/crtman/master/crtman.go

и запустить
go run crtman.go



В терминале вы увидите ссылку 127.0.0.1:8010/, которую следует нажать и вы попадете в менеджер сертификатов — crtman.



В поле СА введите к примеру MyCA и нажмите Create CA. Тем самым вы создадите корневой сертификат своего Certificate Authority. (Так по русски и говорим, а как написать русскими буквами, что бы ухо не резало не знаю)



Нажмем на MyCA и увидим список сертификатов. В данном случае только корневой сертификат rootCA и ссылки на ключ и сертификат.



Тут же можно создать новый сертификат для любого вашего домена. Просто нажав кнопку Create Certificate.



Вся эта красота, занимает меньше 500 строк кода включая HTML, JavaScript содержится внутри Go файла.
Программа создает папку ca в текущем каталоге, в ней создаются подпапки для каждого Certificate Authority. Внутри этих папок и лежат ключи и сертификаты.

Продукт предоставлен безвозмездно, т.е. public domain