Nextcloud adalah rangkaian perangkat lunak klien-server Open Source untuk membuat dan menggunakan layanan hosting file. Ini adalah solusi penyimpanan cloud yang dihosting sendiri secara gratis serupa dengan Dropbox, Google Drive, dll. Dengan Nextcloud, Anda tidak perlu khawatir tentang alternatif yang mahal dan karena Anda akan menghosting file Anda sendiri, Anda tidak perlu khawatir tentang privasi atau seseorang yang mengumpulkan data Anda.
NextCloud dapat diinstal di server rumah pribadi atau server pribadi virtual di cloud. File kemudian dapat diunggah dan kemudian disinkronkan ke desktop lokal, laptop atau bahkan smartphone. Dengan cara ini Anda memiliki kontrol penuh atas data Anda.
Fitur NextCloud
- NextCloud memiliki klien sinkronisasi untuk Linux, Mac OS, Windows, Android, dan iOS
- Enkripsi ujung ke ujung – file dienkripsi saat diunggah ke server
- NextCloud gratis dan Open Source
- Dapat diintegrasikan dengan office suite online (Collobora, OnlyOffice) sehingga Anda dapat membuat dan mengedit file doc, ppt, xls langsung dari NextCloud.
- App store berisi ratusan aplikasi untuk memperluas fungsionalitas (seperti aplikasi kalender, aplikasi pencatat, aplikasi konferensi video, dll).
Konten Terkait
- Cara menginstal dan mengkonfigurasi NextCloud di Debian 11 dan LEMP
Prasyarat
Untuk mengikuti panduan ini, pastikan Anda memiliki:
- Server berbasis Rocky Linux/RHEL 8 terkini
- Akses internet
- Akses root ke server atau akses sudo
Daftar Isi
- Pastikan bahwa paket server terbaru
- Nonaktifkan SELinux
- Menginstal mysql
- Membuat pengguna mysql untuk NextCloud
- Menginstal PHP
- Instal Nginx
- Unduh dan konfigurasikan Nextcloud
- Konfigurasikan Nginx untuk melayani NextCloud dari virtual host
- Perbarui Konfigurasi PHP
- Mengakses Nextcloud dari url web
Pastikan bahwa paket server terbaru
Mari kita pastikan bahwa paket server kita up to date dengan perintah ini:
sudo dnf -y update
Nonaktifkan SELinux
Selanjutnya, mari kita nonaktifkan SELinux. Kami akan mengatur SELinux ke permisif. Edit file ini:
vim /etc/selinux/config
Kemudian perbarui baris ini:
SELINUX=permisive
Menginstal mysql
Mysql adalah sistem manajemen relasional yang populer. Ini tersedia di repositori default sebagai mysql-server
.
Instal dengan perintah ini:
sudo dnf install mysql-server
Anda harus memulai dan mengaktifkannya untuk memastikannya selalu dimulai saat server dimulai.
sudo systemctl start mysql
sudo systemctl status mysqld
Setelah layanan mysql berjalan, Anda harus mengamankannya. Mysql menyediakan utilitas baris perintah yang akan melakukan itu:
sudo mysql_secure_installation
Perintah di atas akan membawa Anda melalui petunjuk untuk mengamankan dan menetapkan kata sandi root untuk instance mysql.
Lihat info selengkapnya tentang Memasang dan menyiapkan mysql dalam panduan ini di sini
Membuat pengguna mysql untuk NextCloud
Selalu disarankan untuk memiliki pengguna khusus untuk setiap aplikasi yang terhubung ke DB. Lihat panduan ini tentang mengelola izin mysql di sini. Kami akan menyiapkan database, pengguna, dan kata sandi untuk digunakan oleh nextcloud:
Hubungkan ke server mysql:
mysql -u root -p
Setelah memasukkan kata sandi Anda, masukkan yang berikut ke prompt mysql:
create database nextcloud;
create user 'nextcloud_user'@'%' identified by 'S0mStrongPa$$word';
grant all privileges on nextcloud.* to 'nextcloud_user'@'%';
Sekarang kita telah mengkonfigurasi koneksi mysql kita, mari kita pergi ke bagian berikutnya di mana kita menginstal dan mengkonfigurasi PHP dan Nginx.
Menginstal PHP
NextCloud bekerja dengan baik dengan PHP 6.4. Untuk menginstal php 7.4, kita perlu mengaktifkan repositori remi agar mendapatkan versi terbaru.
Aktifkan Remi repo dengan perintah ini:
sudo dnf install dnf-utils http://rpms.remirepo.net/enterprise/remi-release-8.rpm
Aktifkan php 7.4 menggunakan modul dnf:
sudo dnf module enable php:remi-7.4
Kemudian instal php dan dependensi
sudo dnf install -y php php-gd php-curl php-zip php-dom php-xml php-simplexml php-mbstring php-intl php-json
Untuk info selengkapnya tentang menyiapkan Apache dan PHP, lihat panduan ini di sini. Lihat tentang rilis remi di sini.
Menginstal Nginx
Selanjutnya, mari kita instal Nginx di sistem kita. Gunakan perintah ini untuk menginstal nginx
sudo dnf install -y nginx
Mulai dan periksa status Nginx
$ sudo systemctl start nginx
$ sudo systemctl status nginx
● nginx.service - The nginx HTTP and reverse proxy server
Loaded: loaded (/usr/lib/systemd/system/nginx.service; disabled; vendor preset: disabled)
Drop-In: /usr/lib/systemd/system/nginx.service.d
└─php-fpm.conf
Active: active (running) since Fri 2021-10-15 17:33:39 UTC; 7s ago
Process: 1138614 ExecStart=/usr/sbin/nginx (code=exited, status=0/SUCCESS)
Process: 1138607 ExecStartPre=/usr/sbin/nginx -t (code=exited, status=0/SUCCESS)
Process: 1138605 ExecStartPre=/usr/bin/rm -f /run/nginx.pid (code=exited, status=0/SUCCESS)
Main PID: 1138615 (nginx)
Tasks: 3 (limit: 23800)
Memory: 5.3M
CGroup: /system.slice/nginx.service
├─1138615 nginx: master process /usr/sbin/nginx
├─1138616 nginx: worker process
└─1138617 nginx: worker process
Oct 15 17:33:38 test-app-server systemd[1]: Starting The nginx HTTP and reverse proxy server...
Oct 15 17:33:39 test-app-server nginx[1138607]: nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
Active: active (running)
menunjukkan bahwa layanan sekarang aktif dan berjalan.
Unduh dan konfigurasikan Nextcloud
Sekarang kita telah berhasil mengonfigurasi server LEMP di sistem kita, mari kita unduh dan atur NextCloud. Anda bisa mendapatkan versi terbaru NextCloud dari halaman instalasi NextCloud. Gunakan perintah ini untuk mengunduh server NextCloud:
cd /tmp
curl -LO https://download.nextcloud.com/server/releases/nextcloud-22.2.0.zip
Sekarang mari kita ubah menjadi jalur direktori untuk melayani NextCloud di /var/www
kemudian ekstrak file yang diunduh di sana:
cd /var/www
sudo unzip /tmp/nextcloud-22.2.0.zip
sudo chown -R nginx:nginx nextcloud
sudo chmod -R 755 nextcloud
Nextcloud membutuhkan direktori untuk menyimpan datanya. Jadi buat direktori data dan atur izin yang tepat di direktori nextcloud
sudo mkdir -p /var/nextcloud/data sudo chown -R nginx:nginx /var/nextcloud sudo chmod -R 755 /var/nextcloud
Konfigurasikan Nginx untuk melayani NextCloud dari virtual host
Kami berhasil mengunduh konten NextCloud ke /var/www/nextcloud
. Bit berikutnya untuk menyiapkan Nginx untuk menyajikannya.
Mari kita buat situs virtual di direktori tempat nginx menyajikan konten di sini /etc/nginx/conf.d
:
sudo vim /etc/nginx/conf.d/nextcloud.conf
Tambahkan konten berikut:
server {
listen 80;
server_name nextcloud.citizix.com;
root /var/www/nextcloud;
index index.php;
location / {
try_files $uri $uri/ /index.php?$args;
}
location = /favicon.ico {
log_not_found off;
access_log off;
}
location ~* \.(js|css|png|jpg|jpeg|gif|ico)$ {
expires max;
log_not_found off;
}
location = /robots.txt {
allow all;
log_not_found off;
access_log off;
}
location ~ \.php$ {
include /etc/nginx/fastcgi_params;
fastcgi_pass unix:/run/php-fpm/www.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
}
Memperbarui Konfigurasi PHP
Selanjutnya mari kita mengurus beberapa konfigurasi php. Kami menggunakan php-fpm untuk menyajikan konten php kami. Ini dikonfigurasi untuk bekerja dengan Apache secara default jadi mari perbarui pengguna dan grup dalam file /etc/php-fpm.d/www.conf
ke nginx.
Edit filenya
vim /etc/php-fpm.d/www.conf
Kemudian perbarui ini
user = nginx
group = nginx
Mari kita juga mengubah direktori sesi untuk kita login. Perbarui direktori sesi PHP untuk dimiliki oleh nginx:
sudo chown nginx.nginx -R /var/lib/php/session/
Setelah perubahan di atas dibuat, kita perlu me-restart server nginx dan server php-fom. Gunakan perintah ini di terminal untuk mencapainya.
sudo systemctl restart php-fpm nginx
Mengakses Nextcloud dari url web
Kemudian buka domain yang Anda atur, http://nextcloud.citizix.com/nextcloud
untuk saya. Anda akan diminta untuk membuat akun pengguna. Masukkan nama pengguna dan kata sandi yang akan digunakan untuk pengguna baru:
Kemudian masukkan Detail Database:
Setelah itu Klik Selesai. Anda akan diarahkan ke halaman login di mana Anda akan menggunakan detail pengguna yang dibuat untuk login. Pada Login Berhasil Anda akan mendapatkan Dashboard.
Kesimpulan
Dalam panduan ini, kami berhasil menyiapkan LEMP di Rocky Linux 8 atau Server berbasis RHEL untuk melayani cloud Berikutnya.