ラズパイでNextCloudサーバを動かす
Dropboxなどクラウドファイル共有サービスを利用しているとスマホやPCとのデータのやり取りが簡単にできるようになります。しかし、無料プランだと容量も限られているためあまり大きなファイルは利用できません。
そこで、NextCloudというソフトをインストールするとスマホやPC、ラズパイでDropboxのような仕組みを構築することができます。今回は家の中だけで利用する方法を紹介します。
もくじ(Index)ラズパイ関連の目次へ戻る(工事中)
はじめに
説明の範囲はホームネットワーク(イントラネット)内のみ
下記の2つが分かるようであれば外でも利用できるようになります。こちらを説明しようとすると長くなるので今回の記事ではホームネットワーク内を対象にします。
- 契約しているプロバイダがグローバルIPで外部からアクセス可能かどうか
- MyDNSサービスでドメインを取得する方法を知っている
外部に公開するとNextCloudサーバが様々なネットワーク攻撃に晒されるようになります。ファイヤーウォールやルーターの設定を適切に行う必要があり、私としてはあまりおススメはしたくないのでホームネットワーク内で利用する設定を解説します。
ラズパイは固定IPで設定する
Androidや「BonjourをインストールしていないWindows10」からは「raspberrypi.local」をいうホスト名を見つけることができません。その場合はラズパイを固定IPで設定してIPアドレスで参照できるようにしておきましょう。Bonjourだけのインストール方法は下記を参照してください。
Windowsで「Bonjour」だけ使えますか?(Phile Web)
環境
今回の記事で利用した環境は下記の通りです。バージョンが違うと設定や操作方法が異なる場合があるのでその点はご了承ください。
- RaspberryPi4 4GB
- Raspbian Buster(2020-02-13)
- NextCloud 17.0.3snap1 19303 stable
インストール
snapパッケージのインストール
インストールはsnapを使いました。httpで接続するので良ければパッケージのインストールは3行で完了です。簡単ですね。
sudo apt update
sudo apt install snapd -y
sudo snap install nextcloud
SSL化(いわゆるオレオレ証明書でのSSL化)
let’s encryptでSSL化することもできるのですが、一定期間おきに外部接続しなければならないので面倒です。自分でアクセスするだけであれば自己証明書(いわゆるオレオレ証明書)でも構わないので今回はこちらを利用します。
一部のWebサイトではsudo nextcloud.enable-https という解説もあるのですが、raspbian busterの場合は「sudo snap run nextcloud.enable-https」とsnapコマンドを入れる必要があるようです。
sudo snap run nextcloud.enable-https self-signed
ポート番号を変更したい場合
ポート番号を80や443を他の番号に変えたい場合は、下記のようにすると変更できます。
sudo snap set nextcloud ports.http=81 ports.https=444
URLをIPアドレスでアクセス可能にする
trusted_domainsにサーバーのIPアドレスを登録するとhttps://XXX.XXX.XXX.XXXというURLでアクセスできるようになります。Android端末やBonjourがインストールされていないWindowsからもアクセスできます。(※XXX.XXX.XXX.XXXはラズパイのIPアドレス)
sudo snap run nextcloud.occ config:system:set trusted_domains 1 --value=XXX.XXX.XXX.XXX
以上の手順でサーバーの設定は終了です。
Webブラウザでアクセスし管理者アカウントを作成する
サーバの設定が終わったら、クライアント側からアクセスします。(ラズパイのChromiumBrowserからでも可能です。)ユーザ名とパスワードを用意しておきましょう。
- URL https://ラズパイのホスト名.local または https://XXX.XXX.XXX.XXX
- ユーザ名: adminは避けた方が良いです。(なんでも構いません。)
- パスワード: 管理者用なので忘れないようにしましょう。
プライバシー、証明書のエラーが出た場合
自己証明書(オレオレ証明書)を利用する場合、サーバのURLを開くとNextCloudクライアント、ブラウザやセキュリティソフトで警告が出ます。自分で自分が正しいと言っているだけの証明書なので、ブラウザやセキュリティソフトは認識してくれないためです。
Chromium Browserの警告メッセージの進め方
クライアントソフトのインストール
NextCloudはPCはWindows,Linux,MaxOSX、スマホやタブレットではiOS、Androidで利用できます。下記のリンクからダウンロードしてセットアップしてください。
https://nextcloud.com/install/#install-clients
クライアントソフトのセットアップ方法
こちらの記事を見てください。ラズパイだけはArm対応のバイナリがないためビルドする必要があります。
NextCloudクライアントの証明書エラー画面の対処
NextCloudクライアントを起動した際に下記のメッセージが出たらそれぞれ下記画像のように対処します。
PCのクライアント(Windows,Linux,MacOS)
スマホやタブレット
iOS端末の場合は何度も「このサーバーの証明書…」と繰り返す場合がありますが、一度アプリを終了して再度開くとダイアログが出なくなります。
NextCloudの便利な使い方
ユーザーを複数利用できるので、それぞれの端末で共有したいデータを絞ることができます。
例えば、私は下記のようにユーザを分けています。
- picture : スマホやタブレットと写真やスクリーンショットだけ共有するユーザ
- linux : 母艦WindowsPCとLinuxで開発するソースを共有
- raspi : 母艦WindowsPCとラズパイで開発しているソースを共有
終わりに
ラズパイ4Bの発売により、USB3.0に接続したSSDも利用できるようになりました。NextCloudを使ってみるとファイル共有が楽になるので是非試してみてください。