毎月恒例のタイムセール祭りは4/24〜26迄

NextCloudをロリポップ!レンタルサーバーに設置し、自分専用クラウドストレージとして活用する

nextcloud-on-lolipop-title特集記事

キャンペーン中ということもあり、新たにロリポップ!のレンタルサーバーを借りることにしました。そこにNextCloudをインストールして外部からも利用できるDropBoxみたいなクラウドストレージで活用しようと考えました。

以前にRaspberry Pi で構築したNextCloudは家庭内のサーバーでした。

>>NextcloudとRaspberry Pi 3B+で作る自分専用クラウド

今回のレンタルサーバーで構築した自分専用クラウドストレージは、画像と書類、音楽ファイルをどこでも取り出せるようにして使っています。贅沢を言わなければコストパフォーマンスは抜群ですよ。少しハマったので要点をご紹介します。

スポンサーリンク

NextcloudとOwncloud

ロリポップ!レンタルサーバーにはOwnCloudの簡単インストール機能があります。もしもOwncloudで良ければ名称やパスワードなどの情報だけで構築できてしまいます。もちろん追加の費用はありません。

実際にサーバーを借りてから、Owncloudも簡単インストール機能で構築しました。同時にNextCloudも構築しました(同サーバー)

数日使ってみた結果、どちらも管理者権限があるわけではないので、自由に設定できないとはいえ、やはり動作についてはそれぞれ多少の問題がありました。それでもトータルで快適だったのはNextCloudです。

今回はNextCloudでご紹介します。

Owncloudでは本当にご紹介することが少ないくらい簡単に構築できますので。

NextCloudを運用する制限

Owncloudはロリポップ!が動作保証している点からみてもあまり余計な設定は必要ありません。それでもクラウドストレージとして使うには色々と制限は出てきます。

システム要件に従うと

NextCloudの公式サイトにあるシステム要件をみると、Apache 2.4 with mod_php or php-fpm (recommended)またはnginx with php-fpmとあります。

レンタルしたロリポップ!サーバーは、Apacheです。これはOKですね。

サーバー側の制限として、php.iniの編集がモジュール版のCGIではできないという仕様です。最初の設定はモジュール版(7.4)でした。これは変更できるので、仮にCGI版にしてもupload_max_filesize(アップロード可能な最大サイズ)は、2MBか20MBから選ぶ形です。これは共用レンタルサーバーなら仕方ありません。

仕様は変更になる場合があります。公式サイトで確認してください。

色んなパターンを試したくなり、CGI版に変更してPHP.iniを書き換えても構築しました。設定のせいか不安定だったので、やはりモジュール版で使うことにして再度インストールし直しました。

モジュール版では変更できないながら、100MBのファイル転送に対応しています。これは実際にファイルをアップロードして試しました。

PHPはバージョン7.4(モジュール版)で動作しました。
ファイル転送サイズは1ファイル100MB上限です。

事前準備

記事執筆時点で成功しているため、同じ環境か似ていれば問題ないと思います。参考までに挙げておきます。

格安レンタルサーバーの契約

今回は無難にスタンダードプランにしてみました。

ちょうど19周年記念キャンペーン中で、スタンダードプラン1年6,600円(税込)でした。初期費用3,000円も無料した。更に後から余分に1年分を無料で利用できる特典付きなので…、実質2年間の利用で6,600円!という破格です。

※追加1年間契約無料キャンペーンは記事執筆時点の本日12/10で終了です。
※初期費用無料キャンペーンは12/31迄。
※独自ドメインずっと無料キャンペーンは12か月以上の契約期間でのご契約&自動更新で適用。

更にずっと無料で使える独自ドメインが1つ付いてきます。本来ならば1,500円/年くらいかかります。

ディスク容量はスタンダードの場合は150GBです。

ストレージとしてはやや物足りないと思います。それでもDropBoxの無料枠は2GBです。いっぱい借りたい人は有料2TBで月額1,500円を払えば良いでしょうしデータは安心でしょう。私は2GBでは足りないけど、あまり費用を掛けたくないので、月額換算で550円、キャンペーンで2年間借りられるから月額275円相当で150GB借りられたことに満足しています。

ロリポップ!もブログシステムであるWordpressを簡単にインストールする機能があります。もしもホームページ・ブログの公開であれば、速度重視のハイスピードプランがおすすめです。

独自ドメインの適用とSSL証明書の有効

レンタルサーバーに独自ドメインを利用しないのならば読み飛ばしてください。

無料で付いてくることもあって独自ドメインを取得しました。注意点として、最初の入金日から7日後にクーポンが送られてきます。その無料クーポンを使って同グループのムームードメインで取得しないとなりません。だから、NextCloudを構築するのも7日間待たないとならないんですよね。

独自ドメインが取得して有効(DNS登録完了)に出来たら、その後に独自SSL証明書を有効にします。

独自ドメインを使用してNextCloudを利用したいのなら、この2つの手順を経てからセットアップに取りかかると手間がありません。

独自SSLのことはこの後.htaccessで触れます。

詳しくは公式サイトで確認してくださいね。

WAFの無効

もう一つ、注意点があります。Owncloudでは大丈夫でしたが、NextCloudではロリポップ!のサービスであるWAF(ウェブアプリケーションファイヤーウォール)は無効(OFF)にしてないと、ファイルのプレビューができませんでした。

WAFを無効にしてからセットアップ

このWAFの適用によってうまく動かない動作がいくつかありました。どこまで影響しているのか分かりません。少なくてもオフ(無効)にしてから問題ありません。

ファイルのアップロードも失敗したり、NextCloud内に追加できるアプリでも不具合がありました。

同じく海外アタックガードも無効にした方が良いというサイトも見掛けました。今回は有効状態でセットアップできて、大きな不具合もないのでそのままにしています。もしも挙動がおかしい場合は無効にすることも手段かも知れません。

データベースの作成

OwncloudもNextCloudもそのままデフォルトでインストールを進めようとすると、SQLiteが選ばれると思います。本格的なDBであるMySQLの方が良いでしょう。

データーベースに接続するユーザーIDなどが必要なので、MySQLは事前に作成しておきます。

MySQLの作成

作成後に確認で表示されるサーバー名やデータベース名などを控えておきます。その情報でNextCloudのインストールを進めることになります。

事前準備まとめ

  1. 独自ドメインの適用とSSL証明書の有効にする
  2. WAFは無効にする(ロリポップ!の場合)
  3. データベースの作成をしておく(MySQL)

少なくてもこれでインストール可能です。
特にWAFは無効にしないとファイル情報(管理プレビュー)などに弊害がありました。

SSDドライブ起動させたRaspberry Pi 4 サクサクと愛用中!

コスパが抜群のSSDドライブは内蔵型でいい
Crucial SSD 480GB BX500 SATA3 内蔵2.5インチ 7mm

Raspberry Pi4はメモリー8GBモデルなら余裕
【国内正規代理店品】Raspberry Pi4 ModelB 8GB 技適対応品

USBブートの構築方法を実践
ラズパイ4をUSB接続のSSDから起動する方法(USBブート)

https転送

無料の独自SSLを設定した後、.htaccessへ以下を追記することで、httpでアクセスしても自動的にhttps接続にしてくれます。

ロリポップ!のマニュアルには以下のようにあります。

RewriteEngine On

# httpをhttpsに統一
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R,L]

URLの書き換え/マニュアル

本来、最下部に追記するには以下のように書く必要があると思います。

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
</IfModule>

一応、両方で試しました。mod_rewriteの記述が無くても動作していました。セオリーとしては書いてあった方がいいかと思いますけど、この辺はレンタルサーバーがどうなっているか分かりません。

どうなるのか?

この設定をすると、仮にURL欄に「http://〜」とタイプしてアクセスしても、「https://〜」へ転送してくれるってことです。

鍵マークが付いているのが分かるでしょう。

ちなみにホームページ・ブログでは、このSSL証明が無いと(https://)Googleさんは認めてくれませんので検索に載りません。セキュリティとしても設定した方が良いでしょう。現在は大抵のレンタルサーバーでは無料で独自SSLを設定できます。

会社組織さんなら有料の独自SSLが良いでしょうけど個人であれば問題ありません。

NextCloudのセットアップ

Nextcloudのセットアップは、phpファイルをダウンロードして、レンタルサーバーの任意のフォルダにアップロードしアクセスすることでインストールできる機能があります。

setup-nextcloud.phpファイルをFTPを使いアップロードします。アップロード先は、インストールしたい場所です。

ドメイン直下にインストールする場合

先の独自ドメインの設定で、ルートをどうするのか決めたと思います。公開(アップロード)フォルダに「.」=同フォルダにした場合はロリポップで決めた名前のフォルダへsetup-nextcloud.phpをコピーします。

アクセスするには独自ドメイン名+setup-nextcloud.phpです。

https://独自ドメイン/setup-nextcloud.php

実際にアップロードした場所(ロリポップ!レンタルサーバーの例)

https://ロリポップのドメイン.jp/setup-nextcloud.php

「.」ではなくフォルダ名を決めたのならそのフォルダ内にsetup-nextcloud.phpをコピーします。

サブドメインの場合

今回、独自ドメインにサブドメインを設定しました。サブドメインは任意のフォルダ名を設定しました。(例えばcloud等)そのルートをどうするのか決められます。(公開(アップロード)フォルダ)

例えばcloudというフォルダをルートにすれば、そのcloud内にsetup-nextcloud.phpをコピーし、Webブラウザからアクセスします。

アクセスするにはルート配下になってる。

https://SUBDOMEIN.独自ドメイン/setup-nextcloud.php

実際にアップロードした場所(ロリポップ!レンタルサーバーの例)

https://ロリポップのドメイン.jp/指定したフォルダ名/setup-nextcloud.php

どちらでもいいが変更は大変

単純に直下でも良いですし、公開するフォルダを設定していても問題ありません。直下だと同じサーバー内でブログなど別のCMSを構築しようとすると厄介なだけです。その場合はサブドメインがおすすめです。

独自ドメインのみでアクセスするか、更にフォルダを付けて少し長いアドレスになるかの違いはあります。

途中で変更することも可能なんですけど、データベースをいじらないとならないので、少し敷居が高くなります。面倒なので最初に決めてからの方が良いでしょう。

セットアップ画面

一番肝心な箇所をご紹介しておきます。ここの項目さえ間違っていなければインストール自体は簡単です。

自分の情報に置き換えてください
管理社のIDとパスワードを決めて入力します。
データフォルダーはそのままデフォルトでOKです。
データベースはMySQL/MariaDBを選びます。
すると下に④のボックスが現れます。
最初はSQLiteになっています。
上から、
データベースユーザー名、パスワード、
データベース名、データベースホスト名です。
データベース名とパスワードは先に作ったDB用のです。
データベース名は作成後に表示されていたものです。
データベースホスト名は、最初は「localhost」になっています。
ロリポップ!で作成したデーターベース名に置き換えてください。
推奨アプリは後から個別に入れたり削除もできます。

そんなに時間もかからずあっという間に終わります。

インストールが完了した画面

ファイル転送100MB制限対策

NextCloudは追加のモジュールアプリがあります。ほとんど無料で導入できます。
実はここが大きな理由でOwncloudを辞めました。

—— 本来のOwncloudがどうかは別にして、少なくてもロリポップ!の簡単インストール機能で入れたOwncloudは、安定こそすれど自由度がなく、アプリもあまり入れられません。ここで紹介するアプリもありませんでした。

Flow Upload

ファイルを分割してアップロードできるアプリにFlow Upload(https://apps.nextcloud.com/apps/flowupload)がありました。大きなファイルを何回かに別けて細切れで送ってくれます。

試したところできました。100MB以上でもOKです。

ただ、CPUに負荷が掛かるので、共用レンタルサーバーだと怖いですね。それに転送量を調整するのに少し難しい。

flowuploadのアップロード画面

見事にBig Buck Bunnyのmp4ファイルが時間はかかれどアップロードできました。サイズは画像のように350MBくらいあります。

Big Buck Bunnyについて

ラズパイの動画テストにも最適な3Dアニメ映画「Big Buck Bunny」

今回は、素直に100MB以下のデータで利用しようと思います。

使い勝手と運用方法

格安レンタルサーバーを使って構築したNextCloudは、どうなのか? ザックリとお伝えします。

NextCloudは同期ができるデスクトップアプリやiOSなどスマホ・タブレットで操作できるモバイルアプリがあります。もちろんLinuxにも対応しています。それらも含め、概ね体感速度は問題ありません。むしろ速度はWi-Fiでもスマホアプリでも通信環境によります。

現在、ラズパイダのサイト内で利用しているキャプチャ画像などはすべてNextCloud内へ上げました。あとから修正したりするのに必要で、枚数もそれなりになってしまっていますので、デスクトップアプリで同期しています。

モバイルアプリでは、音楽ファイルをアップロードして聴いています。現在は主にSpotifyをメインで聴いています。かなりの楽曲が見つかりますが、それでも超マイナーな曲は無かったりします。手持ちのCDのはもうなかなか聴かないので、mp3にしてアップしてみました。実はflac形式にも対応しているので便利です。

一応モザイク処理しています

音楽の再生は追加のモジュールにMusicアプリが2つありまして、どちらもでも再生可能でした。PCで再生すればPCのスピーカーから、iPhoneで再生すればiPhoneで聴けるのは便利です。これで昔のCDを引っ張り出してスマホに転送せずに聴くことができますのでおすすめです。もちろんDropBoxなどでも可能です。マイクラウドってのはまた趣が違い良いですね!

外出先から利用するには、ポートを開放してダイナミックDNSのサービスとSSL認証をしないとなりません。セキュリティを考えると個人で構築するのはとても怖いです。それに速度も期待できません。

レンタルサーバーならば、どこからでもネット回線があればアクセスできるので、Raspberry Piからも利用できます。あまり勝手に使えないレンタルサーバーとはいえ、小さなファイルならば有効です。

1ファイル100MBにはなってしまいますが、150GBのディスク容量があるので、主にあげているファイルは…

  • 作成したドキュメントファイル
  • PDF(主に家電などの説明書)
  • 画像ファイル(主にキャプチャ画像)
  • mp3、Flacの音楽ファイル

特におすすめなのは、説明書のPDFファイルです!
ほとんどのメーカーでは説明書はPDFでダウンロード可能になっています。だから付属していた説明書を捨ててもOKなんですよ。それも古い物だと見つからないこともありますから、私は購入したらPDFでダウンロードして今後はマイクラウドストレージで管理します。

逆に個人情報バリバリのファイルはやはり怖いですね。セキュリティもそうですけど、自分が誤ってNextCloudを不具合状態にさせたらと思うと…。

Piレッド
Piレッド

ロリポップ!レンタルサーバーで構築したNextCloudのお話でした。
今後はこれをRaspberry Piからも利用したいと思います。

おまけのヒント

最初に設定した方がいいのがメールアドレスとメール送信用のSMTP設定です。

メールとロケールだけは設定しよう

これが設定されていないと、パスワードを忘れた時にリセット出来なくなります。別に忘れなくても、PHPやDBに何かあるとアクセスできなくなったりします。(経験談)

再度リセットをかければメールが飛んできて新しいパスワードを設定できます。最初だけのことですから面倒でも設定しておきましょう。おまけでした。

コメント ご感想をお願いします。