Docker Mailcow:在使用 nginx 作为反向代理的设置上更改域时如何更新证书?

Docker Mailcow:在使用 nginx 作为反向代理的设置上更改域时如何更新证书?

我已经设置了mailcow-dockerized解决方案到我的服务器,我想将我的邮件服务器的域从 mail.example.ml 更改为 mail.example。传统知识但当我这样做时,我的浏览器在我访问它时抱怨证书错误http://mail.example.tk在上面。

此外,管理应用程序还在作为反向代理运行的 nginx 后面运行,并采用以下更新的 vhost 配置:

server {
   listen 80;
   server_name mail.thundermail.tk;

   location /.well-known {
        proxy_pass http://127.0.0.1:8080/.well-known ;
        proxy_set_header Host $http_host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
        client_max_body_size 100m;

   }

   location / {
        rewrite ^(.*) https://$server_name$1 permanent;
   }

}

server {
 listen 443 ssl;
 server_name mail.thundermail.tk;

 ssl_certificate     /opt/docker-mailcow/data/assets/ssl/cert.pem;
 ssl_certificate_key /opt/docker-mailcow/data/assets/ssl/key.pem;
 ssl_protocols       TLSv1 TLSv1.1 TLSv1.2;
 ssl_ciphers         HIGH:!aNULL:!MD5;


 location / {
        proxy_pass http://127.0.0.1:8080/;
        proxy_set_header Host $http_host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
        client_max_body_size 100m;
 }
}

请记住,mailcow:dockerized 解决方案正在opt/docker-mailcow/data/assets/ssl路径中生成证书。

你们知道如何生成新的证书吗?

答案1

请遵循以下步骤:

1 cd ^path_where_mailcow_dockerized_is_installed^ 2将以开头的mailcow.conf行更改为MAILCOW_HOSTNAME

MAILCOW_HOSTNAME=mail.example.tk

3 运行:docker-compose down && docker-compose up -d

4 重新启动 nginx。(在 debian 或基于 debian 的 Linux 发行版中,可以通过命令完成此操作sudo service nginx restart

相关内容