RaspberryPi B+ へ ownCloud
自宅のネット回線が遅いため
YMobile やLTEでダウンロードしたものを
自宅で使うことが多いのですが
そのたびに scp などで転送するのは面倒なので
ownCloud で簡単に共有できるようにします
まず ssh で RaspberryPi B+ へログイン
ssh pi@192.168.10.198
ユーザ名はデフォルトなら pi になる
なおIPアドレスを探すには
Android なら Fing
iPod touch なら Snap
がおすすめ
ログインしたら ownCloud で使う
Apache
MySQL
を
インストール
sudo apt-get update
sudo apt-get install apache2 mysql-server
途中で mysql の root パスワードを聞かれるので
任意のパスワードを入力
もう一回確認のため入力
ちなみにこれは
データベースのパスワードで
あとで ownCloud で使うので忘れずにメモしておくこと
次に ownCloud に必要な言語PHPを
インストール
sudo apt-get -y install libapache2-mod-php5 php5 php5-gd php5-json php5-mysql php5-curl
sudo apt-get -y install php5-intl php5-mcrypt php5-imagick php-apc
次に ownCloud の入手
今回はコマンドを使い直接 RaspberryPi へダウンロード
wget https://download.owncloud.org/community/owncloud-7.0.4.tar.bz2
ダウンロードが完了したら解凍
tar xvjf owncloud-7.0.4.tar.bz2
ちなみに tar コマンドの解説には
【 tar 】 ファイルを書庫化・展開する(拡張子.tarなど)
がわかりやすいのでおすすめ
今回なら
x 書庫からファイルとりだし
v 処理したファイル一覧の詳細表示
j bzip2 で処理
f 指定したファイルを使う
というオプションになる
これで解凍できたので
webサーバーで使えるように
コピーと権限の書き換え
sudo cp -r owncloud /var/www/
-r をわすれるとディレクトリごとコピーできないので
注意
ちょっと固まるけど、これは RaspberryPi の処理が遅いため
PCと比べるとやはり遅め
sudo chown -R www-data:www-data /var/www/owncloud/
で所有者を root から www-data へ変える
これで ownCloud は配置できたけど
https でないと接続できないので
この設定をおこなう
まず https では暗号化するので
これに必要な鍵ペアと証明書をつくる
sudo mkdir /etc/ssl/localcerts
で証明書をおくフォルダ作製
次に証明書と鍵ペアの作製
sudo openssl req -new -x509 -days 3650 -nodes -out /etc/ssl/localcerts/apache.pem -keyout /etc/ssl/localcerts/apache.key
を実行すると
Country Name (2 letter code) [AU]:
と国コードをきかれる
ローカルなのでこれはEnter でOK
State or Province Name (full name) [Some-State]:
もEnter でOK
Locality Name (eg, city) []:
は都市名
これも Enter でOK
Organization Name (eg, company) [Internet Widgits Pty Ltd]:
これは会社の組織名とか部署名
Enter でOK
Organizational Unit Name (eg, section) []:
これは団体名
Enter でOK
Common Name (e.g. server FQDN or YOUR name) []:
はサーバーの名前とかIPなので
ssh で接続しているなら
RaspberryPi のIPを入力
Email Address []:
はメールアドレス
これも Enter でOK
これで証明書と鍵ペアは作製完了
次に apache の設定ファイルを書き換える
ファイルを書き換えるのに vim がなれているので
sudo apt-get install vim
で vim をインストール
失敗したときの保険として
cd /etc/apache2/sites-available/
sudo cp default-ssl default-ssl_bak
cd -
でバックアップをとっておく
cd – は1つ前のディレクトリに戻るコマンド
sudo vim /etc/apache2/sites-available/default-ssl
で設定ファイルを編集
:set number
で番号を表示するとみやすくなる
16行めに
<Directory /var/www/owncloud>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
を追加
49~50行めあたりにある
SSLCertificateFile /etc/ssl/certs/ssl-cert-snakeoil.pem
SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key
を
SSLCertificateFile /etc/ssl/localcerts/apache.pem
SSLCertificateKeyFile /etc/ssl/localcerts/apache.key
に変更し保存
そして htps通信を有効にして
mod_rewriteモジュールを有効化する
sudo a2enmod ssl
sudo a2ensite default-ssl
sudo a2enmod rewrite
あとは apache2 の再起動で設定を反映
sudo service apache2 restart
これで準備ができたので
PCブラウザからアクセスして初期設定
https://サーバーIPアドレス/owncloud
でアクセス
私の場合なら
https://192.168.10.198/owncloud
警告でるけど気にせず続行
これは認証局の証明書を購入しないとでてくる
ローカルでやるなら問題なし
ちなみに購入すると年間で数千円かかるらしい
とりあえず
危険性を理解した上で接続するには
をクリック
例外を追加をクリックするとまたしても
親切に警告をしてくるので
セキュリティ例外を承認
をクリック
これで設定画面が表示される
ユーザ名とパスワードは自分のアカウント作製
なので、任意のものでOK
データフォルダはそのままでOK
/var/www/owncloud/data
になる
データベースのユーザ名は root
データベースのパスワードは
mysql のインストールに設定したパスワード
データベース名は
owncloud
データベースのホスト名は
localhost
のままでOK
設定ができたら
セットアップを完了します
をクリック
これでできるけど
RaspberryPi は処理が遅いのでちょっと
このときに固まる
ログインに成功すると
どのアプリを使うか聞かれるけど
これはxで消しておく
以下は初期状態の画面
管理画面で
最大アップロードサイズを変更しておく
なお最大は2GB
ファイルのアップロードは
アップロードアイコンをクリック
もしくはドラッグ&ドロップで可能
PCの ownCloud のクライアントアプリは無料だけど
スマホやタブレットの場合は有料になる