GNU/Linux >> Belajar Linux >  >> Linux

Cara Menginstal Seafile untuk Menyinkronkan dan Berbagi File di CentOS 8

Seafile adalah solusi berbagi file gratis, open-source, dan dihosting sendiri untuk Linux. Ini adalah perangkat lunak hosting file lintas platform yang dapat digunakan untuk menyimpan file di server pusat dan menyinkronkannya dengan komputer pribadi atau perangkat seluler Anda. Seafile ditulis dengan kerangka kerja Python Django dan secara fungsional sangat mirip dengan Dropbox dan Google Drive. Ini memiliki banyak fitur termasuk enkripsi file, kontrol versi, otentikasi dua faktor, pengeditan online, penguncian file, dan banyak lagi.

Dalam tutorial ini, kami akan menunjukkan cara menginstal Seafile dengan Nginx sebagai proxy terbalik di CentOS 8.

Prasyarat

  • VPS CentOS 8 baru di Platform Cloud Atlantic.Net
  • Nama domain yang valid menunjuk ke IP server Anda
  • Kata sandi root dikonfigurasi di server Anda

Langkah 1 – Buat Server Cloud Atlantic.Net

Pertama, masuk ke Server Cloud Atlantic.Net Anda. Buat server baru, pilih CentOS 8 sebagai sistem operasi dengan setidaknya 2 GB RAM. Hubungkan ke Server Cloud Anda melalui SSH dan masuk menggunakan kredensial yang disorot di bagian atas halaman.

Setelah Anda masuk ke server CentOS 8 Anda, jalankan perintah berikut untuk memperbarui sistem dasar Anda dengan paket terbaru yang tersedia.

yum update -y

Langkah 2 – Instal Dependensi yang Diperlukan

Pertama, Anda perlu menginstal repositori EPEL di sistem Anda. Anda dapat menginstalnya dengan perintah berikut:

yum install epel-release -y

Setelah repositori EPEL diinstal, instal dependensi lain dengan perintah berikut:

yum install python3 python3-devel python3-setuptools gcc gcc-c++ freetype-devel python3-pip python3-ldap memcached java-1.8.0-openjdk libmemcached libreoffice-headless libreoffice-pyuno libffi-devel pwgen curl tar -y 

Setelah semua dependensi terinstal, gunakan perintah pip untuk menginstal dependensi lainnya:

pip3 install Pillow pylibmc captcha jinja2 sqlalchemy psd-tools django-pylibmc django-simple-captcha

Setelah semua paket diinstal, aktifkan layanan Memcached untuk memulai saat reboot sistem:

systemctl aktifkan --sekarang memcached

Langkah 3 – Instal Nginx dan MariaDB

Selanjutnya, Anda perlu menginstal server Nginx dan MariaDB di sistem Anda. Anda dapat menginstal kedua paket dengan perintah berikut:

yum install nginx mariadb-server -y

Setelah terinstal, mulai layanan Nginx dan MariaDB dan aktifkan mereka untuk memulai saat reboot sistem:

systemctl start nginxsystemctl start mariadbsystemctl aktifkan nginxsystemctl aktifkan mariadb

Langkah 4 – Buat Database untuk Seafile

Pertama, Anda perlu mengatur kata sandi root MariaDB dan mengamankan instalasi MariaDB. Anda dapat melakukannya menggunakan skrip berikut:

mysql_secure_installation

Jawab semua pertanyaan seperti yang ditunjukkan di bawah ini:

Masukkan kata sandi saat ini untuk root (masukkan untuk tidak ada):Atur kata sandi root? [Y/n] YKata sandi baru:Masukkan kembali kata sandi baru:Hapus pengguna anonim? [Y/n] YLarang login root dari jarak jauh? [Y/n] YHapus database pengujian dan akses ke sana? [Y/n] YMuat ulang tabel hak istimewa sekarang? [Y/n] Y

Selanjutnya, masuk ke shell MariaDB dengan perintah berikut:

mysql -u root -p

Setelah login, buat database untuk Seafile dengan perintah berikut:

create database `ccnetdb` character set ='utf8';create database `seafiledb` character set ='utf8';create database `seahubdb` character set ='utf8';

Selanjutnya, buat pengguna untuk Seafile dengan perintah berikut:

buat pengguna 'seafile'@'localhost' yang diidentifikasi dengan 'yourpassword';

Selanjutnya, berikan semua hak istimewa ke ccnetdb, seafiledb dan seahubdb dengan perintah berikut:

BERIKAN SEMUA HAK ISTIMEWA PADA `ccnetdb`.* ke `seafile`@localhost;BERIKAN SEMUA HAK ISTIMEWA PADA `seafiledb`.* ke `seafile`@localhost;BERIKAN SEMUA HAK ISTIMEWA PADA `seahubdb`.* ke `hostseafile`@local;

Selanjutnya, flush hak istimewa dan keluar dari shell MariaDB dengan perintah berikut:

HAK ISTIMEWA;KELUAR;

Langkah 5 – Instal Seafile

Pertama, unduh Seafile versi terbaru dengan perintah berikut:

wget https://s3.eu-central-1.amazonaws.com/download.seadrive.org/seafile-server_7.15_x86-64.tar.gz

Setelah diunduh, ekstrak file yang diunduh dengan perintah berikut:

tar -xvzf seafile-server_7.1.5_x86-64.tar.gz

Selanjutnya pindahkan direktori hasil ekstrak ke /opt dengan perintah berikut:

mv seafile-server-* /opt/seafilecd /opt/seafile

Selanjutnya, ubah direktori ke /opt/seafile dan atur server Seafile dengan menjalankan skrip berikut:

./setup-seafile-mysql.sh

Anda akan diminta untuk memberikan nama server, nama domain yang valid, dan detail database seperti yang ditunjukkan di bawah ini.

Memeriksa python pada mesin ini ...-------------------------------------------------- -------------------------- Skrip ini akan memandu Anda untuk men-setup server seafile Anda menggunakan MySQL. Pastikan Anda telah membaca manual server seafile di https:/ /download.seafile.com/published/seafile-manual/home.mdTekan ENTER untuk melanjutkan-------------------- ---------------------------------- Apa nama servernya? Ini akan ditampilkan pada klien.3 - 15 huruf atau angka[ nama server ] seafileApa ip atau domain server?Misalnya:www.perusahaansaya.com, 192.168.1.101[ Ip atau domain server ini ] seafile.example .comPort mana yang ingin Anda gunakan untuk file server seafile?[ default "8082" ]------------------------------- ------------------------Silakan pilih cara untuk menginisialisasi database seafile:----------------- ---------------------------------------[1] Buat database ccnet/seafile/seahub baru[ 2] Gunakan database ccnet/seafile/seahub yang ada[ 1 atau 2 ] 2Apa host server mysql?[ default "localhost" ]Apa port server mysql?[ default "3306" ]Pengguna mysql mana yang digunakan untuk seafile ?[ pengguna mysql untuk seafile ] seafileApa kata sandi untuk "seafile" pengguna mysql?[ kata sandi untuk seafile ]memverifikasi kata sandi pengguna seafile ... doneMasukkan nama database yang ada untuk ccnet:[ ccnet database ] ccnetdbmemverifikasi akses pengguna "seafile" ke database ccnetdb ... doneMasukkan data yang adab ase name for seafile:[ seafile database ] seafiledbverifikasi pengguna "seafile" akses ke database seafiledb ... doneMasukkan nama database yang ada untuk seahub:[ seahub database ] seahubdbverifikasi pengguna "seafile" akses ke database seahubdb ... done

Berikan setiap detail dengan hati-hati. Setelah instalasi selesai, Anda akan melihat output berikut:

---------------------------------Ini adalah konfigurasi Anda---------- -----------------------nama server:ip/domain seafileserver:seafile.example.comseafile data dir:/opt/seafile-datafileserver port:8082database:use database ccnet yang ada:database ccnetdbseafile:database seafiledbseahub:seahubdbdatabase pengguna:seafile---------------------------------Tekan ENTER untuk melanjutkan , atau Ctrl-C untuk membatalkan -------------------------------------------------- ----------------------Konfigurasi server seafile Anda telah berhasil diselesaikan.------------------- ---------------------------------------------- Jalankan server seafile:./seafile.sh { mulai | berhenti | restart }jalankan server seahub:./seahub.sh { start  | berhenti | mulai ulang  }-------------------------------------------------------- --------------------Jika Anda berada di belakang firewall, ingatlah untuk mengizinkan input/output port tcp ini:------------ -------------------------------------------------- ---port of seafile fileserver:8082port of seahub:8000Ketika terjadi masalah, lihat https://download.seafile.com/published/seafile-manual/home.md untuk informasi.

Langkah 6 – Siapkan Akun Admin

Selanjutnya, Anda perlu mengatur akun admin untuk mengakses Seafile. Pertama, jalankan layanan Seafile dengan perintah berikut:

/opt/seafile/seafile.sh start

Selanjutnya, mulai layanan Seahub untuk mengatur kata sandi admin:

/opt/seafile/seahub.sh start

Anda akan diminta untuk mengatur nama pengguna dan kata sandi admin seperti yang ditunjukkan di bawah ini.

LC_ALL tidak diatur di ENV, diatur ke en_US.UTF-8Mulai seahub di port 8000 ...-------------------------- --------------Ini pertama kalinya Anda memulai server seafile. Sekarang mari kita buat akun admin--------------------------Apa emailnya untuk akun admin?[ email admin ] [email protected] kata sandi untuk akun admin?[ kata sandi admin ]Masukkan kata sandi lagi:[ kata sandi admin lagi ]-------------- --------------------------Seafile admin berhasil dibuat-------------------- --------------------

Selanjutnya, hentikan layanan Seafile dan Seahub dengan perintah berikut:

/opt/seafile/seafile.sh stop/opt/seafile/seahub.sh stop

Langkah 7 – Buat File Layanan Systemd untuk Seafile

Selanjutnya, Anda perlu membuat file layanan systemd untuk Seafile dan Seahub untuk mengelola layanan. Pertama, buat file layanan untuk Seafile menggunakan perintah berikut:

nano /etc/systemd/system/seafile.service

Tambahkan baris berikut:

[Unit]Description=SeafileAfter=mysql.serviceAfter=network.target[Service]Type=forkingExecStart=/opt/seafile-server-latest/seafile.sh startExecStop=/opt/seafile-server-latest/seafile.sh stop[Install]WantedBy=multi-user.target

Simpan dan tutup file, lalu buat file layanan untuk Seahub dengan perintah berikut:

nano /etc/systemd/system/seahub.service

Tambahkan baris berikut:

[Unit]Description=SeafileAfter=mysql.serviceAfter=network.target[Service]Type=forkingExecStart=/opt/seafile-server-latest/seahub.sh startExecStop=/opt/seafile-server-latest/seahub.sh stop[Install]WantedBy=multi-user.target

Simpan dan tutup file, lalu muat ulang daemon systemd dengan perintah berikut:

systemctl daemon-reload

Selanjutnya, mulai layanan Seafile dan Seahub dan aktifkan mereka untuk memulai saat reboot sistem dengan perintah berikut:

systemctl start seafilesystemctl aktifkan seafilesystemctl start seahubsystemctl aktifkan seahub

Pada titik ini, server Seafile dimulai dan mendengarkan pada port 8000. Anda dapat memverifikasinya dengan perintah berikut:

ss -tunelp | grep 8000

Anda akan mendapatkan output berikut:

tcp DENGARKAN 0 128 127.0.0.1:8000 0.0.0.0:* pengguna:(("python3",pid=44925,fd=8),("python3",pid=44924,fd=8),(" python3",pid=44923,fd=8),("python3",pid=44922,fd=8),("python3",pid=44921,fd=8),("python3",pid=44916,fd =8)) ino:77620 sk:9 <->

Langkah 8 – Konfigurasi Nginx untuk Seafile

Selanjutnya, Anda perlu mengkonfigurasi Nginx sebagai proxy terbalik untuk mengakses Seafile menggunakan port 80. Anda dapat mengonfigurasinya dengan perintah berikut:

nano /etc/nginx/conf.d/seafile.conf

Tambahkan baris berikut:

server {listen 80;listen [::]:80;server_name seafile.example.com;autoindex off;client_max_body_size 100M;access_log /var/log/nginx/seafile.com.access.log;error_log /var/log /nginx/seafile.com.error.log;location / {proxy_pass http://127.0.0.1:8000;proxy_set_header Host $host;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Diteruskan-Untuk $proxy_add_x_forwarded_for;proxy_set_header -Forwarded-Host $server_name;proxy_read_timeout 1200s;}lokasi /seafhttp {rewrite ^/seafhttp(.*)$ $1 break;proxy_pass http://127.0.0.1:8082;proxy_set_header X-Diteruskan-Untuk $proxy_add_x_forwarded_for;proxy_connect_timeout; proxy_read_timeout 36000s;proxy_send_timeout 36000s;send_timeout 36000s;}lokasi /media {root /opt/seafile-server-latest/seahub;}}

Simpan dan tutup file, lalu restart layanan Nginx dengan perintah berikut:

systemctl restart nginx

Jika ada kesalahan, edit file Nginx.conf:

nano /etc/nginx/nginx.conf

Tambahkan baris berikut di bawah http {:

server_names_hash_bucket_size 64;

Simpan dan tutup file, lalu restart layanan Nginx:

systemctl restart nginx

Langkah 9 – Akses Antarmuka Web Seafile

Pada titik ini, Nginx dikonfigurasi untuk melayani Seafile. Sekarang, buka browser web Anda dan akses antarmuka web Seafile menggunakan URL http://seafile.example.com . Anda akan diarahkan ke halaman login Seafile:

Berikan nama pengguna dan sandi admin Anda, lalu klik Masuk tombol. Anda akan melihat dasbor Seafile di halaman berikut:

Kesimpulan

Dalam tutorial di atas, Anda mempelajari cara menginstal server Seafile dengan Nginx sebagai proxy terbalik di CentOS 8. Sekarang Anda dapat mengunggah file dan foto pribadi Anda ke server Seafile, membaginya dengan teman-teman Anda, dan mengaksesnya dari komputer Anda atau perangkat seluler. Coba Seafile di VPS Hosting dari Atlantic.Net menggunakan tutorial di atas!


Linux
  1. Bagaimana Cara Menginstal dan Mengkonfigurasi Fail2ban di CentOS 8?

  2. Cara Menginstal MongoDB di Ubuntu 20.04 dan CentOS 8

  3. Cara Menginstal DenyHost di CentOS 6.7

  1. Cara Menginstal Server PostgreSQL di CentOS 8

  2. Cara Menginstal dan Mengamankan MongoDB 4 di CentOS 8

  3. Bagaimana cara menginstal Dotnet Core di Centos 7?

  1. Cara Menginstal Apache ActiveMQ dan Hawt.io di CentOS 8

  2. Cara Menginstal dan Mengonfigurasi Mattermost di CentOS 8

  3. Cara Menginstal dan Mengkonfigurasi Server VNC di CentOS 8