Я перемещаю сервер mongodb в продакшн на моей машине Ubuntu. Я получил сертификат ssl, подписанный третьей стороной, и установил его на сервере. Клиенты могут подключаться к нему с помощью CA своей системы и проверять подлинность сервера.
Однако на сайте mongodb упоминаются клиентские сертификаты. Могу ли я сгенерировать их, поскольку CA является третьей стороной? Я попытался использовать openssl для их генерации, передав сертификат и ключ моего сервера, но он также запрашивает , которого server.srl
у меня нет. Я не уверен, что делать, чтобы сгенерировать их, или нужны ли они мне. Я предполагаю, что они будут дополнительным уровнем безопасности, поскольку я смогу проверить личность клиента в дополнение к тому, как он проверит мою.
Спасибо!
решение1
«Могу ли я их сгенерировать, если CA — это третья сторона?» Нет!
Для того, чтобы сгенерировать сертификат (т.е. подписать запрос на сертификат) вам нужен закрытый ключ подписывающего сертификата. И этот ключ является закрытым, (т.е. секретным), как следует из названия.
Вы можете попросить третью сторону предоставить вам другой сертификат. Это будет тогдаклиентсертификат. Однако, возможно, эта компания предлагает толькосерверсертификаты.
Вы можете создать сертификат CA и клиентский сертификат самостоятельно. В конфигурации MongoDB вы можете указать CA отдельно для клиентских и серверных сертификатов.
В MongoDB вы можете использовать клиентский сертификат «просто» как сертификат или можете использовать его для аутентификации вместо имени пользователя/пароля.
Посмотри наhttps://stackoverflow.com/questions/41302023/how-security-in-mongodb-works-using-x-509-cert/75043317#75043317чтобы получить общее представление.