Значится, так. Сделал самоподписанный сертификат, назвал его CA.
Следом делаю ещё ключи и выпускаю сертификаты на основе CA.
Для почты и https всё работает, подсовываю почтовому клиенту или браузеру корневой сертификат CA и все выпущенные на его основе попадают в доверенные, ругани нет, трафик шифруется.
А с ejabberd'ом никак не получается. В конфиге сервера
{5222, ejabberd_c2s, [
{certfile, "/etc/jabber/jabber.cer"}, starttls,
{access, c2s},
{shaper, c2s_shaper},
{max_stanza_size, 65536}
]},
{5223, ejabberd_c2s, [
{access, c2s},
{shaper, c2s_shaper},
{certfile, "/etc/jabber/jabber.cer"}, tls,
{max_stanza_size, 65536}
]},
В настройках того же mcabber'а прописываю путь к корневому сертификату
set ssl_cafile = /usr/share/ca-certificates/ca.cer
set ssl_capath = /usr/share/ca-certificates
и получаю «Certificate is not trusted!», что на 5222-порт, что и на старый ssl. Тоже самое и в других клиентах, если ставлю игнорировать ошибки ssl, то всё работает (tls-соединение), а если убираю игнорирование ошибок, то идёт ругань на сертификат.
Что не так-то?