Задача: требуется обертка вокруг openssl, которая бы позволяла
- Создавать сертификат CA
- Создавать сертификаты для различных сервисов
- Подписывать сертификаты сервисов сертификатом CA
Задача простая и банальная и каждый раз решается на коленке самописными скриптами. Есть правда TinyCA и еще какая-то дура на джаве, но это оверхед, достаточно чего-то совсем простого коммандлайнового.
Это будет называться nanoCA и уметь ровно то, что написано выше. Плюс еще инициализация конфига openssl и БД сертификатов. Собственно часть кода даже есть, осталось только его аккуратно оформить и сделать чуть более универсальным.
Если у кого-то есть какие-то мысли на тему – пишите.
Был в интернете где то Makefile прикольный с подобным функционалом.
http://sial.org/howto/openssl/ca/Makefile посмотрите тут, я его слегка подправил и пользуюсь.
Во-во, именно такое и собираюсь сделать, только чуть-чуть поумнее и на шелле.
А что планируете добавить? Может развить этот?
Хочу сделать примерно аналог EasyRSA, только красивше.
Есть простенький скрипт на perl, использует шаблоны для генерации разных сертификатов (для подписи email-ов, для доступа через pptp). Т.е. использование упрощено до нельзя,
“cert mail pupkin” – сгенерит сертификат для пользователя pukin, с помощью этого сертификата можно будет подписывать email-ы.
Если интересно, могу скинуть.
Кинь на gq@cs.msu.su – гляну.
OK, в понедельник приведу его в приличный вид, напишу хелп, добавлю комментариев и пришлю.
И мне тоже, debchest(сабака)gmail(точка)com
А что не так с EasyRSA из OpenVPN?
Вроде как тоже оберточка над openssl с теми же задачами.
Я его обнаружил уже чуть позже. Фактически это то что мне и надо, “но есть нюансы”:
1. не очень аккуратно выглядит как апи, так и внутренности.
2. нет внятного выделение типов сертификатов, есть только “серверный” и “клиентский”
3. не очень нравится как оно конфигурируется.
Поэтому пишу свой велосипед, более красивый и универсальный %)
С оглядкой на EasyRSA, конечно же. Уже почти разобрался с тем как же оно будет устроено, немножко подправлю и сделаю первый релиз. С состоянием работы можно ознакомиться здесь:
http://git.gerasiov.net/?p=nanoca.git
А чем тебя OpenCA не устроил?
Я не центр сертификации. Мне всего-то надо, что генерить сертификаты для сервисов, да для VPN. Вот еще одному человеку надо сертификаты для S/MIME.
Зачем мне для этого разворачивать инфраструктуру уровне центра сертификации. OpenCA или там на джаве был какой-то монстр…
Мне достаточно простенького скрипта, который умеет
nanoca create
nanoca sign
nanoca export –format
Что собственно на коленке и написал. Но постарался сделать так, чтобы оно было немножко универсальным.
OpenCA без суровой рихтовки неюзабеле, да и монстрообразен слишком. (IMHO естессно)
Те там много того что нужно только большому УЦ и нет многого, что сильно облегчило бы жизнь простым смертным (хотя бы относительно простая установка, простая настройка под себя для простых случаев и т.д.)
PS. есть еще OpenXPKI, ну… вид сбоку вобщем 🙂