doc-locale/fr-fr/administration/smime_signing_email.md
{{< details >}}
{{< /details >}}
Les e-mails de notification envoyés par GitLab peuvent être signés avec S/MIME pour une sécurité améliorée.
Sachez que les certificats S/MIME et les certificats TLS/SSL ne sont pas identiques et sont utilisés à des fins différentes : TLS crée un canal sécurisé, tandis que S/MIME signe et/ou chiffre le message lui-même
Ce paramètre doit être explicitement activé et une seule paire de fichiers de clé et de certificat doit être fournie :
Optionnellement, vous pouvez également fournir un ensemble de certificats CA (encodés en PEM) à inclure dans chaque signature. Il s'agit généralement d'une CA intermédiaire.
[!warning] Soyez attentif aux niveaux d'accès de vos clés privées et à leur visibilité par des tiers.
Pour les installations avec le package Linux :
Modifiez /etc/gitlab/gitlab.rb et adaptez les chemins de fichiers :
gitlab_rails['gitlab_email_smime_enabled'] = true
gitlab_rails['gitlab_email_smime_key_file'] = '/etc/gitlab/ssl/gitlab_smime.key'
gitlab_rails['gitlab_email_smime_cert_file'] = '/etc/gitlab/ssl/gitlab_smime.crt'
# Optional
gitlab_rails['gitlab_email_smime_ca_certs_file'] = '/etc/gitlab/ssl/gitlab_smime_cas.crt'
Enregistrez le fichier et reconfigurez GitLab pour que les modifications prennent effet.
La clé doit être lisible par l'utilisateur système GitLab (git par défaut).
Pour les installations compilées à partir des sources :
Modifiez config/gitlab.yml :
email_smime:
# Uncomment and set to true if you need to enable email S/MIME signing (default: false)
enabled: true
# S/MIME private key file in PEM format, unencrypted
# Default is '.gitlab_smime_key' relative to Rails.root (the root of the GitLab app).
key_file: /etc/pki/smime/private/gitlab.key
# S/MIME public certificate key in PEM format, will be attached to signed messages
# Default is '.gitlab_smime_cert' relative to Rails.root (the root of the GitLab app).
cert_file: /etc/pki/smime/certs/gitlab.crt
# S/MIME extra CA public certificates in PEM format, will be attached to signed messages
# Optional
ca_certs_file: /etc/pki/smime/certs/gitlab_cas.crt
Enregistrez le fichier et redémarrez GitLab pour que les modifications prennent effet.
La clé doit être lisible par l'utilisateur système GitLab (git par défaut).
En général, les certificats S/MIME sont gérés au format binaire Public Key Cryptography Standards (PKCS) #12 (extensions .pfx ou .p12), qui contiennent les éléments suivants dans un seul fichier chiffré :
Pour exporter les fichiers requis en encodage PEM à partir du fichier PKCS #12, la commande openssl peut être utilisée :
#-- Extract private key in PEM encoding (no password, unencrypted)
openssl pkcs12 -in gitlab.p12 -nocerts -nodes -out gitlab.key
#-- Extract certificates in PEM encoding (full certs chain including CA)
openssl pkcs12 -in gitlab.p12 -nokeys -out gitlab.crt