Membuat Server Cloud Storage Ala Dropbox dengan Nextcloud

Hallo… Selamat pagi sobat cyber Indonesia, seperti janji saya pada artikel sebelumnya tentang web server. Kali ini saya akan membagikan tutorial cara membuat web server dengan studi kasus membuat server penyimpanan atau server cloud storage ala dropbox dengan Nextcloud. Nextcloud sendiri mempunyai lebih banyak fitur dari pada dropbox dan tentunya gratis atau open source, jadi kita tidak perlu membayar bulanan atau tahunan, kita hanya perlu menyiapkan servernya saja.

Untuk instalasi nextcloud pastikan server Cent OS 8 sobat terhubung dengan internet, karena nanti akan banyak mengunduh file -file yang diperlukan untuk instalasi nextcloud. Untuk mengetahui apakah server sudah terhubung seng internet bisa menggunakan perintah ping. Sebelum melakukan perintah ping anda diharuskan login dulu server centos. Gunakan user root dan password yang sudah dibuat sebelumnya saat instalasi Cent OS 8. Step by step atau langkah urutannya sebagai seperti dibawah ini :

Cek Koneksi Internet dengan perintah # ping google.com

Apabila terdapat respon seperti gambar diatas, maka server sudah terhubung dengan internet, untuk menghentikan proses ping tekan CTRL + C. Selanjutnya instalasi nextcloud. Untuk instalasi nextcloud pada centos komponen yang diperlukan adalah sebagai berikut :
1. MariaDB
2. PHP 7.3 atau diatasnya
3. Apache 2.4 dengan mod_php module

Update Cent OS 8

Sebelum instalasi sistem CentOS 8 perlu di update secara keseluruhan agar paket-paket dari CentOS 8 terupdate ke versi terbaru. Untuk melakukan update lakukan perintah seperti dibawah ini :
# yum –y update

Apabila sudah tampil pesan Complete! Seperti gambar diatas artinya proses update paket CentOS 8 sudah terupdate ke versi terbaru. Selanjutnya intsall yum-utils. Untuk install yum-utils jalankan perintah berikut :
# yum install yum-utils –y

 

Setting Firewall di Cent OS 8

Selanjutnya yaitu menonaktifkan fitur firewalld dan selinux , fitur ini berpotensi menggagalkan instalasi nextcloud karena terkait keamanan dalam sistem linux centos, sehingga perlu di nonaktifkan atau disable. Untuk melakukan disable filewald jalankan perintah berikut :
# systemctl stop firewalld
# systemctl disable firewalld

Sedangkan untuk disable selinux jalankan perintah sebagai berikut :
# vi /etc/selinux/config
Tekan tombol i untuk melakukan edit, akan muncul pesan INSERT di baris paling bawah artinya sudah bisa melakukan perubahan.

ganti baris enforcing menjadi disabled,

lalu tekan tombol esc, maka pesan INSERT di baris paling bawah akan hilang, selanjutnya ketik :wq untuk melalukan penyimpan dan tekan enter untuk mengakhiri perintah selinux. Selanjutnya hidupkan ulang server dengan melakukan perintah # reboot

Installasi Database MariaDB

Tahap selanjutnya yaitu instalasi database MariaDB, untuk melakukan instalasi database MariaDB lakukan perintah berikut :
# yum –y install mariadb mariadb-server

Apabila sudah tampil pesan Complete! Seperti gambar diatas artinya proses instalasi berhasil. Selanjutnya aktifkan mariadb agar dapat berjalan setiap sistem booting. Jalankan perintah berikut :
# systemctl start mariadb
# systemctl enable mariadb

Selanjutnya untuk menyelesaikan proses instalasi konfigurasi mariadb saat pertama kali jalankan, lakukan perintah berikut :
# mysql_secure_installation

Biarkan kosong dan tekan tombol Enter untuk melanjutkan

Selanjutnya tekan tombol Y, kemudian masukkan password baru. Pada contoh ini password disamakan dengan login server centos yaitu bulan123456.
Enter root password : bulan123456
Remove anonymous users? [Y/n] Y
Disallow root login remotely? [Y/n] Y
Remove test database and access to it? [Y/n] Y
Reload privilege tables now? [Y/n] Y
Untuk proses lebih jelasnya bisa perhatikan gambar dibawah ini :

Akan muncul pesan Thanks for using MariaDB, artinya proses instalasi mariadb sudah berhasil. Selanjutnya yaitu membuat database baru dan hak akses untuk nextcloud. Jalankan perintah berikut untuk masuk ke database mariadb :
# mysql -u root -p
Masukkan password yang sebelumnya sudah dibuat yaitu bulan123456.

Sampai disini sudah masuk ke dalam database mariadb, selanjutnya jalankan perintah dibawah ini :
MariaDB [(none)]> CREATE DATABASE nextcloud;
Perintah untuk membuat database baru dengan nama nextcloud.
MariaDB [(none)]> CREATE USER superadmin;
Perintah untuk membuat user baru dengan nama superadmin.
MariaDB [(none)]> SET PASSWORD FOR superadmin =
PASSWORD(“bulan123456”);
Perintah untuk memberi password superadmin.
MariaDB [(none)]> GRANT ALL PRIVILEGES ON nextcloud.* TO ‘superadmin
‘@’localhost’ IDENTIFIED BY ‘bulan123456’;
Perintah untuk memberi semua akses penuh kepada superadmin .
MariaDB [(none)]> FLUSH PRIVILEGES;
Perintah reload untuk membaca ulang hak akses.
MariaDB [(none)]> \q
Perintah untuk keluar dari database mariadb.
Untuk lebih jelasnya bisa lihat gambar dibawah ini :

Untuk instalasi dan kofigurasi database mariadb sudah selesai. Selanjutnya yaitu install Apache Web Server

 

Installasi Apache Web Server

Untuk install Apache Web Server jalankan perintah berikut :
# yum install httpd –y

Tunggu sampai proses selesai. Selanjutnya agar apache web server jalan setiap
sistem booting lakukan perintah berikut :
# systemctl start httpd.service
# systemctl enable httpd.service

 

Installasi instalasi PHP 7

Tahap selanjutnya adalah instalasi PHP 7, pada contoh ini menggunakan php versi 7.3. Untuk instalasi php versi 7.3 perlu menambahkan paket repository di CentOS, yaitu dengan cara menambahkan repository epel dan remi. Repository pihak ketiga ini yang menyediakan paket-paket aplikasi terbaru di Centos. Untuk menambahkan repository epel jalankan perintah berikut :
# yum install epel-release

Ketik tombol Y untuk melanjutkan instalasi, selanjuntnya untuk i nstalasi repository remi jalankan perintah berikut :
# rpm –Uvh http://rpms.remirepo.net/enterprise/remi-release-8.rpm

Selanjutnya jalankan perintah berikut untuk mengaktifkan php versi 7.3

# dnf module enable php:remi-7.3

Ketik tombol Y kemudian Enter untuk melanjutkan proses instalasi. Selanjutnya install komponen php yang diperlukan, jalankan perintah berikut ini :
# yum -y install php php-mysql php-opcache php-xml php-mbstring phppecl-zip php-gd php-curl php-mysqlnd

Setelah proses instalasi selesai, secara default nextcloud hanya mampu mengupload file sebesar 2MB, oleh karena itu perlu diubah dan dinaikkan menjadi 10GB. Untuk mengubah ukuran pengunggahan file hingga 10GB adalah dengan cara mengkonfigurasi post_max_size dan upload_max_filesize pada/etc/php.ini. Jalankan kedua perintah berikut ini :
# sed -i “s/post_max_size = 8M/post_max_size = 10000M/” /etc/php.ini
# sed –i “s/upload_max_filesize = 2M/upload_max_filesize = 10000M/” /etc/php.ini

Terakhir restart Apache web server agar semua konfigurasi yang sudah lakukan dapat berjalan. Jalankan perintah dibawah ini :
# systemctl restart httpd

 

Installasi Nextcloud

Setelah semua komponen yang diperlukan nextcloud terinstall, selanjutnya install wget agar dapat download nextcloud. Jalankan perintah berikut ini :
# yum install wget

Ketik Y untuk menlanjutkan instalasi wget. Setelah instalasi wget selesai, selanjutnya download nextcloud versi 19 dari situs resminya. Jalankan perintah dibawah ini :
# wget https://download.nextcloud.com/server/releases/nextcloud-19.0.0.zip

Selanjutnya file hasil download tersebut di ekstrak ke direktori /var/www/html dimana direktori tersebut adalah direktori root dari apache web server. Untuk dapat melakukan ekstraksi perlu install unzip, jalankan perintah dibawah ini :
# yum install unzip
Setelah selesai install unzip jalankan perintah dibawah ini untuk ekstrak nextcloud ke direktori apache web server :
# unzip nextcloud-19.0.0.zip -d /var/www/html/
Selanjutnya beri hak akses folder nextcloud pada user dan grup apache web server, user dan grup default ini nantinya yang bertanggung jawab menjalankan layanan webserver di centos 8.
# chown -R apache:apache /var/www/html/nextcloud/
Kemudian akses nextcloud melalui browser komputer klien yang terhubung dalam satu jaringan ke alamat http://192.168.1.250/nextcloud.

Tampilan awal konfigurasi nextcloud adalag sebagai berikut :

Pada konfigurasi awal masukkan Username dan Password sebagai user administrator baru untuk Nextcloud. Contoh sebagai berikut :
Username : admin
Password : bulan123456
Kemudian klik pada bagian Storage & database, masukkan konfigurasi database sesuai dengan database Nextcloud yang sudah dibuat sebelumnya, yaitu :
Database user : superadmin
Database password : bulan123456
Database name : nextcloud
Host : localhost
Kemudian klik Finish Setup dan tunggu proses konfigurasi selesai. Untuk lebih jelasnya perhatikan gambar dibawah ini :

Setelah konfigurasi selesai, akan diarahkan ke halaman utama sebagai user administrator dan tampilan halaman utama sebagai berikut :

Nextcloud yang berhasil diinstall masih ada kelemahan, yaitu masih menggunakan protokol HTTP bukan HTTPS, sehingga memiliki celah keamanan terbesar. Protokol HTTP sama sekali tidak menggunakn enskripsi, sehingga data yang berlalu-lalang di jaringan sangat rawan untuk disadap data-data sensitif dari Nextcloud seperti username, password, dan email dari user pengguna. Oleh karena itu disini Nextcloud dikonfigurasi agar support SSL/HTTPS sehingga setiap data-data yang
tersebar di jaringan akan di enkripsi. Pada artikel selanjutkan akan dibahas bagaimana cara installasi dan konfigurasi SSL agar nextcloud diakses melalui protokol HTTPS. Sampai jumpa sobat, semoga bermanfaat.

Leave a Reply

Your email address will not be published.