【Raspberry Pi】NASを作って外出先からiPhoneでアクセスできるようにしよう

post-hero-image

おうちにRaspberry Pi3 Model B+がやってきたから、まずはその可愛さの自慢から始めようかと思っていたんだけど、そんな流暢なこと言ってられなかった。(管理人はRaspbianを入れました。)

どうしてもどうしてもどうしてもNASが欲しいけど高すぎる……

「そこにRaspberry Piがあるじゃろ?自作するのじゃ……!」

安易に考えたのが甘かった。今後もRaspberry Piと良好な関係を築くためにも、私がハマったポイントを整理してみむとす。


* * *


満たすべき要件は以下の通り。

  • Raspberry Pi上にWindows機と共有できるファイルサーバーを作る
  • Raspberry Piは自宅に設置して外に持ち歩かない、外出先からもアクセスできるようにする
  • いちいちPCを開くのは面倒、iPhoneからも見たい
  • 1TBの外付けHDDがあるからそれと繋いで大容量にしたい


欲張りすぎた……。実務経験1年の底辺プログラマにできるのか……?

共有ファイルサーバーを作ろう

先に外出先からのアクセスについて要件を満たす。

自宅のルーターにRaspberryPiを有線で繋ぎ、VPNサーバーを立ててアクセスできるようにする。



俺の技術メモ - Raspberry Pi 2 Model B で L2TP/IPSec VPNサーバを構築してみた

このサイトのその1からその3までの記事を隅々まで読んで、設定を完了させることができた。

次に取り掛かったのが「Raspberry Pi上にWindows機と共有できるファイルサーバーを作る」こと。

Raspberry PiにSamba入れたら動く……、わけじゃなかった。

ハマったポイント1: パッケージのインストール

以下のパッケージのインストールが不足していた。

  • samba
  • samba-common
  • samba-common-bin


Wheezyについての他の記事を参考にしていたこともあって、Jessieは”samba-comomn-bin”がないとWindowsに共有できないことに気付くのに時間がかかってしまった。

またsamba-ad-dcと入力してStatusを確認したりするところをacdcと打っていた。これでは何もできない、残念。

ハマったポイント2:Raspberry Pi側のTCPポート445を開放していなかった

底辺プログラマだからあんまりよくわかってないけどファイル共有ができるようになるらしい。

参考:レンタルサーバー・自宅サーバー設定・構築のヒント - Sambaを使ってファイル共有してみる


iptablesを弄って開けたのはいいけど再起動すると設定が消えてしまう。

iptables-persistentをインストールしたけどsaveコマンドがどうしても動いてくれなかった…

参考: 2.iptables(ファイアウォール)のセットアップ - RaspberryPiで各種サーバー作り! - ある阪大生の物置小屋)

ハマったポイント3:特に設定しない場合、ログインしているWindowsユーザーの資格情報が送信されてしまう

そもそもsambaにユーザー登録が必要だともわからなかった。

「samba ユーザー登録」と検索すれば方法はいくらでもでてくるのでそちらをご参照ください。
(どんどんバージョンアップして新しい方法になるだろうし)

参考:0x80070035エラー Windows10でReadyNASにアクセス出来ない場合の対処法

iPhoneからファイルを閲覧する

さて、次の要件を満たす。

「いちいちPCを開くのは面倒、iPhoneからも見たい」

つまりポートを開放しなくてはならない。
管理人はBuffaloルーター×iPhoneユーザーだっったため、かなりスムーズに設定できた。

参考:うしこlog - VPNでiPhoneからラズパイに接続する

iPhoneにインストールしてファイル共有アプリとして使っているのはこちら↓
Skyjos Co., Ltd.「FileExplorer - File Manager for Computer and NAS」

外付けHDDをマウントする

さて最後の要件。

「1TBの外付けHDDがあるからそれと繋いで大容量にしたい」

Raspberry PiにHDDを刺して、マウントの設定をすることで実現できた。

参考:俺の技術メモ - Raspberry Pi 2 Model Bでファイルサーバを構築してみた

これでようやく管理人もNASデビューを果たすことができた、めでたしめでたし。


後日談(2018.10.27追記)

この記事から約一年間、自宅から実家のHDDへアクセスできるのでとても便利に使っていた。

しかし年が明けた1月のある日、突然接続できなくなってしまった。


状況から考えると、ラズパイに刺さっているSDを24時間フル稼働させて共有ファイルサーバーを実現させていたため、SDが劣化してしまったようだ。

置いていた環境が普通の家の、普通に温度変化の激しい場所だったので、もっと温度変化の少ない場所に置いてあげればよかったのだと反省した。
やってることは24時間フル稼働するサーバーと同じなのだから。サーバー管理と同じぐらい、丁寧に扱うべきだったのだ。

ポンコツプログラマが必死で設定したSDは昨日供養してきた。



今回の一件で、ラズパイ用のSDを含む記憶装置全般は消耗品であるということを理解した。いやー、勉強になった。