
Я знаю, что это уже спрашивали, но несмотря на многие часы исследований я не смог найти работающего решения. Я пытаюсь установить свой корневой сертификат на своем сервере, чтобы внутренние службы могли связываться друг с другом с помощью SSL.
Что следует знать о новом корневом центре сертификации:
- Apache httpd и PHP
- OpenLDAP-клиент
- Node.js
Для Apache мне нужно, чтобы PHP-приложение знало о корневом сертификате, поэтому, если сайт подключается к другому сайту SSL (подписанному тем же CA), он работает нормально и не жалуется на самоподписанный сертификат.
Для OpenLDAP, я думаю, это то же самое, что и PHP, модуль, который он использует, довольно старый, это Net_LDAP2, установленный с PEAR. Я пробовал редактировать локальную конфигурацию openldap, но похоже, что система его не использует.
Последний Node.js, который я использую для parsoid. Серверы node.js должны доверять CA, чтобы создать хорошее SSL-соединение.
Я попытался добавить сертификат в /etc/pki/tls/certs/ca-bundle.crt, но безуспешно.
Хотя httpd не видит корневой центр сертификации, мне удалось заставить другие службы работать с ним, например, tomcat и 389.
Спасибо за Вашу поддержку.
решение1
На моей машине с RHEL 6 man 8 update-ca-trust
страница руководства содержит довольно подробное объяснение того, как можно/нужно управлять общесистемными сертификатами CA и связанными с ними доверительными отношениями.
Чаще всего конфигурация зависит от конкретного приложения, как показывают комментарии выше.
решение2
Я написал несколько командных строк, чтобы они были более понятны новичкам в SSL:
Перейдите в папку PKI.
$ cd /etc/pki/tls/certs/
ПРОВЕРКА (жестких) ссылок и резервных сертификатов
$ cp ca-bundle.crt /etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem.bak
$ cp ca-bundle.trust.crt /etc/pki/ca-trust/extracted/openssl/ca-bundle.trust.crt.bak
Загрузить цепочку CA в CentOS
$ scp <cachain> root@sydapp28:/tmp
Подключитесь к CentOS через SSH (Putty?) или локально
$ ssh -C root@sydapp28
ЕСЛИ PKCS12 CAChain: «Преобразуйте сертификат внутренней цепочки CA в формат PEM и удалите заголовки»:
$ cd /tmp ; openssl pkcs12 -nodes -in <cachain.pfx.p12> | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > cachain.pem
Добавьте свой внутренний CA в CentOS
$ cat /tmp/cachain.pem >> /etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem
$ cat /tmp/cachain.pem >> /etc/pki/ca-trust/extracted/pem/ca-bundle.trust.crt
$ reboot