配置seafile
前情
这几天一直在折腾seafile,如果不配置https那早就已经搞定。无论是docker一键安装方法还是普通一键安装方法,都很轻松。为了达到https的目的,用了很多网上的教程,docker的、普通的。都不行。
我只适合一键方式,没办法,咱是小白。在经历了各种报错之后,最终用seafile官方的一键脚本,然后配和我之前发表的acme文章,搞定了https网站。
步骤一:
用这个脚本一键安装seafile,系统必须是Ubuntu 18.04/20.04。之后登录域名就可以打开seafile登录界面,这一步,已经自动配置好 MariaDB, Memcached, WebDAV, Ngnix 和开机自动启动脚本。
1 2 |
wget https://raw.githubusercontent.com/haiwen/seafile-server-installer-cn/master/seafile-8.0_ubuntu bash seafile-8.0_ubuntu 8.0.0 |
步骤二:
使用acme.sh签发证书,域名必须提前解析到服务器IP地址。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
#安装acme.sh curl https://get.acme.sh | sh #切换到Let’s Encrypt的CA ~/.acme.sh/acme.sh --set-default-ca --server letsencrypt #开启acme.sh的自动升级 ~/.acme.sh/acme.sh --upgrade --auto-upgrade #使用acme.sh签发证书,指定Nginx对应插件 ~/.acme.sh/acme.sh --issue -d 域名 --nginx #证书位于~/.acme.sh目录,不建议直接使用,创建 /etc/nginx/ssl 目录存放证书。 mkdir -p /etc/nginx/ssl ~/.acme.sh/acme.sh --install-cert -d 域名 \ --key-file /etc/nginx/ssl/域名.key \ --fullchain-file /etc/nginx/ssl/域名.crt \ --reloadcmd "service nginx force-reload" |
步骤三:
编辑/etc/nginx/sites-available/seafile.conf
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
server { listen 80; server_name 域名; rewrite ^(.*) https://$server_name$1 permanent; } server { listen 443 ssl; server_name 域名; charset utf-8; ssl_certificate /etc/nginx/ssl/域名.crt; ssl_certificate_key /etc/nginx/ssl/域名.key; ssl_protocols TLSv1.2 TLSv1.3; # TLSv1.3需要nginx 1.13.0以上版本 ssl_ciphers ECDHE-RSA-AES256-GCM-SHA512:DHE-RSA-AES256-GCM-SHA512:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384; ssl_ecdh_curve secp384r1; ssl_prefer_server_ciphers on; ssl_session_cache shared:SSL:10m; ssl_session_timeout 10m; ssl_session_tickets off; keepalive_timeout 70; |
自动安装脚本会在系统中安装开机自动启动脚本。也可以使用命令关闭/启动 Seafile 服务:
1 2 |
service seafile-server stop service seafile-server start |
结语:
这样就可以了。不过想升级到seafile服务器9.0版本,看了官方手册,我感觉大概率不会成功,指定各种报错,我只适合一键脚本。没办法咱是小白。
THE END