Nextcloud

From DamaniaWiki

NextCloud membantu Anda untuk memperoleh: rumah yang aman untuk semua data Anda. Amankan, di bawah kendali Anda dan kembangkan secara terbuka, transparan, dan dapat dipercaya.

Nextcloud menawarkan sinkronisasi file lokal dan teknologi kolaborasi online terkemuka di industri. Keahlian kami dalam menggabungkan kenyamanan dan kemudahan penggunaan solusi tingkat konsumen seperti Dropbox dan Google Drive dengan keamanan, privasi, dan kebutuhan kontrol bisnis.

Solusi mandiri kami memastikan Anda tahu di mana data berada, siapa yang memiliki akses, dan bahkan meta-data tidak bocor.


NextCloud: Instalasi di ubuntu 22.04

Berikut adalah langkah-langkah instalasi Nextcloud di Ubuntu 22.04

Pastikan sistem Anda diperbarui:

sudo apt update && sudo apt upgrade -y

Instal paket yang diperlukan:

sudo apt install apache2 mariadb-server libapache2-mod-php php php-mysql php-xml php-mbstring php-zip php-curl php-gd php-intl php-bcmath php-gmp unzip -y

Buat Database untuk Nextcloud Masuk ke MySQL:

sudo mysql -u root -p

Di dalam MySQL, jalankan perintah berikut untuk membuat database dan user:

CREATE DATABASE nextcloud;
CREATE USER 'nextclouduser'@'localhost' IDENTIFIED BY 'passwordku';
GRANT ALL PRIVILEGES ON nextcloud.* TO 'nextclouduser'@'localhost';
FLUSH PRIVILEGES;
EXIT;

Ganti passwordku dengan password yang kuat.

Unduh dan Ekstrak Nextcloud Pindah ke direktori web server:

cd /var/www/html

Unduh Nextcloud:

wget https://download.nextcloud.com/server/releases/latest.zip

Ekstrak file:

unzip latest.zip

Ubah kepemilikan folder:

sudo chown -R www-data:www-data /var/www/html/nextcloud
sudo chmod -R 755 /var/www/html/nextcloud

Konfigurasi Apache Buat file konfigurasi Apache untuk Nextcloud:

sudo nano /etc/apache2/sites-available/nextcloud.conf

Tambahkan konfigurasi berikut:

<VirtualHost *:80>
    ServerAdmin admin@contoh.com
    DocumentRoot /var/www/html/nextcloud
    ServerName 192.168.77.3
    <Directory /var/www/html/nextcloud/>
        Require all granted
        AllowOverride All
        Options FollowSymLinks MultiViews
    </Directory>
    ErrorLog ${APACHE_LOG_DIR}/nextcloud_error.log
    CustomLog ${APACHE_LOG_DIR}/nextcloud_access.log combined
</VirtualHost>

Simpan dengan CTRL+X, tekan Y, lalu ENTER.

Aktifkan konfigurasi:

sudo a2ensite nextcloud.conf
sudo a2enmod rewrite headers env dir mime
sudo systemctl restart apache2

Selesaikan Instalasi via Web Buka browser dan akses http://192.168.77.3 Buat akun admin Nextcloud Masukkan detail database: Database User: nextclouduser Password: (isi dengan password yang telah dibuat) Database Name: nextcloud Database Host: localhost Klik "Install"


1. Mengaktifkan HTTPS (SSL) Saat ini Nextcloud berjalan di HTTP, yang dianggap tidak aman. Jika hanya digunakan di jaringan lokal, ini tidak wajib, tetapi jika ingin menghilangkan peringatan, gunakan HTTPS.

Opsi 1: Menggunakan Self-Signed Certificate (Jika Tidak Memiliki Domain)

bash Salin Edit sudo apt install openssl sudo mkdir /etc/apache2/ssl sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/apache2/ssl/nextcloud.key -out /etc/apache2/ssl/nextcloud.crt Saat diminta mengisi informasi, cukup tekan ENTER atau isi sesuai kebutuhan.

Edit konfigurasi Apache untuk Nextcloud:

bash Salin Edit sudo nano /etc/apache2/sites-available/nextcloud-ssl.conf Tambahkan konfigurasi berikut:

bash Salin Edit <VirtualHost *:443>

   DocumentRoot /var/www/html/nextcloud
   ServerName 192.168.77.3
   SSLEngine on
   SSLCertificateFile /etc/apache2/ssl/nextcloud.crt
   SSLCertificateKeyFile /etc/apache2/ssl/nextcloud.key
   <Directory /var/www/html/nextcloud/>
       Require all granted
       AllowOverride All
       Options FollowSymLinks MultiViews
   </Directory>
   Header always set Strict-Transport-Security "max-age=15552000; includeSubDomains"
   ErrorLog ${APACHE_LOG_DIR}/nextcloud_error.log
   CustomLog ${APACHE_LOG_DIR}/nextcloud_access.log combined

</VirtualHost> Simpan (CTRL+X, lalu Y, lalu ENTER).

Aktifkan modul SSL dan konfigurasi baru:

bash Salin Edit sudo a2enmod ssl sudo a2ensite nextcloud-ssl.conf sudo systemctl restart apache2 Sekarang akses Nextcloud melalui https://192.168.77.3.

Opsi 2: Menggunakan Let's Encrypt (Jika Punya Domain) Pastikan domain sudah mengarah ke server, lalu jalankan:

bash Salin Edit sudo apt install certbot python3-certbot-apache -y sudo certbot --apache -d domainanda.com Ikuti instruksi hingga sertifikat berhasil dipasang.

2. Meningkatkan Memory Limit PHP Edit file konfigurasi PHP:

bash Salin Edit sudo nano /etc/php/8.1/apache2/php.ini Cari baris berikut (CTRL+W untuk mencari):

ini Salin Edit memory_limit = 128M Ubah menjadi:

ini Salin Edit memory_limit = 512M Simpan lalu restart Apache:

bash Salin Edit sudo systemctl restart apache2 3. Konfigurasi High-Performance Backend untuk Nextcloud Talk (Opsional) Jika menggunakan Nextcloud Talk untuk video call, Anda perlu menginstal High Performance Backend seperti Signaling Server atau TURN Server. Jika hanya digunakan untuk file sharing, bisa diabaikan.

4. Mengatur Maintenance Window Buka konfigurasi Nextcloud:

bash Salin Edit sudo nano /var/www/html/nextcloud/config/config.php Tambahkan baris berikut sebelum );:

php Salin Edit 'maintenance_window_start' => 3, Angka 3 berarti maintenance dilakukan pukul 03:00 pagi.

5. Menjalankan Perintah Perbaikan a. Migrasi Mimetype Jalankan:

bash Salin Edit sudo -u www-data php /var/www/html/nextcloud/occ maintenance:repair --include-expensive b. Tambahkan Indeks Database yang Hilang bash Salin Edit sudo -u www-data php /var/www/html/nextcloud/occ db:add-missing-indices c. Konfigurasi OPcache PHP Edit konfigurasi OPcache:

bash Salin Edit sudo nano /etc/php/8.1/apache2/php.ini Cari dan ubah baris berikut:

ini Salin Edit opcache.interned_strings_buffer=8 Menjadi:

ini Salin Edit opcache.interned_strings_buffer=16 Simpan lalu restart Apache:

bash Salin Edit sudo systemctl restart apache2 6. Upgrade PHP ke Versi 8.2 PHP 8.1 sudah usang, Nextcloud 32 akan membutuhkan PHP 8.2.

a. Tambahkan Repository PHP PPA

bash Salin Edit sudo add-apt-repository ppa:ondrej/php -y sudo apt update b. Install PHP 8.2 dan Modul yang Diperlukan

bash Salin Edit sudo apt install php8.2 php8.2-mysql php8.2-xml php8.2-mbstring php8.2-zip php8.2-curl php8.2-gd php8.2-intl php8.2-bcmath php8.2-gmp libapache2-mod-php8.2 -y c. Ubah Versi PHP yang Digunakan Apache

bash Salin Edit sudo a2dismod php8.1 sudo a2enmod php8.2 sudo systemctl restart apache2 Verifikasi:

bash Salin Edit php -v Jika versi menunjukkan PHP 8.2, maka sudah berhasil.

7. Restart dan Periksa Kembali Setelah semua perbaikan dilakukan, restart layanan:

bash Salin Edit sudo systemctl restart apache2 mariadb Akses kembali Nextcloud di https://192.168.77.3 dan periksa apakah semua peringatan telah hilang.