This article will demonstrate how to install Seafile CE on CentOS VPS.
Seafile is known for its reliability, high performance, and efficient handling of large files and libraries. It competes with other file sync and share services like Dropbox, Google Drive, and Nextcloud but stands out for its focus on file syncing and collaboration features.
Key Features of Seafile CE include:
Seafile CE is particularly appealing to businesses and organizations looking for a private and secure way to store, share, and collaborate on files. Its open-source nature allows for customization and integration with existing IT infrastructure, and being self-hosted, it gives organizations full control over their data and privacy.
To install Seafile CE on CentOS VPS, the following conditions must be met:
To install Seafile CE on CentOS VPS, follow the steps below:
hostnamectl set-hostname hostname.yourdomain.com
yum check-update yum update -y
nano /etc/yum.repos.d/MariaDB.repo
# MariaDB 10.4 CentOS repository list # http://downloads.mariadb.org/mariadb/repositories/ [mariadb] name = MariaDB baseurl = http://yum.mariadb.org/10.4/centos8-amd64 gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB gpgcheck=1
cd /root wget --no-check-certificate https://raw.githubusercontent.com/haiwen/seafile-server-installer/master/seafile-7.1_centos bash seafile-7.1_centos 7.1.0
This script installs the community edition of the Seafile Server on a Centos 8 64bit - Newest Seafile server version, MariaDB, Memcached, NGINX - ----------------------------------------------------------------- This installer is meant to run on a freshly installed machine only. If you run it on a production server things can and probably will go terribly wrong and you will lose valuable data! For questions or suggestions please contact us at support@seafile.com ----------------------------------------------------------------- Possible options: 1 = Seafile Community (Free) Edition (CE) 2 = Seafile Professional Edition (PRO) 1) CE 2) PRO 3) ABORT Which Seafile version would you like to install? 1
Your Seafile server is installed ----------------------------------------------------------------- Server Address: http://IP_ADDRESS_OR_DOMAIN Seafile Admin: SEAFILE_ADMIN_EMAIL Admin Password: SEAFILE_ADMIN_PASSWORD Seafile Data Dir: /opt/seafile/seafile-data Seafile DB Credentials: Check /opt/seafile.my.cnf Root DB Credentials: Check /root/.my.cnf Switch to Seafile system account with: su - seafile -s /bin/bash This report is also saved to /opt/seafile/aio_seafile-server.log Next you should manually complete the following steps ----------------------------------------------------------------- 1) Log in to Seafile and configure your server domain via the system admin area if applicable. 2) If this server is behind a firewall, you need to ensure that tcp port 80 is open. 3) Seahub tries to send emails via the local server. Install and configure Postfix for this to work or check https://manual.seafile.com/config/sending_email.html for instructions on how to use an existing email account via SMTP. Optional steps ----------------------------------------------------------------- 1) Check seahub_settings.py and customize it to fit your needs. Consult http://manual.seafile.com/config/seahub_settings_py.html for possible switches. 2) Setup NGINX with official SSL certificate, we suggest you use Let’s Encrypt. Check https://manual.seafile.com/deploy/https_with_nginx.html 3) Secure server with iptables based firewall. For instance: UFW or shorewall 4) Harden system with port knocking, fail2ban, etc. 5) Enable unattended installation of security updates. Check https://wiki.Ubuntu.org/UnattendedUpgrades for details. 6) Implement a backup routine for your Seafile server. 7) Update NGINX worker processes to reflect the number of CPU cores. Seafile support options ----------------------------------------------------------------- For free community support visit: https://bbs.seafile.com For paid commercial support visit: https://seafile.com
To secure Seafile CE on CentOS VPS, we will add Nginx security headers and setup LetsEncrypt SSL installation and renewals. Follow the steps below to proceed:
nano /etc/nginx/conf.d/seafile.conf
server { server_name hostname.domain.com; add_header X-XSS-Protection "1; mode=block" always; add_header X-Content-Type-Options "nosniff" always; add_header Strict-Transport-Security "max-age=31536000; includeSubDomains; preload;" always; add_header X-Frame-Options "SAMEORIGIN" always; add_header Referrer-Policy same-origin always; add_header X-Permitted-Cross-Domain-Policies master-only;
nginx -s reload
wget https://dl.eff.org/certbot-auto sudo mv certbot-auto /usr/local/bin/certbot-auto sudo chown root /usr/local/bin/certbot-auto sudo chmod 0755 /usr/local/bin/certbot-auto
sudo /usr/local/bin/certbot-auto --nginx
echo "0 0,12 * * * root python3 -c 'import random; import time; time.sleep(random.random() * 3600)' && /usr/local/bin/certbot-auto renew -q" | sudo tee -a /etc/crontab > /dev/null
To access the Seafile CE dashboard, access your server’s hostname or IP address in your browser.
Data redundancy is vital if you operate an online business. Without it, the risk of permanent data loss increases, which… Read More
Users now have additional Operating System choices to use with KVM VPS Servers. openSUSE 15.1 has just been added to… Read More
This article will provide a guide demonstrating how to backup WordPress Site to Microsoft OneDrive. This feature is available for… Read More
Setting up a full-stack mail server using docker-mailserver on a Rocky Linux 9 VPS involves several steps. This guide will… Read More
We are happy to to announce the arrival of CentOS Stream 9. Highly-anticipated CentOS Stream 9.x brings with it numerous performance,… Read More
How to Setup SSH Login With Public Key Authentication If you're using SSH to connect to remote servers, public key… Read More
View Comments