Ana içeriğe geç

Ubuntu 20.04’te Seafile Kurulumu: Kendi Bulut Depolama Platformunuz

Seafile, dosyalarınızı kendi sunucunuzda barındırmanızı sağlayan açık kaynaklı bir dosya senkronizasyon ve paylaşım platformudur.
Bu rehberde Seafile’ı Ubuntu 20.04 üzerinde Apache + MariaDB kullanarak güvenli şekilde kuracağız.


Bu Rehberde Ne Öğreneceksiniz?​

  • Seafile bileşenleri için veritabanı oluşturmayı
  • Apache’yi ters proxy olarak yapılandırmayı
  • HTTPS ile güvenli erişim sağlamayı
  • Seafile servislerini otomatik başlatmayı
  • Dosya senkronizasyonunu test etmeyi

Ön Koşullar​

  • Ubuntu 20.04 (en az 2 GB RAM)
  • sudo yetkili kullanıcı
  • Kurulu MariaDB
  • Kurulu Apache + Virtual Host
  • Let’s Encrypt ile SSL sertifikası
  • Alan adı (rabisu.cloud örneklenmiştir)

1. MariaDB Veritabanlarını Oluşturma​

Seafile üç ayrı veritabanı kullanır:

  • ccnetdb
  • seafiledb
  • seahubdb

1. MariaDB’ye bağlanın:

sudo mariadb
  • Bu komut veritabanı yönetim konsolunu açar.

2. Kullanıcı oluşturun:


CREATE USER 'rabisu_user'@'localhost' IDENTIFIED BY 'GUCLU_PAROLA';

3. Veritabanlarını oluşturun:


CREATE DATABASE `ccnetdb` CHARACTER SET = 'utf8';
CREATE DATABASE `seafiledb` CHARACTER SET = 'utf8';
CREATE DATABASE `seahubdb` CHARACTER SET = 'utf8';

4. Yetkileri atayın:


GRANT ALL PRIVILEGES ON `ccnetdb`.* TO 'rabisu_user'@'localhost';
GRANT ALL PRIVILEGES ON `seafiledb`.* TO 'rabisu_user'@'localhost';
GRANT ALL PRIVILEGES ON `seahubdb`.* TO 'rabisu_user'@'localhost';

Çıkış yapın:


exit

2. Gerekli Bağımlılıkları Yükleme​

1. Python paket yöneticisini kurun:


sudo apt install -y python3-pip

Bu komut Python paket yönetimini etkinleştirir.

2. Seafile için gerekli Python modüllerini kurun:


pip3 install Pillow captcha django-simple-captcha

Bu modüller görsel işleme ve güvenlik doğrulaması için gereklidir.


3. Seafile Paketini İndirme​

1. Kurulum dizinini oluşturun:


mkdir ~/seafile_home && cd ~/seafile_home

2. Seafile paketini indirin:


wget https://download.seadrive.org/seafile-server_7.1.4_x86-64.tar.gz

3. Arşivi açın:


tar -zxvf seafile-server_7.1.4_x86-64.tar.gz

4. Kurulum dizinine girin:


cd seafile-server-7.1.4

4. Seafile Yapılandırması​

1. Yapılandırma betiğini çalıştırın:


bash setup-seafile-mysql.sh

2. Önerilen yanıtlar:

  1. Server name: Seafile

  2. Domain: rabisu.cloud

  3. Fileserver port: 8082

  4. Database yöntemi: Mevcut veritabanları

  5. DB User: rabisu_user

  • Kurulum sonunda yapılandırma tamamlanır.

5. Apache Reverse Proxy Ayarları​

1. Proxy modülünü etkinleştirin:


sudo a2enmod proxy_http

2. SSL Virtual Host dosyanızı açın:


sudo nano /etc/apache2/sites-enabled/rabisu.cloud-le-ssl.conf

3. Aşağıdaki yapılandırmayı ekleyin:


Alias /media /home/sammy/seafile_home/seafile-server-latest/seahub/media

<Location /media>
Require all granted
</Location>

ProxyPass /seafhttp http://127.0.0.1:8082
ProxyPassReverse /seafhttp http://127.0.0.1:8082

RewriteEngine On
RewriteRule ^/seafhttp - [QSA,L]

SetEnvIf Authorization "(.*)" HTTP_AUTHORIZATION=$1
ProxyPass / http://127.0.0.1:8000/
ProxyPassReverse / http://127.0.0.1:8000/

4. Yapılandırmayı test edin:


sudo apache2ctl configtest

5. Apache’yi yeniden başlatın:


sudo systemctl restart apache2

6. Seafile HTTPS Ayarları​

1. ccnet.conf dosyasını düzenleyin:


nano ~/seafile_home/conf/ccnet.conf

SERVICE_URL = https://rabisu.cloud

2. seahub_settings.py dosyasını açın:


nano ~/seafile_home/conf/seahub_settings.py

FILE_SERVER_ROOT = 'https://rabisu.cloud/seafhttp'

7. Servisleri Başlatma​


./seafile.sh start
./seahub.sh start
  • İlk çalıştırmada admin hesabı oluşturulur.

1. Tarayıcıdan giriş yapın:


https://rabisu.cloud

8. systemd ile Otomatik Başlatma​

1. Seafile servisini oluşturun:


sudo nano /etc/systemd/system/seafile.service

[Unit]
Description=Seafile
After=network.target mariadb.service

[Service]
Type=forking
ExecStart=/home/sammy/seafile_home/seafile-server-latest/seafile.sh start
ExecStop=/home/sammy/seafile_home/seafile-server-latest/seafile.sh stop
User=sammy
Group=sammy

[Install]
WantedBy=multi-user.target
  • Etkinleştirin:

sudo systemctl enable seafile

9. Dosya Senkronizasyonunu Test Etme​

  • Masaüstü veya mobil Seafile istemcisini kurun
  1. Sunucu adresi: https://rabisu.cloud

  2. “My Library” klasörünü senkronize edin

  3. Dosya ekleyip web arayüzünden doğrulayın

Sıkça Sorulan Sorular (SSS)​

1. Seafile neden kendi sunucumda barındırılmalı? Veri güvenliği ve tam kontrol sağlar.

2. HTTPS zorunlu mu? Evet, güvenlik için şarttır.

3. Mobil destek var mı? Android ve iOS istemcileri mevcuttur.

Sonuç​

Bu rehberle Ubuntu 20.04 üzerinde kurumsal seviyede Seafile kurulumunu tamamladınız. Artık dosyalarınızı güvenle senkronize edebilirsiniz.

👉 Rabisu Bulut üzerinde hemen kullanmaya başlayabilirsiniz.