我刚刚在 Docker 中运行 SeaFile,扫描公共接口后,我可以看到 SSLv3 和 TLS1.0 已启用。我想禁用它们,但我不知道在这个设置中应该在哪里配置它们。
我启动了容器
docker run -d --name seafile \
-e SEAFILE_SERVER_LETSENCRYPT=true \
-e SEAFILE_SERVER_HOSTNAME=seafile.example.com \
-e [email protected] \
-e SEAFILE_ADMIN_PASSWORD=a_very_secret_password \
-v /opt/seafile-data:/shared \
-p 8080:80 \
-p 8443:443 \
seafileltd/seafile:latest
它正在运行 nginx 作为 Web 服务器,我在 docker 合并文件夹中有 nginx 配置,实际上是 /etc/nginx,但我找不到任何地方用于配置可用密码的选项。
grep -i -r "ssl_protocols" /etc/nginx/
返回零结果,经过对谷歌搜索结果和一些文档的大量搜索后,我仍没有进一步的进展。
有什么想法吗?
答案1
在镜像中的 seafile.nginx.conf.template 文件中添加以下几行并重新启动 seafile
添加
ssl_protocols TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
ssl_ciphers
到conf 文件中该行之前的服务器块。
您可以使用以下方式找到 conf 模板的路径
/var/lib/docker/>find ./ | grep seafile.nginx.conf.template