2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Raspberry Pi 5 を使って RAID 1 + Samba + VPN(Tailscale)対応の NAS を構築する方法

Last updated at Posted at 2025-03-22

はじめに

Raspberry Pi 5 を使って、RAID 1(ミラーリング)を構築し、Samba でファイル共有できる NAS を作成 しました。さらに、Tailscale を使って外出先からも安全にアクセス可能 にしました。

本記事では ローカルと外部(VPN)からアクセスできる NAS のセットアップ方法 をわかりやすく解説します。


使用した機器

🖥 ハードウェア

  • Raspberry Pi 5(8GB モデル)
  • microSDカード(最低 16GB 以上、Ubuntu をインストール)
  • USB接続のHDD / SSD ×2(RAID 1 構築用)
  • USB 3.0 対応のHDDケース または SATA-USBアダプター
  • 有線LAN接続(Wi-Fi でも可だが安定性のため有線推奨)

⚙️ ソフトウェア

  • Ubuntu Server 22.04 LTS(64-bit)
  • mdadm(RAID 1 構築用)
  • Samba(ファイル共有)
  • Tailscale(VPN 接続用)

📌 ① Raspberry Pi 5 に Ubuntu 22.04 をインストール

1. Ubuntu のダウンロード

2. Raspberry Pi Imager で書き込み

  1. Raspberry Pi Imager をダウンロード&インストール
  2. OS に ubuntu-22.04-server-arm64.img を選択
  3. microSD または SSD に書き込み

3. 初回ログインとパスワード変更

  1. Raspberry Pi に microSD / SSD をセットし、電源 ON
  2. HDMI + キーボードを接続し、以下のデフォルト情報でログイン
    ユーザー名: ubuntu
    パスワード: ubuntu
    
  3. 初回ログイン時にパスワードを変更

📌 ② SSH の有効化(リモート接続を可能にする)

Raspberry Pi をリモートから操作できるようにするために、まず SSH(Secure Shell)を有効化します。これにより、毎回モニターやキーボードを接続しなくても、他の PC から接続して作業ができるようになります。

1. SSH サーバーをインストール

sudo apt update
sudo apt install -y openssh-server

2. SSH を有効化して起動

sudo systemctl enable ssh
sudo systemctl start ssh

3. 接続テスト(別の端末から)

Raspberry Pi の IP アドレスが分かっている場合は、以下のようにして接続できます:

ssh ubuntu@<RaspberryPiのIPアドレス>

📌 ③ ローカル IP アドレスの固定

NAS を安定運用するためには、Raspberry Pi の IP アドレスを固定することが重要です。デフォルトでは DHCP により起動ごとに IP アドレスが変わる可能性があるため、IP を手動で設定しましょう。

1. 現在の IP アドレスを確認

ip a

出力例:

2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500
    inet 192.168.1.150/24 brd 192.168.1.255 scope global dynamic eth0

ここでは inet の後ろの 192.168.1.150/24 が現在の IP です。


2. ルーターのゲートウェイ(デフォルトルート)を確認

ip r | grep default

出力例:

default via 192.168.1.1 dev eth0 proto dhcp metric 100

ここで 192.168.1.1 がゲートウェイのアドレスです。


3. ネットワーク設定ファイルを編集

sudo nano /etc/netplan/99-manual.yaml

以下のように編集します(例:192.168.1.100 に固定):

network:
  ethernets:
    eth0:
      dhcp4: no
      addresses:
        - 192.168.1.100/24
      gateway4: 192.168.1.1
      nameservers:
        addresses:
          - 8.8.8.8
          - 1.1.1.1
  version: 2

4. 設定を適用

sudo netplan apply

5. 固定 IP が設定されたか確認

ip a | grep inet

192.168.1.100 が表示されていれば設定完了!


6. 他の端末から SSH 接続(確認)

ssh ubuntu@192.168.1.100

✅ 補足

  • IP アドレスは ルーターの DHCP 範囲と重複しないように設定してください。
  • 固定 IP をルーター側で設定する(DHCP 予約)という方法もありますが、今回は Raspberry Pi 側で設定する方法を紹介しています。

📌 ④ RAID 1(ミラーリング)の構築

1. RAID 構築用の mdadm をインストール

sudo apt install -y mdadm

2. RAID 1 を作成(HDD 2台: /dev/sda /dev/sdb

sudo mdadm --create --verbose /dev/md0 --level=1 --raid-devices=2 /dev/sda /dev/sdb

3. ファイルシステムを作成 & マウント

sudo mkfs.ext4 /dev/md0
sudo mkdir -p /mnt/nas
sudo mount /dev/md0 /mnt/nas

4. 再起動後も自動マウントを設定

UUID を確認:

sudo blkid /dev/md0

出力された UUID を /etc/fstab に追加:

sudo nano /etc/fstab
UUID=xxxxxx /mnt/nas ext4 defaults,nofail,discard 0 2

適用:

sudo mount -a

📌 ⑤ Samba の設定(NAS 構築)

1. Samba をインストール

sudo apt install -y samba

2. Samba の設定を変更

sudo nano /etc/samba/smb.conf

末尾に追加:

[NAS]
  path = /mnt/nas
  browseable = yes
  writable = yes
  guest ok = no
  valid users = ubuntu

Samba を再起動:

sudo systemctl restart smbd

3. Samba ユーザーを作成

sudo smbpasswd -a ubuntu

4. Windows / Mac / iPhone から接続

  • Windows: \\192.168.1.100\NAS
  • Mac / iPhone: smb://192.168.1.100/NAS

📌 ⑥ Tailscale を使った外部アクセス設定(VPN)

外出先からも NAS に安全にアクセスできるよう、Tailscale を使って VPN を構築します。Tailscale は設定が簡単で、NAT やポート開放なしでセキュアな通信が可能です。

1. Tailscale のインストール

curl -fsSL https://tailscale.com/install.sh | sh

2. Tailscale にログインして接続

sudo tailscale up

このとき、URL が表示されるので、ブラウザでアクセスして Google / GitHub などでログインすれば OK。

3. Tailscale IP アドレスの確認

tailscale ip -4

例: 100.101.102.103 のような IP が割り当てられます。

4. 外部からアクセス

外出先の PC やスマホにも Tailscale をインストールし、同じアカウントでログインすると、自宅 NAS に VPN 経由でアクセスできます。

  • Windows/Mac: \\100.101.102.103\NAS
  • Mac/iPhone: smb://100.101.102.103/NAS

📌 ⑦ 動作確認と便利な使い方

RAID 状態の確認

cat /proc/mdstat

Samba 接続確認(Windows)

  • エクスプローラーのアドレスバーに \\192.168.1.100\NAS を入力

Tailscale 経由の接続確認

外出先から NAS に接続できるか確認しましょう。接続できない場合は、Samba のファイアウォールや Tailscale の ACL 設定を見直します。


📌 ⑧ まとめ

この記事では、以下のように Raspberry Pi を使った NAS を構築しました:

  • RAID 1 によるデータの安全性確保
  • Samba による家庭内ファイル共有
  • Tailscale による外部アクセス対応

小型で省電力な Raspberry Pi でも、ちょっとした工夫と設定で立派な NAS が完成します。自宅サーバーの第一歩として、ぜひチャレンジしてみてください!


2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?