Я использую несколько сайтов, зашифрованных по протоколу SSL, и мне нужно создать сертификаты для их работы. Все они являются внутренними приложениями, поэтому мне не нужно покупать сертификат, я могу создать свой собственный.
Я нахожу довольно утомительным все время делать с использованием openssl, и думаю, что это то, что, вероятно, было сделано раньше, и для этого существует программное обеспечение.
Я предпочитаю системы на основе Linux, и я бы предпочел систему с командной строкой, а не графический интерфейс.
У кого-нибудь есть предложения?
Опция, которая не требует вашего собственного CA - это получить сертификаты от CAcert (они бесплатны).
Я считаю удобным добавить два корневых сертификата CAcert на мои клиентские машины, после чего я могу управлять всеми сертификатами SSL через CAcert.
Вполне вероятно, что самоподписание даст вам то, что вам нужно; Вот страница (ссылка воскрешена web.archive.org), которая предоставляет достойное руководство по самоподписанию, если вы хотите узнать все подробности о том, как это делается и как создать свой собственный скрипт.
Исходная ссылка на скрипт из этого ответа, к сожалению, мертва, и мне не удалось найти его архив, но есть много альтернатив для предварительно развернутых сценариев оболочки.
Если вы ищете что-то для поддержки достаточно полнофункциональной самоподписки, то в этом руководстве по аутентификации 802.1x от tldp.org рекомендуется использовать вспомогательные сценарии для самоподписания из FreeRADIUS . Или, если вам просто нужно быстро и грязно, то Рон Бибер предлагает свой «мертвый мозг» для самостоятельной подписи в своем блоге на bieberlabs.com.
Конечно, существует множество альтернативных сценариев, но это, кажется, дает хороший выбор, и с небольшой дополнительной информацией из руководства вы сможете адаптировать их, чтобы делать все, что вам нужно.
Стоит также проверить SSL-сертификаты HOWTO . Сейчас он довольно старый (последнее обновление 2002 года), но его содержание все еще актуально: он объясняет, как использовать CA
скрипт Perl / Bash, поставляемый с программным обеспечением OpenSSL.
Я знаю, что вы сказали, что предпочитаете командную строку, но для тех, кто заинтересован в этом, TinyCA - очень простое в использовании программное обеспечение CA GUI. Я использовал это как в Linux, так и в OSX.
Существует простое решение для веб-страницы: https://www.ibm.com/developerworks/mydeveloperworks/blogs/soma/entry/a_pki_in_a_web_page10
Мне нравится использовать скрипты easy-rsa, поставляемые с OpenVPN. Это набор инструментов командной строки, используемых для создания среды PKI, необходимой для OpenVPN. Но с небольшим изменением (также предоставленного) файла openssl.cnf вы можете создать практически все, что захотите. Я использую это для самостоятельной подписи сертификатов сервера ssl, а также для резервного копирования Bacula и для создания закрытых ключей / csr для «настоящих» сертификатов. Просто скачайте архив с исходным кодом OpenVPN Community Edition и скопируйте папку easy-rsa на свой Linux-компьютер. вы найдете много документации на страницах сообщества openvpn.
Раньше я использовал CAcert, это тоже хорошо, но вы должны создать CSR самостоятельно, поэтому вы должны снова использовать openssl, и сертификаты действительны только в течение полугода. это раздражает
Программное обеспечение XCA выглядит достаточно хорошо поддерживаемым (авторское право 2012, использует Qt4), с хорошо документированным и достаточно простым пользовательским интерфейсом и имеет пакеты для Debian, Ubuntu и Fedora.
Не судите о сайте с первого взгляда: http://xca.sourceforge.net/
Скорее, проверьте это хорошее пошаговое руководство, чтобы добавить новый CA: http://xca.sourceforge.net/xca-14.html#ss14.1
Вы можете увидеть скриншот приложения там: http://sourceforge.net/projects/xca/
Это на основе графического интерфейса, а не командной строки.
Я создал скрипт-обертку , написанный на Bash, для OpenSSL, который может быть вам полезен здесь. Для меня самыми простыми источниками ошибок пользователя при использовании OpenSSL были:
- Сохранение согласованной и логичной схемы именования для конфигурации / сертификатов / ключей, чтобы я мог видеть, как каждый артефакт вписывается во всю PKI, просто посмотрев на имя / расширение файла
- Обеспечение соответствия структуры папок на всех компьютерах CA, которые используют сценарий.
- Задание слишком большого количества параметров конфигурации через CLI и потеря некоторых деталей
Стратегия заключается в том, чтобы поместить всю конфигурацию в свои собственные файлы, сохранив только выполнение определенного действия для CLI. Сценарий также строго предписывает использование определенной схемы именования папок / файлов, что полезно при просмотре любого отдельного файла.
Используйте / Fork / PR прочь! Надеюсь, это поможет.