Anda di halaman 1dari 48

Workshop Membuat Cloud Storage

Tandingan Dropbox dengan Owncloud

Cilsy Fiolution

Kolaborasi dengan :
Sosiohub Coworking Space & Biznet Gio Cloud
13 Agustus 2016

www.linuxsupports.com

Jadwal Workshop
Jadwal

Materi

09.10 10.30

Pengenalan Cloud Computing dan Pembuatan VPS

10.30 11.00

Konsep Online Aplikasi dan Konfigurasi DNS

11.00 11.20

Mengakses VPS GIO Cloud dan Persiapan Instalasi

11.20 12.00

Instalasi Owncloud dan HTTPS Let's Encrypt

12.00 13.00

Isoma

13.00 14.00

Eksplorasi Owncloud

14.00 15.00

Backup & Restore

www.linuxsupports.com

Konsep Mengonlinekan Aplikasi


Di VPS

www.linuxsupports.com

Konsep Online Aplikasi

www.linuxsupports.com

Nameserver Cloudflare

www.linuxsupports.com

Mengganti di Registrar

www.linuxsupports.com

Record di DNS

www.linuxsupports.com

Mengakses VPS di GIO Cloud

www.linuxsupports.com

Memastikan Akses Port

Buka terlebih dahulu akses port SSH (22) dan web (80,443) dari menu : My services > IP
Addresses > Firewall. Setting seperti berikut :

Dan juga buka port forwarding dari menu : My services > IP Addresses > Port Forwarding.

www.linuxsupports.com

Akses Putty

Setelah port ssh terbuka, kita bisa langsung remote VPS menggunakan software Putty
(Windows) atau terminal (Linux & MacOS).
Arahkan langsung ke ip address publik VPS masing-masing dengan menggunakan
username : root dan password masing-masing yang sudah diperoleh pada email masingmasing.

www.linuxsupports.com

10

Persiapan Instalasi Owncloud

www.linuxsupports.com

11

Konfigurasi Repository 1

Repository Ubuntu 14.04 yang digunakan masih menggunakan repository luar negeri, sehingga proses
instalasi biasanya berjalan lebih lambat. Maka sebaiknya diganti ke repository lokal. Bisa
menggunakan repository dari ITB atau UI.
Backup file sources.list :
# mv /etc/apt/sources.list /etc/apt/sources.list.orig

Edit file sources.list :


# nano /etc/apt/sources.list

Masukkan script berikut :

deb ftp://ftp.itb.ac.id/pub/ubuntu trusty main restricted universe multiverse


deb ftp://ftp.itb.ac.id/pub/ubuntu trusty-updates main restricted universe multiverse
deb ftp://ftp.itb.ac.id/pub/ubuntu trusty-security main restricted universe multiverse
deb ftp://ftp.itb.ac.id/pub/ubuntu trusty-backports main restricted universe multiverse
deb ftp://ftp.itb.ac.id/pub/ubuntu trusty-proposed main restricted universe multiverse

www.linuxsupports.com

12

Konfigurasi Repository 2

Atau bisa gunakan script berikut untuk UI :

deb http://kambing.ui.ac.id/ubuntu/ trusty main restricted universe multiverse


deb http://kambing.ui.ac.id/ubuntu/ trusty-updates main restricted universe multiverse
deb http://kambing.ui.ac.id/ubuntu/ trusty-security main restricted universe multiverse
deb http://kambing.ui.ac.id/ubuntu/ trusty-backports main restricted universe multiverse
deb http://kambing.ui.ac.id/ubuntu/ trusty-proposed main restricted universe multiverse

Simpan file dengan menekan CTRL + X > Y > Enter.

Lalu ketikkan perintah berikut untuk mengupdate list repository yang baru :
# apt-get update

www.linuxsupports.com

13

Testing Webserver & Domain

Kita akan tes terlebih dahulu apakah VPS kita sudah bisa diakses melalui publik dengan
menggunakan domain yang sudah disetup. Pertama-tama kita install webserver apache
terlebih dahulu :
# apt-get install apache2

Kemudian coba akses melalui browser ke domain masing-masing dan pastikan sudah
muncul halaman default apache. Disini saya menggunakan domain owncloud1.cilsy.id

www.linuxsupports.com

14

Testing Webserver & Domain

www.linuxsupports.com

15

Instalasi Owncloud

www.linuxsupports.com

16

Instalasi Paket Owncloud

Owncloud memerlukan webserver, php, dan database seperti aplikasi berbasis web pada
umumnya. Disini menggunakan webserver apache dan database mysql. Tetapi kalian juga
tetap bisa menggunakan webserver nginx maupun database lain seperti sqlite.
Install terlebih dahulu paket-paket yang dibutuhkan
# apt-get install php5 php5-gd php5-curl php5-zip php5-dom php5-xmp php5-simplexmp
apache2 libapache2-mod-php mysql-server php-mysql

Jika diminta memasukkan password database, isikan password database baru untuk root
mysql kalian masing-masing.
Setelah instalasi selesai, restart service apache kalian masing-masing :
# service apache2 restart

www.linuxsupports.com

17

Pembuatan Database 1

Kita perlu membuat database untuk aplikasi owncloud ini. Kita akan membuatkan 1 buah database baru
dan juga 1 user database baru yang memiliki hak akses terhadap database tersebut. Perintahperintahnya adalah sebagai berikut :
# mysql -u root -p
mysql> create database ownclouddb;
mysql> create user ownclouduser;
mysql> set password for ownclouduser = password("123");
mysql> grant all privileges on ownclouddb.* to ownclouduser@localhost identified by '123';
mysql> flush privileges;
mysql > exit;
# service mysql restart

Sesuaikan nama database, nama user dan password yang kalian berikan pada user sesuai keinginan
masing-masing. Pastikan tidak ada pesan error yang muncul saat melakukan perintah-perintah diatas.

www.linuxsupports.com

18

Pembuatan Database 2

www.linuxsupports.com

19

Download Owncloud

Download file aplikasi owncloud :


# wget https://download.owncloud.org/community/owncloud-9.1.0.tar.bz2

Ekstrak file tersebut dan pindahkan ke direktori root webserver agar bisa kita install :
# tar -xvf owncloud-9.1.0.tar.bz2
# mv owncloud /var/www/html
# chown -R www-data.www-data /var/www/html/owncloud

Setelah itu akses owncloud melalui webbrowser ke domain masing-masing. Disini saya
mengakses owncloud1.cilsy.id.

www.linuxsupports.com

20

Instalasi Owncloud 1

Isikan kolom Create Admin Account untuk membuat admin user sesuai keinginan.
Username : admin
Password : admin

Pada kolom database isikan sesuai dengan database yang sudah dibuat :
Database User : ownclouduser
Database Password : 123
Database name : ownclouddb
Database host : localhost

Jika sudah klik Finish Setup

www.linuxsupports.com

21

Instalasi Owncloud 2

www.linuxsupports.com

22

Instalasi Owncloud 3

www.linuxsupports.com

23

Mengamankan Owncloud dengan Lets Encrypt

www.linuxsupports.com

24

HTTPS & Let's Encrypt

Sebuah aplikasi lebih aman jika diberikan SSL karena semua traffic yang mengarah ke
aplikasi akan di enkripsi. Ini akan menyulitkan hacker dalam mencuri data dari aplikasi
kalian.
Let's Encrypt merupakan project open source yang digawangi oleh banyak company besar
untuk memberikan fasilitas SSL gratis untuk semua orang. Dengan menggunakan Let's
Encrypt, kita akan mendapatkan fasilitas SSL gratis yang harus diperbaharui setiap 90 hari
sekali. Tapi ini bisa kita akali dengan melakukan auto renewal.

www.linuxsupports.com

25

Instalasi Let's Encrypt 1

Install terlebih dahulu aplikasi git :


# apt-get install git

Install let's encrypt :


# git clone https://github.com/letsencrypt/letsencrypt /opt/letsencrypt

Install SSL pada domain owncloud1.cilsy.id :


# /opt/letsencrypt/lets-encrypt-auto --apache -d owncloud1.cilsy.id

Jika muncul pertanyaan-pertanyaan, jawab sebagai berikut :

www.linuxsupports.com

26

Instalasi Let's Encrypt 2

www.linuxsupports.com

27

Instalasi Let's Encrypt 3

www.linuxsupports.com

28

Instalasi Let's Encrypt 4

www.linuxsupports.com

29

Instalasi Let's Encrypt 5

www.linuxsupports.com

30

Instalasi Let's Encrypt 6

www.linuxsupports.com

31

Auto renewal

Kita akan menggunakan cron sebagai scheduler untuk melakukan renewal sertifikat let's
encrypt setiap 2 bulan sekali. Sengaja sebagai spare saja dari batas maksimal 90 hari.
# crontab -e
Pilih nano saja jika ditanya ingin menggunakan editor apa.

Dibaris paling bawah, tambahkan script berikut :


0 0 1 1,3,5,7,9,11 * /opt/letsencrypt/letsencrypt-auto renew --force-renewal
Simpan file tersebut

Script diatas berarti akan menjalankan fungsi auto renewal setiap pukul 00.00 pada tanggal
1 setiap bulan ke 1,3,5,7,9, dan 11.

www.linuxsupports.com

32

Explore Owncloud : Manajemen User dan Grup

www.linuxsupports.com

33

Manajemen Grup

Membuat Grup
Membuat grup bisa langsung akses dari menu Users > Add Group

Untuk menghapus grup, cukup langsung hapus saja semua user anggota grup tersebut.

www.linuxsupports.com

34

Manajemen User 1

Membuat User
Mengakses menu pembuatan user sama dengan mengakses menu pembuatan grup. Tinggal
masukkan saja username, password, serta ingin dimasukkan dimana grup tersebut.

www.linuxsupports.com

35

Manajemen User 2

Menghapus user
Untuk menghapus user tinggal klik lambang Trash.

Mengedit User
Kita juga bisa melakukan variasi-variasi lain terhadap user seperti memberikan kuota,
memberikan hak akses admin grup pada user, dll.

www.linuxsupports.com

36

Explore Owncloud : Sharing File

www.linuxsupports.com

37

Manajemen sharing

Kita bisa melakukan berbagai macam variasi sharing. Mulai dari pengaturan permission dan
ownership terhadap file/folder yang disharing. Berikut adalah contoh sharing salah satu
folder dimana hanya full akses untuk grup marketing, dan read only untuk grup finance.
Selain itu tidak punya akses.

www.linuxsupports.com

38

Latihan!

Sebuah sekolah ingin membuat datacenter dimana ada folder khusus untuk semua guru
yang bisa full akses, dan juga ada folder murid yang para murid hanya bisa melihat isinya
saja. Nantinya folder murid ini hanya untuk tempat para guru meletakkan file-file soal
ulangan untuk diambil oleh para murid. Murid tidak memiliki akses sama sekali ke folder
guru. Bagaimana kalian membuat solusinya ?

www.linuxsupports.com

39

Explore Owncloud : Instalasi Client di Windows


dan Android

www.linuxsupports.com

40

Client Windows

Download installer client dari https://owncloud.org/install/#install-clients


dengan OS yang dipakai. Disini kita pilih Windows.

www.linuxsupports.com

41

. Pilih sesuai

Client Windows

Lakukan instalasi dengan mengikuti step yang ada. Bagian yang paling penting adalah pada
saat mengisi Server address dan user owncloud yang ingin digunakan login. Disini kita
mengisi server address dengan https://owncloud1.cilsy.id dan user dengan admin dan
admin.
Setelah instalasi selesai tinggal buka folder owncloud melalui Windows Explorer.

www.linuxsupports.com

42

Client Android

Client Owncloud dari Android yang free menggunakan aplikasi bernama Cirrus for
Owncloud. Untuk cara instalasinya mirip dengan client Windows, yaitu bagian terpenting
pada pengisian Server Address dan user serta password yang digunakan untuk login.

www.linuxsupports.com

43

Backup & Restore

www.linuxsupports.com

44

Backup Owncloud

Ada 2 hal yang perlu dibackup dari owncloud. Yaitu folder owncloud yang berisi file-file dan
konfigurasi dan database.
Buat direktori backup :
# mkdir /backup

Backup folder owncloud


# rsync -Aaxv /var/www/html/owncloud/ /backup/owncloud-dirbkp_`date +"%Y%m%d"`/

Backup database owncloud


# mysqldump --lock-tables -h localhost -u ownclouduser
/backup/owncloud-sqlbkp_`date +"%Y%m%d"`.bak

www.linuxsupports.com

45

-p123

ownclouddb

>

Skenario Restore

Coba kita delete seluruh isi folder dan database owncloud untuk mengetes apakah proses
backup telah berhasil.
# rm -R /var/www/html/owncloud/*
# mysql -u root -p
mysql > drop database ownclouddb;
mysql > create database ownclouddb;
mysql > grant all privileges on ownclouddb.* to ownclouduser@localhost identified by '123';
mysql > flush privileges;
mysql > exit;

www.linuxsupports.com

46

Restore Owncloud 1
Restore owncloud data dengan mengeksekusi
perintah berikut :

#!/bin/bash

# rsync -Aaxv /backup/ownclouddirbkp_20160812/ /var/www/html/owncloud/

htgroup='www-data'

Sangat disarankan untuk memperbaiki seluruh


ownership dan permission seluruh file
owncloud setelah proses restore file. Caranya
adalah dengan mengeksekusi 1 buah script.
Buat terlebih dahulu scriptnya dengan perintah
berikut :

find ${ocpath}/ -type f -print0 | xargs -0 chmod 0640

# touch restore-perm.sh && chmod +x restoreperm.sh

chown -R ${htuser}:${htgroup} ${ocpath}/themes/

# nano restore-perm.sh

chown ${rootuser}:${htgroup} ${ocpath}/data/.htaccess

Isi dengan script berikut :

chmod 0644 ${ocpath}/.htaccess

www.linuxsupports.com

ocpath='/var/www/html/owncloud'
htuser='www-data'

rootuser='root'

find ${ocpath}/ -type d -print0 | xargs -0 chmod 0750

chown -R ${rootuser}:${htgroup} ${ocpath}/


chown -R ${htuser}:${htgroup} ${ocpath}/apps/
chown -R ${htuser}:${htgroup} ${ocpath}/config/
chown -R ${htuser}:${htgroup} ${ocpath}/data/

chown ${rootuser}:${htgroup} ${ocpath}/.htaccess

chmod 0644 ${ocpath}/data/.htaccess

47

Restore Owncloud 2

Restore database dengan perintah berikut :


# mysql -h localhost -u ownclouduser -p123 ownclouddb < /backup/owncloudsqlbkp_20160812.bak

Coba test kembali, seharusnya sekarang owncloud kalian sudah bisa diakses kembali.

www.linuxsupports.com

48

Anda mungkin juga menyukai