外からアクセスできるNASサーバーを建てる#1

2019/11/17

以下は友人との会話である。

私「これ見てくれ!昔使ってたPCでNAS建てたぜ!ネットワークはギガビットでストレージもSSDだから爆速だぜ!(自慢)」
友人「外からアクセスできるの?」
私「できません…」
友人「じゃあ、実用性無いじゃん」

悔しい!
一応個人的には自宅内からのみのアクセスできるプライベートNASを目的として作っていましたが、
こうも小馬鹿にされると頭にくるというもんです!

ご要望にお応えして外からアクセスできるようにしてやろうじゃないか!という趣旨の記事になります。

前提

NASにするPCは昔使ってたDELLのXPS。
スペックは下記です。
intel core i7 4770
DDR3 8GB
SSD 512GB
ギガビットEthernet

元々はHDDにwindowsが入っていましたが、今回はUbuntuで構築するため新品SSDに換装しています。

インターネット回線はbiglobeのファミリータイプ。IPは非固定、IPv6オプション付き。

 

大まかな構築手順

1.OSのインストール
2.プライベートNASの構築
3.外からアクセス可能にするための手段検討
4.3を実行

こんな感じで行きます!

この記事では1、2を行っていきます。

OSをインストール

今回はUbuntu 19.04を使います。

なぜ18.04LTSじゃないかって?サポートが長いことより、新しいものが好きだからです。
恐らく18.04LTSでも大して手順は変わりません。

インストールディスクの作成

この手順はwindowsで行います。

1.Ubuntu 19.04をダウンロード。
 Torrentはシーダーが全くいないのでお勧めしません。18.04LTSはいっぱいいたのに…

2.Universal-USB-Installerをダウンロード。

3.4GB以上の適当なUSBメモリを接続し、Universal-USB-Installerを起動。

4.下記画像のように設定したら最後にCreateを押下。

5.無事に終わったらインストールディスクの作成は完了です。

Ubuntuのインストール

注意:PCに接続されているストレージは新品SSD1台のみの想定です。
それ以外にも接続されている場合でかつ、この後の手順で間違えるとデータが消える恐れがあります。不要なストレージは外しておくのが無難です。

1.上記手順で作成したUSBメモリをPCに接続し、起動。

2.無事Ubuntuが起動したら(※1)デスクトップ上にある「Install Ubuntu 19.04」アイコンを起動します。

3.あとは画面に沿って行けば迷うところは無いはずです。日本語だし。
デフォルトの設定で進めると20分くらいかかりました。

4.必要な方はUbuntuの初期設定覚書をも参照ください。

(※1)
1の手順をやってもUbuntuが起動しないときはBIOSの設定(主に起動メディアの設定とか)を見直したり、USBの接続ポートを変えてみたりしてください。

 

プライベートNASの構築

プライベートNAS、つまり同ネットワーク内からのみアクセスできるNASを構築します。
思っているより簡単ですので気負わずに行きましょう。

固定IP設定

IPがDHCPだと何かと面倒なので固定IPにします。

設定→ネットワーク→設定マーク→IPv4タブから、下記画像赤枠の箇所を設定します。
設定値は適宜環境に合わせていい感じにしてください。

sambaのインストール

sambaとはwindowsのファイル共有の仕組みを実装したソフトウェアです。
これを使って簡単にNASとすることができます。

1.下記コマンドを叩いてインストール

$ sudo apt update
$ sudo apt install samba

2.好きな場所に共有用のディレクトリを作成。今回はユーザーのホームディレクトリ直下。

$ cd ~/
$ mkdir share
$ sudo chmod 777 share

3.sambaの設定

$ sudo vim /etc/samba/smb.conf

で、ファイル末尾に下記を追記。
pathの設定は適宜いい感じに(ry

[share]
    path = /home/fishcook/share
    writable = yes
    guest ok = yes
    guest only = yes
    create mode = 0777
    directory mode = 0777

4.samba起動

systemctl restart smbd nmbd

5.sambaを自動起動にする設定

systemctl enable smbd nmbd

動作確認

ここまで出来たら適当なPCからIP直打ちでアクセスしてみてみます。
今回だと「\\192.168.11.127」です。

下記のようにshareフォルダが表示されていたらOKです。

また、フォルダの追加/削除。ファイルの追加/削除ができることを確認しておきましょう。
出来なければ/etc/samba/smb.confの設定を見直してください。

おまけ

今回作った環境を簡単にベンチマークしてみました。
windows→NASへ書き込み。
平均84MB/s(672Mbps)出ています。

今度は逆。
NAS→windowsへ読み出し。
平均113MB/s(904Mbps)出ています。

 

CrystalDiskMarkでも測定してみました。

10ギガビットイーサが欲しくなりますが法外な値段なので導入は無理ですね…
書き込みが無駄に頭打ち食らっているのは何の影響でしょう?知っている人がいたら教えてください。

 

おわりに

Ubuntu+sambaでNASを構築するのはめちゃくちゃ簡単にできます。
余っているパソコンがあるならやってみてはどうでしょうか?

次回は自宅にいなくてもこいつにアクセスできるような環境を構築する方法を調査します。