Your SlideShare is downloading. ×
Nginx owncloud
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Nginx owncloud

1,005
views

Published on

OwnCloud adalah software suite yang berfokus pada layanan penyimpanan data berbasis lokasi yang independen (cloud storage) dan termasuk kategori Infrastructur as a Services (IaaS) Cloud Computing

OwnCloud adalah software suite yang berfokus pada layanan penyimpanan data berbasis lokasi yang independen (cloud storage) dan termasuk kategori Infrastructur as a Services (IaaS) Cloud Computing

Published in: Technology

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,005
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
36
Comments
0
Likes
1
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. INSTALL OWNCLOUD DAN NGINX DENGAN PHP-FPMOwnCloud adalah software suite yang berfokus pada layanan penyimpanan data berbasislokasi yang independen (cloud storage) dan termasuk kategori Infrastructur as a Services(IaaS) Cloud Computing, berbasis CMS (Content Management System ). ownCloud dibangunberbasis PHP, SQLite/MySQL dan PostgreSQL serta dapat diberjalan disemua platformwindows, linux dan mac.Nginx adalah salah satu server web yang ringan, cepat dan efiesien. Nginx juga merupakanweb reverse proxy dan email (IMAP/POP3) proxy.Konfigurasi Sistem Centos 6.4Konfigurasi centos dan tambahkan repository, disini menggunakan fedora epel untukrepository dan remi. Sebenarnya repository ini tidak didukung secara resmi oleh Centos tapirepository ini memberikan versi terbaru dari aplikasi yang nantinya akan digunakan.[root@dl ~]# rpm -Uvh http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm[root@dl ~]# rpm -Uvh http://rpms.famillecollet.com/eterprise/remi-release-6.rpm[root@dl ~]#yum update -yPastikan SELINUX dalam keadaan disable, perintah dibawah ini untuk memeriksakonfigurasi selinux.root@dl ~]# grep SELINUX /etc/selinux/config# SELINUX= can take one of these three values:SELINUX=disabled# SELINUXTYPE= can take one of these two values:SELINUXTYPE=targeted[root@dl ~]#vi /etc/selinux/config# This file controls the state of SELinux on the system.# SELINUX= can take one of these three values:# enforcing - SELinux security policy is enforced.# permissive - SELinux prints warnings instead of enforcing.# disabled - No SELinux policy is loaded.
  • 2. SELINUX=disabled # pastikan SELINUX = disabled# SELINUXTYPE= can take one of these two values:# targeted - Targeted processes are protected,# mls - Multi Level Security protection.SELINUXTYPE=targeted[root@dl ~]#rebootInstall Nginx, PHP-FPM dan Mysql ServerUntuk menjalankan Owncloud, dibawah ini daftar paket yang harus di install[root@dl ~]#yum install nginx mysql-server php-fpm php-gd php-ldap php-pear php-xmlphp-xmlrpc php-eaccelerator php-magickwand php-magpierss php-mbstring php-mcryptphp-shout php-snmp php-soap php-tidySalah satu dari packet php-sqlite atau php-mysql harus di install tergantung database yangdigunakan, jika owncloud nantinya terintegrasi dengan samba install packet smbclient.Konfigurasi Nginx dan PHP-FPM untuk OwnCloudBuat file konfigurasi owncloud.conf dan simpan pada direktori conf.d pada direktori utamanginx.[root@dl ~]#cd /etc/nginx/conf.d[root@dl conf.d]# vi owncloud.conf---- isi file owncloud.conf ---konfigurasi ini merupakan contoh lengkap untuk owncloud versi 5 dan berjalan untuk ipv4dan ipv4, jika ingin berjalan ipv4 gunakan 80, bukan [::]:80.Pertama, konfigurasi agar direct ke HTTPS ( contoh dl.sampel.com, disesuikan dengandomain yang ada)server { listen 80; server_name dl.sampel.com; rewrite ^ https://$server_name$request_uri? permanent;}
  • 3. Bagian ini merupakan konfigurasi utama owncloud versi 5server { listen 443 ssl; # Buat menggunakan 443 port ssl untuk ipv4 dan ipv6, tergantung kebutuhan. server_name dl.umm.ac.id;root /var/www/owncloud; # Direktori utama owncloud.index index.php; # file seritfikat ssl, buatlah file sertifikat ssl sesuai yang didefinisikan pada konfigurasidibawah ini. ssl_certificate /etc/nginx/certs/server.crt; ssl_certificate_key /etc/nginx/certs/server.key; # Bagian ini membatasi maksimal upload, sesuikan dengan konfigurasi php.ini client_max_body_size 100M; fastcgi_buffers 64 4K; # Konfigurasi halaman error error_page 403 = /core/templates/403.php; error_page 404 = /core/templates/404.php; # Beberapa aturan rewrite rewrite ^/owncloud/caldav((/|$).*)$ /owncloud/remote.php/caldav$1 last; rewrite ^/owncloud/carddav((/|$).*)$ /owncloud/remote.php/carddav$1 last; rewrite ^/owncloud/webdav((/|$).*)$ /owncloud/remote.php/webdav$1 last; # Melindungi file sensitif dari kemungkinan hacking dari luar (intranet/internet) location ~ ^/owncloud/(data|config|.ht|db_structure.xml|README) { deny all; }# Konfigurasi file Utama dengan aturan rewrite. location /owncloud/ { rewrite ^/owncloud/.well-known/host-meta /public.php?service=host-meta last;
  • 4. rewrite ^/owncloud/.well-known/host-meta.json /public.php?service=host-meta-json last; rewrite ^/owncloud/.well-known/carddav /remote.php/carddav/ redirect; rewrite ^/owncloud/.well-known/caldav /remote.php/caldav/ redirect; rewrite ^/owncloud/apps/calendar/caldav.php /remote.php/caldav/ last; rewrite ^/owncloud/apps/contacts/carddav.php /remote.php/carddav/ last; rewrite ^/owncloud/apps/([^/]*)/(.*.(css|php))$ /index.php?app=$1&getfile=$2 last; rewrite ^(/owncloud/core/doc[^/]+/)$ $1/index.html; index index.php; try_files $uri $uri/ index.php; } # Konfigurasi PHP-FPM location ~ ^(?<script_name>.+?.php)(?<path_info>/.*)?$ { try_files $script_name = 404; # sesuaikan dengan host atau port yang digunakan pada direktori php-fpm.d fastcgi_pass 127.0.0.1:9000; fastcgi_param PATH_INFO $path_info; fastcgi_param HTTPS on; fastcgi_param PHP_VALUE "upload_max_filesize = 100M n post_max_size = 100M"; fastcgi_param SCRIPT_FILENAME /var/www/owncloud$fastcgi_script_name; include fastcgi_params; } location ~* ^.+.(jpg|jpeg|gif|bmp|ico|png|css|js|swf)$ { expires 30d; access_log off; }}Simpan file konfigurasi ini.Membuat file sertifikat ssl.Penjelasan lebih lanjut tentang module ssl seritkat baca dihttp://wiki.nginx.org/HttpSslModule
  • 5. [root@dl ~]# mkdir -p /etc/nginx/certs[root@dl ~]# cd /etc/nginx/certs[root@dl certs]# openssl genrsa -des3 -out server.key 1024Generating RSA private key, 1024 bit long modulus....................++++++..............++++++e is 65537 (0x10001)Enter pass phrase for server.key:Verifying - Enter pass phrase for server.key:[root@dl certs]# openssl req -new -key server.key -out server.csrEnter pass phrase for server.key:You are about to be asked to enter information that will be incorporatedinto your certificate request.What you are about to enter is what is called a Distinguished Name or a DN.There are quite a few fields but you can leave some blankFor some fields there will be a default value,If you enter ., the field will be left blank.-----Country Name (2 letter code) [XX]:INState or Province Name (full name) []:Jawa TimurLocality Name (eg, city) [Default City]:MalangOrganization Name (eg, company) [Default Company Ltd]:My CompanyOrganizational Unit Name (eg, section) []:My SectionCommon Name (eg, your name or your servers hostname) []:dl.sample.comEmail Address []:ruslan@sample.comPlease enter the following extra attributesto be sent with your certificate requestA challenge password []:An optional company name []:[root@dl certs]# cp server.key server.key.orig[root@dl certs]# openssl rsa -in server.key.orig -out server.keyEnter pass phrase for server.key.orig:writing RSA key
  • 6. [root@dl certs]# openssl x509 -req -days 365 -in server.csr -signkey server.key -outserver.crtSignature oksubject=/C=IN/ST=Jawa Timur/L=Malang/O=My Company/OU=MySection/CN=dl.sample.com/emailAddress=ruslan@sample.comGetting Private key[root@dl certs]# lsserver.crt server.csr server.key server.key.orig[root@dl certs]#Membuat database OwnCloud di Mysqlsebelum membuat database owncloud jalankan terlebih dahulu mysql, berikut ini langkahuntuk membuat database dan hak akses user ke database yang dibuat.[root@dl ~]# /etc/init.d/mysqld start[root@dl ~]# chkconfig mysqld on[root@dl ~]# mysql -u root -pEnter password:Welcome to the MySQL monitor. Commands end with ; or g.Your MySQL connection id is 1652Server version: 5.1.67 Source distributionCopyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.Oracle is a registered trademark of Oracle Corporation and/or itsaffiliates. Other names may be trademarks of their respectiveowners.Type help; or h for help. Type c to clear the current input statement.mysql> create database owncloud;mysql> GRANT ALL ON owncloud.* TO owncloud@localhost IDENTIFIED BYmypasscloud;mysql> flush privileges;
  • 7. mysql> quitBye[root@dl ~]#Konfigurasi PHP-FPMEdi file php.ini, naikkan nilai post_max_size dan upload_max_filesize sesuai dengan nilaiyang telah didefinisakan sebelumnya pada file owncloud.conf nginx.[root@dl ~]#vi /etc/php.inicari bagian ini dan sesuikanpost_max_size = 100Mupload_max_file_size = 100Msimpan file konfigurasi ini.[root@dl ~]#Sesuaikan user,group dan port php-fpm sesuai yang telah didefinisikan sebelumnya pada fileowncloud.conf nginx.[root@dl ~]#vi /etc/php-fpm.d/www.confcari bagian ini dan sesuaikanlisten = 127.0.0.1:9000user = nginxgroup = nginxsimpan file konfigurasi ini.[root@dl ~]#Menjalankan php-fpm dan nginx[root@dl ~]# /etc/init.d/nginx start[root@dl ~]# chkconfig nginx on[root@dl ~]# /etc/init.d/php-fpm on[root@dl ~]# chkconfig php-fpm onMembangun OwnCloudDownload versi terbaru dari owncloud, ekstrak file ini dan pindahkan ke direktori utama yangtelah didefinisikan sebelumnya pada file owncloud.conf nginx.[root@dl ~]# wget http://download.owncloud.org/community/owncloud-5.0.0.tar.bz2[root@dl ~]#tar -jxvf owncloud-5.0.0.tar.bz2
  • 8. [root@dl ~]# lsowncloud owncloud-5.0.0.tar.bz2[root@dl ~]# mv owncloud /var/wwwchown dan chmod direcktori owncloud agar bisa di akses dan terproteksi hanya untuk userdan group yang didefinisikan.[root@dl ]~#cd /var/www[root@dl ~]#chown -R nginx.nginx owncloud[root@dl ~]#chmod -R 770 owncloudJika nanti direktori data user dibuat di partisi tersendiri, definisikan juga user dan hak aksesuntuk diretkri tersebut[root@dl ~]#mkdir /data/users[root@dl ~]#chown -R nginx.nginx /data/users[root@dl ~]#chmod -R 770 /data/usersTerakhir buka browser dan lakukan instalasi web interface owncloud, sesuai dengan alamatyang telah didefinisikan sebelumnya pada file owncloud.conf nginx. Gambar 1. Proses Instalasi
  • 9. Jika sudah diisi dengan benar, klik finish. Dari sini proses install layanan owncloud sudahselesai dan sudah bisa digunakan.Dari Gambar 2. Setelah proses instalasi sudah dapat login dengan user admin. Gambar 2. Menu LoginDari Gambar 3. Dari halaman ini dapat mengupload file ataupun membuat direktori dan file.Gambar 3. Halaman UsersLayanan private cloud telah selesai dibangun dan dapat digunakan.
  • 10. INTEGRASI OWNCLOUD DENGAN ZIMBRA LDAPSistem authentikasi teintegrasi (Single Sign-on) saat ini merupakan sebuah kebutuhan, hal inikarena memudahkan pengguna untuk mengingat dan mengakses setiap layanan hanya dengansatu authentikasi terintegrasi.Dari Gambar 4. Bagaimana mengaktifkan layanan ldap. Gambar 4.Setelah login sebagai admin, pada bagian pojok kiri atas user admin. Pilih apps dan LDAPuser dan group backend, pastikan sudah enable untuk mengaktifkan.Dari Gambar 5. Informasi Account LDAP, Gambar 5Informasi Base DN isi dengan ou (Organisation Unit) dari domain zimbra, username danpassword sesuai dengan informasi user dan password zimbra.
  • 11. Dari Gambar 6. Test Konfigurasi LDAP Gambar 6.Jika tidak terjadi kesalahan, informasi yang didapat seperti pada Gambar 6.Dari Gambar 7. Pada OwnCloud versi 5 informasi user ldap yang terbaca sudah di enkripsi,hal ini akan lebih aman. Gambar 7.Owncloud sudah terintegrasi dengan zimbra ldap, setiap penggunan layanan mail yangterdaftar pada server zimbra secara otomatis dapat menggunakan layanan owncloud tampaproses pendaftaran.Terima Kasih. Semoga bermanfaat.Wassalamualaikum. Wr. Wb