現在、ラボでセルフホストメールソリューションを設定中であり、独自のCAである必要があります。私たちが抱えている問題は、ルート証明書が有効であることがわかっていても、ルート証明書が信頼できないとThundebirdが不平を言っていることです。
問題は、Thunderbirdには信頼できる独自の証明書が付属しており、コンピューターの信頼できる証明書を参照しないため、ルート証明書を持つすべてのクライアントにGPOをプッシュするだけでは機能しないことです。
ルート証明書をThundebirdにインポートする展開を自動化する必要があり、その方法を理解するのに深刻な問題があります。
Autoconfigは機能しており、Thunderbirdは正しいサーバー構成を取得していますが、証明書エラーは引き続き発生します。唯一の既知の方法は、証明書をThunderbirdsの信頼できる証明書に手動でインポートすることです。
ここの誰かがどのように進めるかについての提案がありますか?
ThunderbirdはFirefoxと同じプラットフォームに基づいているため、Firefoxが使用するのと同じツールを使用できるはずです。
使用できるツールには、最も単純なものから最も複雑なものの順にいくつかのオプションがあります。
Thunderbirdは、OS証明書ストアからの証明書の自動インポートを実験的にサポートしています。
手動で有効にする方法は次のとおりです。
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 (possibly 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
実行可能ファイル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製品用のサードパーティの管理ツールです。詳細については、そのドキュメントを参照してください。