Мы находимся в процессе настройки автономного почтового решения в нашей лаборатории, и мы должны быть нашим собственным центром сертификации. Проблема в том, что Thundebird жалуется на то, что наш корневой сертификат ненадежен, хотя мы знаем, что он действителен.
Проблема в том, что Thunderbird поставляется со своими собственными сертификатами, которым он доверяет, и не смотрит на компьютеры доверенные сертификаты, поэтому просто отправить объект групповой политики всем клиентам с корневым сертификатом не получится.
Нам необходимо автоматизировать развертывание импорта корневого сертификата в Thundebird, и у нас серьезные проблемы с тем, чтобы понять, как это сделать.
Autoconfig работает, и thunderbird получает правильную конфигурацию сервера, но ошибка сертификата все еще сохраняется. Единственный известный способ - вручную импортировать сертификат в доверенные сертификаты Thunderbirds.
Есть ли у кого-нибудь здесь предложения, как действовать?
Поскольку Thunderbird основан на той же платформе, что и Firefox, вы должны быть в состоянии использовать те же инструменты, что и Firefox.
Существует несколько вариантов инструментов, которые вы можете использовать, в порядке наиболее простого и сложного:
Thunderbird имеет экспериментальную поддержку автоимпорта сертификатов из хранилища сертификатов ОС.
Вот как включить его вручную:
security.enterprise_roots.enabled
security.enterprise_roots.enabled
, чтобы установить его в true.Вы можете автоматизировать это, установив конфигурационный файл на компьютеры.
Вы можете добавить сертификат в свой профиль, затем скопировать файл cert8.db
вашего профиля в главную программную папку. Любой новый профиль, созданный на компьютере, будет использовать эту версию cert8.db
.
К сожалению, это не поможет ни одному пользователю, который уже открыл Thunderbird, так как его профили уже созданы.
Смотрите https://developer.mozilla.org/en-US/docs/Mozilla/Thunderbird/Thunderbird_Enterprise_Tips#Using_a_private_CA_certificate для более подробной информации.
Как упоминалось и было сказано выше в варианте #1, продукты Mozilla поддерживают развертывание файла конфигурации в C:\Program Files (возможно x86)\Mozilla Thunderbird\defaults\pref\autoconfig.js
.
В этот файл можно поместить скрипт, который добавляет сертификат в хранилище сертификатов. Вот пример:
var cert = "MIIHPT...zTMVD"; // This should be the certificate content with no line breaks at all.
var observer = {
observe: function observe(aSubject, aTopic, aData) {
var certdb = Components.classes["@mozilla.org/security/x509certdb;1"].getService(Components.interfaces.nsIX509CertDB);
var certdb2 = certdb;
try {
certdb2 = Components.classes["@mozilla.org/security/x509certdb;1"].getService(Components.interfaces.nsIX509CertDB2);
} catch (e) {}
certdb2.addCertFromBase64(cert, "C,C,C", "");
}
}
Components.utils.import("resource://gre/modules/Services.jsm");
Services.obs.addObserver(observer, "profile-after-change", false);
certutil
executableМожно создать сценарий входа, который запустит certutil
для добавления сертификата в пользовательский профиль. В этом сообщении форума есть пример скрипта (для Firefox), важная часть которого скопирована ниже (с изменениями для Thunderbird):
strAppDataDir = WshShell.ExpandEnvironmentStrings("%APPDATA%")
strThunderbirdProfilesDir = strAppDataDir & "\Thunderbird\Profiles\"
Set arrThunderbirdProfileList = objFSO.GetFolder(strThunderbirdProfilesDir).SubFolders
For Each ThunderbirdProfile In arrThunderbirdProfileList
'Create a backup of the old cert8.db file. This line is optional.
objFSO.CopyFile ThunderbirdProfile & "\cert8.db" , ThunderbirdProfile & "\cert8.db.old", OverWriteFiles
'Add the local CA certificate to cert8.db and assign appropriate trust levels.
Call WshShell.Run(strCertutilPath & " -A -n " & Chr(34) & strLocalCertificateAuthorityName & Chr(34) & " -i " & strCertificateFilePath & " -t " & Chr(34) & strTrustAttributes & Chr(34) & " -d " & Chr(34) & ThunderbirdProfile & Chr(34), 0, true)
Next
(Замечание: Не путайте это с одноименной программой Microsoft)
CCK2 - сторонней утилитой управления для продуктов Mozilla. Подробнее см. в его документации
.