CentOS6+ownCloud+Nginx+spawn-fcgiでプライベートDropboxを構築 #owncloud #dropbox
ownCloudはDropboxのクローンです。Dropboxと同様にWindows,Mac,LinuxやiPhone,Android用のクライアントもあり、非常に便利です。
今回はCentOS6にownCloudを構築する方法をご紹介します。
ownCloud.org | Your Cloud, Your Data, Your Way!
インストール
php
CentOS6にインストールされているphp5.3にはnullバイト攻撃の脆弱性が残っているようで、そのままownCloudをインストールするとログイン画面で以下のように警告メッセージが表示されます。
Your PHP version is vulnerable to the NULL Byte attack (CVE-2006-7243) Please update your PHP installation to use ownCloud securely.
対策としてphp5.4に入れ替えます。
php関連を全てアンインストール $ yum remove php* 必要なライブラリをremiからインストール $ yum install --enablerepo=remi php-cli php-common php-gd php-mbstring php-mysql php-pdo php-pear php-pear-MDB2 php-pear-MDB2-Driver-mysqli php-pear-Net-Curl php-process php-xml
ownCloud
公式を参考にインストールします。
Install ownCloud on CentOS 6 | DynoBin
yumリポジトリを追加 $ cd /etc/yum.repos.d/ $ curl -LO http://download.opensuse.org/repositories/isv:ownCloud:community/CentOS_CentOS-6/isv:ownCloud:community.repo enabledを0に設定 $ vi /etc/yum.repos.d/isv\:ownCloud\:community.repo ~ enabled=0 ~ インストール $ yum -y install --enablerepo=isv_ownCloud_community,remi owncloud ownCloudディレクトリをnginxのパーミッションに変更 $ chown nginx. -R /var/www/html/owncloud
参考までに、phpのライブラリが足りないと以下の様なエラーが発生します。
Error: Package: owncloud-5.0.13-21.1.noarch (isv_ownCloud_community) Requires: php-pear-Net-Curl Error: Package: owncloud-5.0.13-21.1.noarch (isv_ownCloud_community) Requires: php-pear-MDB2-Driver-mysqli You could try using --skip-broken to work around the problem You could try running: rpm -Va --nofiles --nodigest
spawn-fcgi
epelからインストール $ yum install --enablerepo=epel spawn-fcgi 設定ファイルを編集 $ vi /etc/sysconfig/spawn-fcgi ~ # unixソケットを使う SOCKET=/var/run/php-fcgi.sock OPTIONS="-u nginx -g nginx -s $SOCKET -S -M 0600 -C 32 -F 1 -P /var/run/spawn-fcgi.pid -- /usr/bin/php-cgi" 自動起動on $ chkconfig spawn-fcgi on 起動 $ /etc/init.d/spawn-fcgi start
nginx
リポジトリにnginxを追加 $ cat << EOF > /etc/yum.repos.d/nginx.repo [nginx] name=nginx repo baseurl=http://nginx.org/packages/centos/$releasever/$basearch/ gpgcheck=0 enabled=0 EOF インストール $ yum -y install --enablerepo=nginx nginx 公式を参考に設定ファイルを編集 http://doc.owncloud.org/server/5.0/admin_manual/installation/installation_others.html#nginx-configuration 自動起動on $ chkconfig nginx on 起動 $ /etc/init.d/nginx start
起動確認
https://{domain}/
その他
自己署名証明書
自己署名証明書を使う場合、ownCloudのドメインと証明書のCommonNameが違うとクライアントアプリと同期出来ませんでした。