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.