/
내 데이타는 내 통제하에 - 나만의 클라우드 ownCloud 를 RHEL/CentOS 에 설치

내 데이타는 내 통제하에 - 나만의 클라우드 ownCloud 를 RHEL/CentOS 에 설치


소개

ownCloud 는 PHP 로 개발된 웹 기반 파일 공유 서비스이다. Dropbox 나 Google Drive, One Drive 같은 역할을 수행하며 서버용 소프트웨어가 공개되어 있고 내가 소유한 서버에서 구동할 수 있으므로 개인 자료나 민감한 데이타를 올려야 할 좋은 대안이 될 수 있다.

RHEL/CentOS 6 에서 설치하는 방법에 대해서 정리해 보자.

사전 작업

PHP 로 개발 되었으니 PHP 인터프리터가 필요하다. 최소한의 PHP 버전은 5.4 이며 7 이상을 권장하고 있다. RHEL/CentOS 6 은 PHP 5.3.3 이므로 다른 repository  에서 높은 버전의 PHP 를 설치해야 한다.

PHP 설치

  1. ownCloud 가 필요로 하는 패키지를 설치한다.

    yum install   php56w-gd  php56w-process php56w-xml
    yum install   php70w-gd  php70w-process php70w-xml
  2. PHP 의 upload 파일 크기 제한을 변경한다.(php POST max upload size 조정)


DBMS 설치

SQLite, MySQ, MariaDB 를 지원하지만 SQLite 는 혼자 쓰지 않는 이상 동시성 제어와 확장성 이슈가 있으므로 MySQL 이나 MariaDB 를 설치 하는게 좋다.

DBMS 설치후에 owncloud 가 사용할 계정을 만들어 주자.

CREATE DATABASE owncloud CHARACTER SET utf8 COLLATE utf8_bin;
GRANT ALL PRIVILEGES ON owncloud.* TO 'owncloud'@'localhost' IDENTIFIED BY 'my_password';

Server 설치

패키지 설치

  1. 안정버전 다운로드

    wget https://download.owncloud.org/community/owncloud-10.0.6.tar.bz2
    tar jxvf owncloud-10*tar.bz2 -C /var/www/owncloud
  2. 설정 폴더 소유자를 웹 서버 계정으로 변경하고 파일 저장 폴더 생성 및 권한 조정

    chown -R apache:apache config/ apps/
    mkdir data
    chown -R apache:apache data/
    chown -R nginx:nginx config/ apps/
    mkdir data
    chown -R nginx:nginx data/

웹서버 연동

웹서버 설정

아파치 웹서버 설정 파일에 다음 내용을 추가한다.

<Directory /var/www/html/owncloud>
  AllowOverride All
</Directory>

AllowOverride 가 All 이므로 .htaccess 를 사용하겠다는 의미이므로 실제 설정은 /var/www/html/owncloud/.htaccess 에 있다. 


  1. conf/httpd.conf 에 다음 가상호스트 내용을 넣어주고 아파치를 재구동하면 브라우저로 연결할 수 있다.

    <VirtualHost *:80>
        ServerName owncloud.example.com
        ErrorLog logs/owncloud-error_log
        CustomLog logs/owncloud-access_log common
        DocumentRoot "/var/www/html/owncloud/"
    </VirtualHost>
  2. 아파치 웹서버 재구동

    service httpd restart
  3. 브라우저로 연결하면 다음과 같은 화면이 표시 된다.
     
  4. 사용자 이름과 암호를 설정하고 하단의 "스토리지 & 데이타 베이스" 를 클릭한다.
     
  5. "MySQ/MariaDB" 를 클릭하고 DB 정보를 입력하고 "설치 완료"를 클릭하면 설치가 완료된다.


SSL 로 연결

  1. 클라우드 서비스이며 중요한 데이타가 있을 수 있으므로 보안을 위해 HTTPS 로 연결하는 게 좋다. 클라이언트가 HTTP 로 연결할 경우 HTTPS 로 포워딩 하도록 conf/httpd.conf 를 다음과 같이 수정하자.

    <VirtualHost *:80>
        ServerName owncloud.example.com
        ErrorLog logs/owncloud-error_log
        CustomLog logs/owncloud-access_log common
     
        RewriteEngine on
        RewriteCond %{HTTPS} !=on
    	RewriteRule ^(.*)$ https://%{HTTP_HOST}$1 [R,L]
    </VirtualHost>
  2. /etc/httpd/conf.d/ssl.conf 설정하자.  SSLCertificateFile, SSLCertificateKeyFile 은 환경에 맞게 수정해야 한다.

    <VirtualHost *:443>
      SSLEngine on
      SSLCipherSuite SSLv3:TLSv1:+HIGH:!SSLv2:!MD5:!MEDIUM:!LOW:!EXP:!ADH:!eNULL:!aNULL
      SSLCertificateFile    /etc/pki/tls/certs/localhost.crt
      SSLCertificateKeyFile /etc/pki/tls/private/localhost.key
      ServerName owncloud.example.com
      DocumentRoot "/var/www/html/owncloud/"
      LogFormat "%{X-Forwarded-For}i %l %u %t \"%r\" %>s %b" common_forwarded
      ErrorLog  logs/owncloud-ssl-error.log
      CustomLog logs/owncloud-sslaccess.log combined
    </VirtualHost>
  3. 아파치 웹서버를 재구동한다.

    service httpd restart


Desktop Client 설치

https://owncloud.org/install/ 에서 "Install Desktop Clients"  메뉴에서 사용하는 OS 에 맞는 인스톨러를 다운 받아서 설치하자.

현재 Windows, Mac OS X, Linux 를 지원하고 있다.


같이 보기


Ref


Related content

OwnCloud 관리 커맨드 occ 주요 사용법
OwnCloud 관리 커맨드 occ 주요 사용법
More like this
Laragon(라라곤)으로 Windows 에서 Laravel 개발 환경 구성하기 #1
Laragon(라라곤)으로 Windows 에서 Laravel 개발 환경 구성하기 #1
More like this
데이터 보존(Data Residency)
데이터 보존(Data Residency)
More like this
리눅스에 여러 버전의 php 설치하기(php multiple version)
리눅스에 여러 버전의 php 설치하기(php multiple version)
More like this
vercel serve 로 정적 사이트 서빙하기
vercel serve 로 정적 사이트 서빙하기
More like this
laravel 에서 오라클(Oracle) DB 사용
laravel 에서 오라클(Oracle) DB 사용
More like this