Cara Install OwnCloud di Ubuntu 16.10 ( Versi 9.1 )
Pada pembahasan kali ini, kita akan mengetahui bangaimana install OwnCloud 9.1 di Ubuntu 16.10 dengan menggunakan Nginx, MariaDB dan PHP7. Ikuti beberapa langkah berikut ini untuk mempersiapkan dan memulai install OwnCloud di Ubuntu 16.10.
Step 1: Install Nginx dan PHP 7
Nginx free dan open source yang digunakan untuk membangun web server yang dikenal dengan memiliki peforma lebih baik dan stabil. Kita bisa install Nginx dengan mudah menggunakan perintah apt-get install.sudo apt-get install nginx
sudo apt install php7.0-common php7.0-fpm php7.0-cli php7.0-json php7.0-mysql php7.0-curl php7.0-intl php7.0-mcrypt php-pear php7.0-gd php7.0-zip php7.0-xml php7.0-mbstring
Step 2: Install OwnCLoud Server
Pertama kali yang perlu lakukan adalah menambahkan ke Ubuntu 16.10 key dari OwnCloud repositry.wget -nv https://download.owncloud.org/download/repositories/stable/Ubuntu_16.04/Release.key -O Release.keyHal ini hanya dilakukan jika Ubuntu 16.10 belum memiliki release key.
sudo apt-key add - < Release.keySelanjutnya, tambahkan official repository dengan melakukan perintah berikut.
sudo sh -c "echo 'deb http://download.owncloud.org/download/repositories/stable/Ubuntu_16.04/ /' >> /etc/apt/sources.list.d/owncloud.list"Sekarang kita update local package dan memulai install OwnCloud.
sudo apt-get update sudo apt-get install owncloud-files
Step 3: Membuat User dan Database
Kita akan menggunakan MariaDB yang tidak jauh beda dari MySQL untuk cara penggunaanya. Jika pada server anda belum memiliki database lakukan perintah berikut untuk memulai install MariaDB.apt-get install mariadb-server-10.0 mariadb-client-10.0Setelah selesai install, login kedalam database dan mulai membuat database untuk OwnCloud. Perintah yang digunakan hampir sama dengan perintah pada MySQL.
montoska@ubuntu:~# mysql -u root -p
MariaDB [(none)]> create database owncloud; Query OK, 1 row affected (0.00 sec) MariaDB [(none)]> create user owncloudtester@localhost identified by 'tester123'; Query OK, 0 rows affected (0.01 sec) MariaDB [(none)]> grant all privileges on owncloud.* to owncloudtester@localhost identified by 'tester123'; Query OK, 0 rows affected (0.00 sec) MariaDB [(none)]> flush privileges -> ; Query OK, 0 rows affected (0.00 sec) MariaDB [(none)]> exit; ByeEnable binary logging di MariaDB
Binary log adalah record dari setiap penukaran yang sudah dilakukan didalam database, ini berguna untuk restore data setelah backup. Kita enable fitur ini dengan cara menambahkan baris berikut ini kedalam file /etc/mysql/my.cnf
log-bin = /var/log/mysql/mariadb-bin log-bin-index = /var/log/mysql/mariadb-bin.index binlog_format = mixedSetelah selesai, save dan restart service MariaDB.
service mysql reload
Step 4: Menambahkan free SSL certificate
SSL (Secure Socket Layer) adalah teknologi security standart untuk encrypt link antara web server dan browser. Hal ini memastikan bahwa setiap data yang diantarkan antara server dan browser menjadi private. Lets Encrypt sendiri free dan open certificate authority yang memungkinkan mengaktifkan HTTPS pada website. Sekarang mulai install Lets Encrypt dari GitHub.sudo apt-get install git git clone https://github.com/letsencrypt/letsencryptBeralih ke folder Letsencrypt dan jalankan perintah berikut ini untuk mendapatkan SSL certificate untuk domain kita. Tapi sebelumnya pastikan terlebih dahulu bahwa ip server sudah di arahkan atau mapped ke alamat domain.
/letsencrypt-auto certonly --standalone --email --agree-tos -dJika generate certificate berhasil, maka tampilan yang akan terlihat seperti dibawah ini
Step 5: Membuat file Config Nginx
Semua yang berhubungan dengan Nginx akan terdapat di directory /etc/nginx. Nah sekarang kita akan membuat file dan menempatkannya di /etc/nginx/conf.d/owncloud.conf dan isikan file tersebut dengan barisan berikut.upstream php-handler { #server 127.0.0.1:9000; server unix:/run/php/php7.0-fpm.sock; } server { listen 80; server_name nodenixbox.com; # enforce https return 301 https://$server_name$request_uri; } server { listen 443 ssl; server_name nodenixbox.com; ssl_certificate /etc/letsencrypt/live/nodenixbox.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/nodenixbox.com/privkey.pem; # Add headers to serve security related headers add_header Strict-Transport-Security "max-age=15768000; includeSubDomains; preload;"; add_header X-Content-Type-Options nosniff; add_header X-Frame-Options "SAMEORIGIN"; add_header X-XSS-Protection "1; mode=block"; add_header X-Robots-Tag none; # Path to the root of your installation root /var/www/owncloud/; # set max upload size client_max_body_size 10G; fastcgi_buffers 64 4K; # Disable gzip to avoid the removal of the ETag header gzip off; # Uncomment if your server is build with the ngx_pagespeed module # This module is currently not supported. #pagespeed off; index index.php; error_page 403 /core/templates/403.php; error_page 404 /core/templates/404.php; rewrite ^/.well-known/carddav /remote.php/carddav/ permanent; rewrite ^/.well-known/caldav /remote.php/caldav/ permanent; # The following 2 rules are only needed for the user_webfinger app. # Uncomment it if you're planning to use this app. #rewrite ^/.well-known/host-meta /public.php?service=host-meta last; #rewrite ^/.well-known/host-meta.json /public.php?service=host-meta-json last; location = /robots.txt { allow all; log_not_found off; access_log off; } location ~ ^/(build|tests|config|lib|3rdparty|templates|data)/ { deny all; } location ~ ^/(?:\.|autotest|occ|issue|indie|db_|console) { deny all; } location / { rewrite ^/remote/(.*) /remote.php last; rewrite ^(/core/doc/[^\/]+/)$ $1/index.html; try_files $uri $uri/ =404; } location ~ \.php(?:$|/) { fastcgi_split_path_info ^(.+\.php)(/.+)$; include fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param PATH_INFO $fastcgi_path_info; fastcgi_param HTTPS on; fastcgi_param modHeadersAvailable true; #Avoid sending the security headers twice fastcgi_pass php-handler; fastcgi_intercept_errors on; } # Adding the cache control header for js and css files # Make sure it is BELOW the location ~ \.php(?:$|/) { block location ~* \.(?:css|js)$ { add_header Cache-Control "public, max-age=7200"; # Add headers to serve security related headers add_header Strict-Transport-Security "max-age=15768000; includeSubDomains; preload;"; add_header X-Content-Type-Options nosniff; add_header X-Frame-Options "SAMEORIGIN"; add_header X-XSS-Protection "1; mode=block"; add_header X-Robots-Tag none; # Optional: Don't log access to assets access_log off; } # Optional: Don't log access to other assets location ~* \.(?:jpg|jpeg|gif|bmp|ico|png|swf)$ { access_log off; } }Perhatikan pada file diatas, kita butuh menukar nama domain sesuai dengan nama domain masing-masing. Save file dan exit.
Step 6: Setting Up Web Interface
Langkah terakhir adalah membuat akun administrator untuk OwnCloud dan mengkoneksikan dengan MariaDB yang sebelumnya sudah kita buat. Nah sekarang buka browser dan arahkan ke alamat domain yang sebelumnya sudah dibahas “https://nama-domain.com”.Pada bagian tersebut kita membuat akun administrator dengan input username dan passowrd, selanjutnya input informasi database, terakhir anda akan melihat dan memilih ‘Finish Setup‘ Button dan akhirnya kita selesai Install OwnCloud di Ubuntu 16.10 dan mulailah managing file, folder, foto dan berbagai pengaturan lainnya di OwnCloud storage anda sendiri.
Tidak ada komentar:
Posting Komentar