Tutorial

Cara Menginstal dan Mengonfigurasi Nextcloud pada Ubuntu 20.04

UbuntuApplicationsStorageUbuntu 20.04

Pengantar

Nextcloud, pecahan dari ownCloud, adalah suatu server berbagi berkas yang mengizinkan Anda untuk menyimpan konten pribadi, seperti dokumen dan gambar, dalam lokasi yang tersentralisasi, yang mirip seperti Dropbox. Perbedaan dari Nextcloud adalah bahwa semua fiturnya merupakan sumber terbuka. Nextcloud juga mengembalikan kontrol dan keamanan dari data sensitif kepada Anda, sehingga menghilangkan penggunaan dari layanan awan pihak ketiga yang menjadi hos.

Dalam tutorial ini, kita akan menginstal dan mengonfigurasi instans Nextcloud pada server Ubuntu 20.04.

Prasyarat

Untuk menyelesaikan langkah-langkah dalam panduan ini, Anda akan membutuhkan yang berikut:

  • Pengguna dengan sudo non-root yang diaktifkan dan firewall yang terkonfigurasi pada server**: Anda dapat menciptakan pengguna dengan privilese sudo dan menyiapkan firewall dasar dengan mengikuti Penyiapan Server Awal dengan Ubuntu 20.04.
  • (Opsional) Nama domain yang mengarah ke server Anda: Kita akan mengamankan koneksi ke instalasi Nextcloud dengan TLS/SSL. Nextcloud dapat menyiapkan dan mengelola sertifikat SSL gratis yang tepercaya dari Let’s Encrypt jika server Anda memiliki nama domain. Jika tidak, Nextcloud dapat menyiapkan sertifikat SSL yang ditandatangani sendiri yang dapat mengenkripsi koneksi, tetapi tidak akan dipercaya secara asali dalam peramban web. Jika Anda menggunakan DigitalOcean, Anda dapat membaca dokumentasi DNS kami untuk mempelajari cara menambahkan domain ke akun dan mengelola catatan DNS, jika Anda hendak menggunakan Let’s Encrypt.

Setelah Anda menyelesaikan langkah-langkah di atas, lanjutkan untuk mempelajari cara menyiapkan Nextcloud pada server Anda.

Langkah 1 – Menginstal Nextcloud

Kita akan menginstal Nextcloud menggunakan sistem paket Snap. Sistem paket ini, yang tersedia pada Ubuntu 20.04 secara asali, mengizinkan organisasi untuk mengirimkan perangkat lunak, bersama dengan semua dependensi dan konfigurasi yang terasosiasi, di dalam suatu unit mandiri dengan pembaruan otomatis. Ini berarti bahwa alih-alih menginstal dan mengonfigurasi server web dan basis data lalu mengonfigurasi aplikasi Nextcloud untuk berjalan di atasnya, kita dapat menginstal paket snap yang menangani sistem yang mendasarinya secara otomatis.

Untuk mengunduh paket snap Nextcloud dengan cepat dan menginstalnya pada sistem, ketik:

  • sudo snap install nextcloud

Paket Nextcloud akan diunduh dan diinstal pada server Anda. Anda dapat mengonfirmasi bahwa proses instalasi berhasil dengan membuat daftar perubahan yang terasosiasi dengan snap:

  • snap changes nextcloud
Output
ID Status Spawn Ready Summary 4 Done today at 16:12 UTC today at 16:12 UTC Install "nextcloud" snap

Status dan ringkasan mengindikasikan bahwa instalasi selesai tanpa masalah apa pun.

Mendapatkan Informasi Tambahan tentang Snap Nextcloud

Jika Anda menginginkan informasi lebih lanjut tentang snap Nextcloud, ada beberapa perintah yang dapat membantu.

Perintah snap info dapat menampilkan deskripsi kepada Anda, perintah manajemen Nextcloud yang tersedia, serta versi terinstal dan saluran snap yang sedang dilacak:

  • snap info nextcloud

Snap dapat menentukan koneksi yang mereka dukung, yang terdiri dari slot dan colokan, yang saat disambungkan, memberi Snap akses ke kemampuan tertentu atau beberapa tingkat akses. Misalnya, snap yang perlu bertindak sebagai klien jaringan harus memiliki koneksi network. Untuk melihat connections snap yang didefinisikan snap ini, ketik:

  • snap connections nextcloud
Output
Interface Plug Slot Notes network nextcloud:network :network - network-bind nextcloud:network-bind :network-bind - removable-media nextcloud:removable-media - -

Untuk mempelajari semua layanan dan aplikasi spesifik yang disediakan snap ini, Anda dapat melihat berkas definisi snap dengan mengetik:

  • cat /snap/nextcloud/current/meta/snap.yaml

Ini akan memungkinkan Anda untuk melihat setiap komponen yang disertakan di dalam snap, jika Anda membutuhkan bantuan terkait pengawakutuan.

Langkah 2 – Mengonfigurasi Akun Administratif

Ada beberapa cara berbeda lainnya agar Anda dapat mengonfigurasi snap Nextcloud. Dalam panduan ini, alih-alih menciptakan pengguna administratif melalui antarmuka web, kita akan menciptakan pengguna administratif dengan baris perintah untuk menghindari satu jendela kecil tempat laman pendaftaran administrator akan dapat diakses oleh siapa pun yang mengunjungi alamat IP atau nama domain server Anda.

Untuk mengonfigurasi Nextcloud dengan akun administrator baru, gunakan perintah nextcloud.manual-install. Anda harus memasukkan nama pengguna dan kata sandi sebagai argumen:

  • sudo nextcloud.manual-install sammy password

Pesan berikut mengindikasikan bahwa Nextcloud telah dikonfigurasi dengan benar:

Output
Nextcloud was successfully installed

Kini setelah Nextcloud terinstal, kita perlu menyesuaikan domain tepercaya sehingga Nextcloud akan merespons permintaan yang menggunakan nama domain atau alamat IP server.

Langkah 3 – Menyesuaikan Domain Tepercaya

Ketika menginstal dari baris perintah, Nextcloud membatasi nama-nama hos yang akan direspons oleh instans. Secara asali, layanan hanya merespons permintaan yang dibuat ke nama hos “localhost”. Kita akan mengakses Nextcloud melalui nama domain atau alamat IP server, sehingga kita perlu menyesuaikan pengaturan untuk menerima jenis permintaan seperti ini.

Anda dapat melihat pengaturan saat ini dengan melakukan kueri terhadap nilai dari larik trusted_domains:

  • sudo nextcloud.occ config:system:get trusted_domains
Output
localhost

Saat ini, hanya localhost yang hadir sebagai nilai pertama di dalam lari‏k. Kita dapat menambah entri untuk nama domain atau alamat IP server kita dengan mengetik:

  • sudo nextcloud.occ config:system:set trusted_domains 1 --value=example.com
Output
System config value trusted_domains => 1 set to string example.com

Jika kita melakukan kueri terhadap domain tepercaya lagi, kita akan melihat bahwa kini kita memiliki dua entri:

  • sudo nextcloud.occ config:system:get trusted_domains
Output
localhost example.com

Jika Anda perlu menambahkan cara lain untuk mengakses instans Nextcloud, Anda dapat menambah domain atau alamat tambahan dengan menjalankan kembali perintah config:system:set menggunakan nomor indeks inkremental (angka “1” dalam perintah pertama) dan menyesuaikan --value.

Langkah 4 – Mengamankan Antarmuka Web Nextcloud dengan SSL

Sebelum kita mulai menggunakan Nextcloud, kita perlu mengamankan antarmuka web.

Jika Anda memiliki nama domain yang terasosiasi dengan server Nextcloud, snap Nextcloud dapat membantu Anda memperoleh dan mengonfigurasi sertifikat SSL tepercaya dari Let’s Encrypt. Jika server Nextcloud Anda tidak memiliki nama domain, Nextcloud dapat mengonfigurasi sertifikat yang ditandatangani sendiri yang akan mengenkripsi lalu lintas web, tetapi tidak akan dipercaya secara otomatis oleh peramban web Anda.

Dengan mengingat itu, ikuti bagian di bawah ini yang sesuai dengan skenario Anda.

Opsi 1: Menyiapkan SSL dengan Let’s Encrypt

Jika Anda memiliki nama domain yang terasosiasi dengan server Nextcloud, opsi terbaik untuk mengamankan antarmuka web Anda adalah dengan memperoleh sertifikat SSL Let’s Encrypt.

Mulailah dengan membuka porta pada firewall yang digunakan Let’s Encrypt untuk memvalidasi kepemilikan domain. Ini akan membuat laman log masuk Nextcloud Anda dapat diakses publik, tetapi karena kita sudah memiliki akun administrator yang terkonfigurasi, tidak akan ada yang dapat membajak instalasi:

  • sudo ufw allow 80,443/tcp

Selanjutnya, mintalah sertifikat Let’s Encrypt dengan mengetik:

  • sudo nextcloud.enable-https lets-encrypt

Pertama-tama, Anda akan ditanya apakah server Anda memenuhi syarat-syarat yang diperlukan untuk meminta sertifikat dari layanan Let’s Encrypt:

Output
In order for Let's Encrypt to verify that you actually own the domain(s) for which you're requesting a certificate, there are a number of requirements of which you need to be aware: 1. In order to register with the Let's Encrypt ACME server, you must agree to the currently-in-effect Subscriber Agreement located here: https://letsencrypt.org/repository/ By continuing to use this tool you agree to these terms. Please cancel now if otherwise. 2. You must have the domain name(s) for which you want certificates pointing at the external IP address of this machine. 3. Both ports 80 and 443 on the external IP address of this machine must point to this machine (e.g. port forwarding might need to be setup on your router). Have you met these requirements? (y/n)

Ketik y untuk melanjutkan.

Selanjutnya, Anda akan diminta untuk memberikan alamat surel yang digunakan untuk operasi pemulihan:

Output
Please enter an email address (for urgent notices or key recovery):

Masukkan surel Anda dan tekan Enter untuk melanjutkan.

Terakhir, masukkan nama domain yang terasosiasi dengan server Nextcloud Anda:

Output
Please enter your domain name(s) (space-separated): example.com

Sertifikat Lets Encrypt Anda akan diminta, dan jika semuanya berjalan lancar, instans Apache internal akan segera dimulai ulang untuk menerapkan SSL:

Output
Attempting to obtain certificates... done Restarting apache... done

Kini Anda dapat melompati hingga ke langkah selanjutnya guna masuk ke Nextcloud untuk pertama kalinya.

Opsi 2: Menyiapkan SSL dengan Sertifikat yang Ditandatangani Sendiri

Jika server Nextcloud Anda tidak memiliki nama domain, Anda masih dapat mengamankan antarmuka web dengan membuat sertifikat SSL yang ditandatangani sendiri. Sertifikat ini akan mengizinkan akses ke antarmuka web melalui koneksi terenkripsi, tetapi tidak akan dapat memverifikasi identitas server Anda, sehingga peramban Anda kemungkinan akan menampilkan peringatan.

Untuk menghasilkan sertifikat yang ditandatangani sendiri dan mengonfigurasi Nextcloud untuk menggunakannya, ketik:

  • sudo nextcloud.enable-https self-signed
Output
Generating key and self-signed certificate... done Restarting apache... done

Keluaran di atas mengindikasikan bahwa Nextcloud menghasilkan dan mengaktifkan sertifikat yang ditandatangani sendiri.

Kini setelah antarmuka aman, buka porta web dalam firewall untuk mengizinkan akses ke antarmuka web:

  • sudo ufw allow 80,443/tcp

Kini Anda siap log masuk ke Nextcloud untuk pertama kalinya.

Langkah 5 – Log Masuk ke Antarmuka Web Nextcloud

Kini setelah Nextcloud terkonfigurasi, kunjungi nama domain server atau alamat IP Anda di peramban web Anda:

https://example.com

Catatan: Jika Anda menyiapkan sertifikat SSL yang ditandatangani sendiri, peramban Anda mungkin menampilkan peringatan bahwa koneksi tidak aman karena sertifikat server tidak ditandatangani oleh otoritas sertifikat yang diakui. Hal ini sudah diantisipasi untuk sertifikat ditandatangani sendiri, jadi silakan mengeklik untuk melewati peringatan dan melanjutkan ke situs.

Karena Anda sudah mengonfigurasi akun administrator dari baris perintah, Anda akan dibawa ke laman log masuk Nextcloud. Masukkan kredensial yang Anda ciptakan untuk pengguna administratif:

Laman log masuk Nextcloud

Klik tombol Log in untuk log masuk ke antarmuka web Nextcloud.

Ketika Anda masuk pertama kali, sebuah jendela akan ditampilkan dengan beberapa teks pengantar dan tautan ke berbagai klien Nextcloud yang dapat digunakan untuk mengakses instans Nextcloud Anda:

Modal klien Nextcloud

Klik untuk mengunduh klien apa pun yang Anda inginkan, atau keluar dari jendela dengan mengeklik X di sudut kanan atas. Anda akan dibawa ke antarmuka Nextcloud utama, tempat Anda dapat mulai mengunggah dan mengelola berkas:

Laman utama Nextcloud

Instalasi Anda kini sudah selesai dan diamankan. Jangan ragu untuk menjelajahi antarmuka agar menjadi lebih familier dengan fitur-fitur dan fungsionalitas dari sistem baru Anda.

Kesimpulan

Nextcloud dapat mereplikasi kemampuan dari layanan penyimpanan awan pihak ketiga yang populer. Konten dapat dibagikan di antara beberapa pengguna atau secara eksternal dengan URL publik. Keuntungan dari Nextcloud yakni informasi disimpan secara aman di suatu tempat yang Anda kontrol.

Untuk fungsionalitas tambahan, lihat di bursa aplikasi Nextcloud, tempat Anda dapat menginstal plugin untuk menambah kemampuan layanan.

Creative Commons License