Linux : Tutorial install Own Cloud di centOS 7


Selamat Siang bro, duh panas bener di siang ini #gakpenting. lagi ada kesempatan untung online langgsung saja kita hajar tutorial instal own cloud di centos7, kalau di post-post sebelumnya kalau gak salah di tahun 2014 udah ada tutorial ini tapi install nya di OS centos versi 6, kali ini kita akan menginstal nya di centos 7.

udah pada tau kan Own cloud itu apa? kalau belum tau silakan baca di posting sebelumnya klik disini. Oke langgsung saja iya, yang harus di persiapkan adalah vps (virtual private server) atau kalau bro punya dedicated lebih oke, atau gak di virtual machine. tapi disini saya mencoba nya menggunakan VPS server USA bisa lihat harga-harga VPS nya disini leohoster.com.

Langgsung saja kita akan menginstall Nginx, MariaDB & php-fpm 5.4 di centos 7

  • Add Nginx Repository

Untuk menambahkan repositori CentOS 7 EPEL, Buka terminal masukan command berikut :

sudo yum install epel-release
  • Install Nginx

Sekarang repositori Nginx  sudah diinstal pada server, instal Nginx menggunakan perintah yum berikut :

sudo yum install nginx
  • Start Nginx

Nginx tidak akan langgsung run, untuk menjalakan nginx gunakan perintah berikut :

sudo systemctl start nginx

Seletah service nginx di nyalakan silakan di coba membuka domain/ip kamu. http://www.domain-kamu.com

  • Install MySQL (MariaDB)

MariaDB merupakan versi pengembangan terbuka dan mandiri dari MySQL. Sejak diakuisisinya MySQL oleh Oracle pada September 2010, Monty Program sebagai penulis awal kode sumber MySQL memisahkan diri dari pengembangan dan membuat versi yang lebih mandiri yakni MariaDB.

sudo yum install mariadb-server mariadb
  • Start MariaDB

sudo systemctl start mariadb

Gunakan command ini untuk masalah keamanan, menghindari settingan default

sudo mysql_secure_installation
  • Install PHP-FPM

yum install php-fpm php-cli php-gd php-mcrypt php-mysql php-pear php-xml bzip2
  • Install OwnCloud

Download versi terbaru dari ownCloud tersedia di https://download.owncloud.org/dan ekstrak ke direktori pada server Anda:

cd /opt/
wget https://download.owncloud.org/community/owncloud-8.0.0.tar.bz2
tar xfv owncloud-8.0.0.tar.bz2
mv owncloud /var/www/html

User webserver (nginx) perlu untuk dapat menulis ke file dan direktori di dalamdirektori ‘/ var/www/html/owncloud’, sehingga ia dapat dengan mudah dicapai dengan menjalankan perintah berikut:

chown nginx:nginx -R /var/www/html/owncloud

Edit the ‘/etc/php-fpm.d/www.conf’ configuration file and set user and group to nginx:

sed -i s'/user = apache/user = nginx/' /etc/php-fpm.d/www.conf
sed -i s'/group = apache/group = nginx/' /etc/php-fpm.d/www.conf

Buat folder ‘data’ direktori di luar document root, supaya tidak dapat diakses dari web:

mkdir -p /data
chown nginx:nginx /data

ownCloud 8 memerlukan database, berikut ini perintah untuk membuat database baru :

mysql -uroot -p
MariaDB [(none)]> create database cloud;
MariaDB [(none)]> GRANT ALL PRIVILEGES ON cloud.* TO 'userkamu'@'localhost' IDENTIFIED BY 'passwordkamu';
MariaDB [(none)]> flush privileges;
MariaDB [(none)]> quit

Dianjurkan untuk mengamankan ownCloud dengan sertifikat SSL dan memaksa ownCloud menggunakan HTTPS untuk mengenkripsi lalu lintas ownCloud. Anda dapat membeli sertifikat SSL yang terpercaya, atau membuat sertifikat SSL sendiri berikut ini :

openssl req -new -x509 -days 365 -nodes -out /etc/nginx/domain-kamu.com.crt -keyout /etc/nginx/domain-kamu.com.key
chmod 600 /etc/nginx/domain-kamu.com.crt
chmod 600 /etc/nginx/domain-kamu.com.key

Jika sudah, sekarang kita akan mengkonfig nginx nya

nano /etc/nginx/sites-available/domain-kamu.com.conf
server {
    listen       80;
    server_name  domain-kamu.com;.
    rewrite ^ https://$server_name$request_uri? permanent;
}

server {
  listen 443 ssl;
		server_name domain-kamu.com;
		ssl_certificate /etc/nginx/domain-kamu.com.crt;
		ssl_certificate_key /etc/nginx/domain-kamu.com.key;
		root   /var/www/html/owncloud;
  access_log  /var/log/nginx/domain-kamu.com_access.log;
  error_log  /var/log/nginx/domain-kamu.com_error.log;
  index index.php;
  client_max_body_size 2000M;

        rewrite ^/caldav(.*)$ /remote.php/caldav$1 redirect;
        rewrite ^/carddav(.*)$ /remote.php/carddav$1 redirect;
        rewrite ^/webdav(.*)$ /remote.php/webdav$1 redirect;

        error_page 403 /core/templates/403.php;
        error_page 404 /core/templates/404.php;

        location = /robots.txt {
            allow all;
            log_not_found off;
            access_log off;
        }

        location ~ ^/(?:\.htaccess|data|config|db_structure\.xml|README) {
                deny all;
        }

        location / {
                rewrite ^/.well-known/carddav /remote.php/carddav/ redirect;
                rewrite ^/.well-known/caldav /remote.php/caldav/ redirect;
                rewrite ^(/core/doc/[^\/]+/)$ $1/index.html;
                try_files $uri $uri/ index.php;
        }

        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_pass unix:/var/run/php5-fpm.sock;
        }

  error_page   500 502 503 504  /50x.html;
    location = /50x.html {
    root           html;
  }
}

Run the following command to see the ‘session.save_path’ setting:

#cat /etc/php-fpm.d/www.conf | grep session.save_path
php_value[session.save_path] = /var/lib/php/session

Ganti path  “/var/lib/php/session” menjadi “/var/www/html/owncloud/lib/private/session/” Mengaktifkan Nginx server blok yang baru dibuat :

mkdir -p /etc/nginx/sites-available
mkdir -p /etc/nginx/sites-enabled
ln -s /etc/nginx/sites-available/domain-kamu.com.conf /etc/nginx/sites-enabled/domain-kamu.com.conf

Mengedit file konfigurasi utama Nginx (/etc/nginx/nginx.conf) dan tambahkan baris ini:

include /etc/nginx/sites-enabled/*.conf;

Jika sudah, edit “/etc/php-fpm.d/www.conf” ganti line “listen = 127.0.0.1:9000” menjadi “listen = /var/run/php5-fpm.sock”

nano /etc/php-fpm.d/www.conf
;listen = 127.0.0.1:9000
listen = /var/run/php5-fpm.sock

jika sudah Restart  service PHP-FPM dan Nginx

systemctl restart php-fpm
systemctl restart nginx

Jangan lupa Set konfigurasi digunakaan jika server di restart service akan berjalan dengan sendiri nya.

systemctl enable php-fpm
systemctl enable nginx

Selesai dah, sekarang tinggal di buka domain kamu, dan install owncloud nya, gampang kan? Selamat mencoba bro, semoga bermanfaat 🙂

Fahmi

We’re still Pioneers, We Barely Begun. Our Greatest Accomplishments cannot be behind us, cause our destiny lies above us.

2 Comments

  • Januar
    July 24, 2015 at 9:06 am

    Mas fahmi, saya sudah mengikuti seluruh step2 nya dan tidak adalah masalh. Cuma ketikah saya jalankan lewat browser saya ketikkan alamat localhost/owncloude yang tampil adalah nginx error!. Kira-kira itu kenapa ya? Thanks

    • Fahmi
      July 24, 2015 at 5:30 pm

      Hi bro januar, pesan error dari nginx apa iya? coba paste disini config file .conf yang ada di directory “/etc/nginx/sites-available/” kamu.

Leave a Reply