先日、owncloudのセキュリティ脆弱性の報告を受けました。
ownCloudは、DropboxやBox.net のような、クラウドストレージサービスを
自前で構築できるオープンソースです。
現在は、バージョン9.1になっています。
これまではownCloud 8.2.5 を利用していました。
セキュリティ脆弱性の詳細についてはわかりませんが、
報告があった以上はバージョンアップをしなければ、
ということで急遽アップデートをすることにしました。
バージョンアップの前にバックアップです。
[bash title="owncloudをバックアップ"]
[root@www /]# cd /var/www/scripts
[root@www scripts]# mv owncloud owncloud.bak ... ※1
[root@www scripts]# mysqldump -u root -p OwncloudDbname > owncloud.dump ... ※2
[root@www scripts]# cp -p owncloud.bak/config/config.php . ... ※3
[/bash]
※1はowncloud がインストールされているディレクトリをリネームします。
※2で、owncloudのデータベースに保存されている情報をバックアップします。
※3で、owncloudの設定ファイルをいったん待避します。
英語サイトですが、以下から ownCloud をダウンロードすることができます。
この画面が開くので、右上の「Download」をクリックします。
右上の「Get ownCloud Server」の「Download」ボタンをクリックします。
「Download ownCloud Server」ボタンをクリックします。
ここに、ダウンロード用の「tar.bz2」ファイルへのリンクがありますので、
リンク先のURLをコピーしておきます。
これは最新版のownCloudのダウンロード用URLです。...(1)
ところで、8.2から9.1へ直接アップグレードできませんので
いったん9.0にアップグレードする必要があります。
9.0のダウンロード用URLを取得するために、
上記の画面の右側にある「Looking for older versions」のリンクをクリックします。
ここで「ownCloud 9.0」のリンクをクリックします。
「ownCloud 9.0.8.tar.bz2」のリンクから、
ダウンロード用のURLを取得します。...(2)
まず先ほどの(2)、ownCloud 9.0.8 をダウンロードします。
[bash]
[root@www \~]# wget https://download.owncloud.org/community/owncloud-9.0.8.tar.bz2
--2017-03-18 16:09:41-- https://download.owncloud.org/community/owncloud-9.0.8.tar.bz2
download.owncloud.org をDNSに問いあわせています... 2a01:4f8:192:50d6::3, 2a01:4f8:130:806f::3, 2a01:4f8:190:21ad::3, ...
download.owncloud.org|2a01:4f8:192:50d6::3|:443 に接続しています... 接続しました。
HTTP による接続要求を送信しました、応答を待っています... 200 OK
長さ: 28511394 (27M) [application/x-bzip2]
`owncloud-9.0.8.tar.bz2' に保存中
100%[==================================================================================================>] 28,511,394 4.50M/s 時間 8.0s
2017-03-18 16:09:50 (3.41 MB/s) - `owncloud-9.0.8.tar.bz2' へ保存完了 [28511394/28511394]
[/bash]
ダウンロードしたら、解凍してドキュメントルートに置いて、
そのディレクトリ配下のファイルのオーナーを apache にします。
[bash]
[root@www \~]# tar xvjf owncloud-9.0.8.tar.bz2
[root@www \~]# mv owncloud /var/www/scripts/
[root@www \~]# cd !$
[root@www scripts]# chown -R apache:apache owncloud
[/bash]
バックアップしておいた設定ファイルをコピーした上で、
apache ユーザーになって occ upgrade をすれば完了です。
occ upgrade は、ownCloudのデータベースを最新に構成し直す処理です。
[bash]
[root@www scripts]# cp -p config.php ./owncloud/config/config.php
[root@www scripts]# su apache -s /bin/bash
bash-4.1$ cd /var/www/scripts/owncloud
bash-4.1$ ./occ upgrade
[/bash]
(1)で取得したURLからファイルをダウンロードしたあとは、
上記の8.2から9.0に更新する手順と同じ作業をたどります。
最後に occ upgrade をすれば完了です。
デフォルトでは、ownCloudに保存したすべてのファイルは、
owncloud/data ディレクトリに保持されています。
なので、以下のようにしてデータディレクトリを移動させて完了です。
[bash]
[root@www scripts]# mv ./owncloud.bak/data ./owncloud/
[/bash]
このあと、owncloud の url にアクセスすれば、正常にアクセスできます。
ちなみに、8.2から9.1に直接アップグレードしようとすると、
以下のようなエラーが出て、処理できません。
8.2→9.0→9.1と、順を追ってアップグレードする必要があります。
[bash]
bash-4.1$ ./occ upgrade
ownCloud or one of the apps require upgrade - only a limited number of commands are available
You may use your browser or the occ upgrade command to do the upgrade
Set log level to debug
Turned on maintenance mode
Exception: Updates between multiple major versions and downgrades are unsupported.
Update failed
Maintenance mode is kept active
Reset log level
[/bash]
イルカシステム(株)は、以下のような業務用ウェブシステムのご提案、受託開発、運用を行っております。
中小企業さま向けの社内向け営業支援、顧客管理、経営数値管理システム
経営数値をリアルタイムで見える化し、目標達成度を常に把握することができ、顧客へのフォローもスムースになります
中小企業さま向けの受発注管理、請求入金管理、在庫管理
御社特有の受発注業務、出荷処理をシステム化することで業容拡大への大きなお手伝いとなります
医療業界向けの業務改善システム
※医療業界向けに、臨床研究の無作為割付自動化のための自社サービス「 ムジンワリ 」をご提供しております。
IoTシステムの開発
詳しくは ご提供サービス を参照してください。