seafile - 搭建高安全性的私有云存储
FTP行将就木,互联网云盘也不再可靠。 最近比较了nextCloud和seafile,最后决定使用seafile搭建了一个私有云存储服务器。 随手记录,以备不时之需。
seafile - 搭建高安全性的私有云存储
1 Seafile
1.1 特点
云存储的共有功能,如:多设备访问,数据同步备份等,就不再赘述。
我看中Seafile的两大特点:
- 主要由C语言编写,预编译。实时性能较owncloud, nextcloud这些用PHP编写的会更好。
- 服务器端的切片及加密存储,而owncloud和nextcloud,是原文件原路径存储在服务器端。
1.2 链接
官方网站:
在线体验:
1.3 文档
Seafile服务器的技术文档整理齐全,从初步的配置安装,到进阶的后期管理,如:开机启动,应有尽有,参考官方文档即可。
基本的步骤完成后,即可访问seahub页面(8000端口)
2 基于Nginx部署新站点
原有的8000端口访问是直接访问服务器的8000端口,而不是正常的HTTP/HTTPS(80/443端口)访问方式。
如果要实现更加简单且自然的访问方式,需要通过网站服务器,我使用了Nginx,通过fastcgi转发,将80/443端口的HTTP/HTTPS请求进行过滤:
- seahub页面请求通过fastcgi转发至seahub服务进程所监听的8000端口;
- seafile文件传输请求代理至seafile服务进程所监听的8082端口;
/media
目录下的页面资源文件请求定位至seafile-server-latest/seahub
即可;
这部分官方文档有较为规范的配置Demo,稍作修改进行适配即可。
3 HTTPS - 传输加密
原来的TrustAsia RSA
DV证书只支持基本域名,对拓展域名无能为力,无法有效用在自定义子域名seafile.heary.cn
上,这里我选用了Let's
Encrypt签发新证书。
3.1 Let's Encrypt
官方网站
3.2 Cerbot
Certbot是用于Linux Shell/Terminal环境下的密钥及证书签发工具。
Nginx CentOS7环境下的Certbot的官方操作文档如下:
3.3 参考
值得参考的一篇详细指南:
生成安全可靠的网站服务器conf,Mozilla提供:
通过查验及模拟攻击评估站点SSL的安全性:
3.4 成果
边做边琢磨,弄了一下午,遇到一系列的奇奇怪怪的问题,不过好在都解决了。
根据新学到的方法,又顺手改造了下主站点的服务器配置文件。
经测试,都从B-达到了A+级别的高安全评级。