New on LowEndTalk? Please Register and read our Community Rules.
Setting up Seafile file sharing and sync with an s3 backend and Collabora Office integration
Hi everyone, I wrote a blog post about Seafile. If you are not familiar with it it's a more reliable and faster file syncing/sharing solution than Nextcloud, which you can self host. In the post I describe how to set it up with object storage (so you don't need to worry about how much disk space you need) and Collabora Online, to be able to work on office documents alone or with other people in realtime, in the browser. I had some road bumps to figure out some bits since the documentation isn't great, so I hope it can save somone some time The post: https://vitobotta.com/2023/02/09/self-hosted-seafile-s3-collabora-online/
Comments
Are the plain files in Seafile still hashed/encrypted? In Nextcloud, I'm able to browse through my files via FTP, does Seafile offer the same functionality?
Seafile "Libraries" (Top level directories essentially) can be either encrypted or unencrypted.
If they are encrypted they will be stored as such on disk, and you can access them through web UI (Which weirdly caches the password server-side for a time) or through their desktop or mobile clients (Which properly use e2e encryption)
Unencrypted libraries are stored without encryption on disk. The files are not stored flat and are stored in their own proprietary layout with various chunks. However anyone with access to this can pull all data from unencrypted libraries.
Seafile allows you to access your files remotely over WebDAV in addition to its web and clients. However, encrypted libraries cannot be accessed over WebDAV at all.
Thank you for this. I was trying to setup an instance of Seafile with docker-compose and S3 storage recently but it was a pain and the docs were unhelpful. I will try this again soon and use your blog as a guide, which from a brief skim through seems to be solid.
Nope, it stores files in chunks in a proprietary format. Why is that a problem though if you sync the data to your computers?> @Erisa said:
Yeah the docks are not very good. I spent hours to get everything working correctly but I am happy with the result
I've been using Seafile for years*, never looked back from own/nextcloud! It runs faster, has client side encryption and delta sync features!
@vitobotta which s3 backend are you using for this by the way? idrive, right?
yep idrive. Apart from that brief hiccup last week or so it's super fast. It doesn't even seem like I am using s3 instead of local storage with Seafile.
I love the delta sync! For the Offensive Security certifications I use a VMWare virtual machine with Kali Linux, and thanks to the delta sync with Seafile I can even sync the VM between Macs which is fantastic!
What I like with ownCloud is that they have mobile clients that can upload photos to ownCloud so that I don't have to use Google/Apple.
Otherwise I only use ownCloud for file sync between computers and access over the web interface so Seafile could be a good solution if it supports mobile uploads as well.
Seafile also has a mobile app with automatic camera upload
I like your recent contributions @vitobotta ! Much better than your previous seemingly unending questions like, "what color do you feel like when setting up a server?" type. Keep it up!
I’m wondering, why don’t you use v4 API? Is something broken?
use_v4_signature = false
Idrive already support it
AWS Signature Support
IDrive® e2 supports AWS Signature Version 4 and deprecated Signature Version 2 for S3 client authentication. Access to an IDrive® e2 API is authenticated with the assigned policy controls.
Which threads are you referring to out of curiosity?
With that setting enabled it doesn't work and I get the exception "Invalid date format header, expected to be in ISO8601, RFC1123 or RFC1123Z time format.".
I will contact support and ask.
Got it working! You need to mount a file at /root/.boto with the following content
I will update the post.
I spoke too soon.... with uncached files it doesn't work.
After some digging, seems like the implementation is broken, especially for “s3 compatible”
https://forum.seafile.com/t/aws-v4-signatures-not-working-with-s3-compatible-backend-wasabi/11086/5
The official docs say it is compatible
https://manual.seafile.com/deploy_pro/setup_with_amazon_s3/
Last time I use seafile with s3, I think it is also in Frankfurt, but I don’t remember if I enabled v4 in the configuration or not
Please let us know if you can make it works 😉
Your article is great, thank you 👍
This is great, thanks!