MENU

中国で作る外出先からアクセス可能なファイルサーバー【raspberry pi】

記事の内容
  • raspberry piを用い、外出先からアクセス可能なファイルサーバーの作り方をまとめました。
  • 基本的にGoogleの上位に出るサイト様と同様の手法を用いています。
  • 中国のネット制限に対応しています。
  • Windowsとのファイル共有に対応しています。
目次

用意するもの

  • raspberry pi (以下、ラズパイと記載)
  • 外付けHDD(ラズパイのUSB電力供給だと不安定なので、電源アダプター付きが望ましい)
  • ポート開放できるルーター

構築手順

DDNSの取得

外出先からNASにアクセスする際、住所となるルーターのIPアドレスが必要です。

しかし、一般的なネット回線契約であればIPは変動するため、DDNSサービスを利用します。

以下のDDNSサービスは、中国でも無料で使用できるため利用しました。

あわせて読みたい
Free DDNS Free Dynamic DNS service - https://freemyip.com

ラズパイのDDNS設定

上記で紹介した様なDDNSは、特定のアドレスにアクセスすることでIPを更新しています。

STEP
Ddclient のインストール

IPの更新を自動で行ってくれる Ddclient をラズパイにインストールします。

sudo apt update && sudo apt upgrade -y
sudo apt install ddclient -y
STEP
Ddcliant設定ファイル変更

インストールを終えたら、以下のコマンドにてnanoエディタを開き、ファイルを変更します。

sudo nano /etc/ddclient.conf
ssl=yes
use=web, web=myip.dnsomatic.com

#freemyip.com
custom=yes
server=freemyip.com
protocol=dyndns2
login=「取得ドメインのトークン」
password=「取得ドメインのトークン」
「取得ドメイン名」.freemyip.com

ドメイン取得後に遷移するページの「If you use ddclient…▼」にトークン等は記載されています。

STEP
Ddcliant 自動化

次に、Ddcliantを起動時に実行させる設定を行います。

sudo nano /etc/default/ddclient

以下の様に変更。

10分毎にルーターのIP確認し、変更していれば自動更新するようになる。

# Configuration for ddclient scripts 
# generated from debconf on Thu Jan 16 05:14:29 UTC 2020
#
# /etc/default/ddclient

# Set to "true" if ddclient should be run every time DHCP client ('dhclient'
# from package isc-dhcp-client) updates the systems IP address.
run_dhclient="false"

# Set to "true" if ddclient should be run every time a new ppp connection is 
# established. This might be useful, if you are using dial-on-demand.
run_ipup="false"

# Set to "true" if ddclient should run in daemon mode
# If this is changed to true, run_ipup and run_dhclient must be set to false.
run_daemon="true"

# Set the time interval between the updates of the dynamic DNS name in seconds.
# This option only takes effect if the ddclient runs in daemon mode.
daemon_interval="10m"

設定後、以下のコマンドで問題なく動くことを確認します。

動かない場合は、「sudo nano /etc/ddclient.conf」を修正してみてください。

sudo ddclient -daemon=0 -verbose

問題なければ以下のコマンドで、起動時に自動化させます

sudo service ddclient restart

VPN設定

下記サイト様を参考に、ラズパイにWireguardをインストールし設定を行ってください。

PiVPN のBashファイルへのアクセスは中国IPだと蹴られます。(アクセス先がgithubなので)

従いまして、Windows等でダウンロードしラズパイに転送して実行しましょう。

設定後に生成される、.confファイルを用いてVPN接続を行います。

Device Plus - デバプラ
ネットワークに外出先からアクセス! ラズパイ(Raspberry Pi)とWireguardで作るVPNサーバ | Device Plus ... ネットワークに強いLinuxをベースにするラズパイ(Raspberry Pi)を使えばVPNも簡単に構築できます。ネットワーク内にあるラズパイを経由して外出先からアクセスするVPNの...
DNSサーバーについて

中国では使えるDNSサーバーが限られるため、以下の「119.29.29.29」を使用しました。

あわせて読みたい
Public DNS+——DNSPod推出的域名递归解析服务 DNSPod是国内提供智能DNS产品的网站,致力于为各类网站提供高质量的电信、网通、教育网双线或者三线智能DNS免费解析。目前DNSPod已经是国内最大的免费DNS解析产品提供商

ルーターの設定

Wireguardの設定にて定めたUDPポートの開放を行います。

ポートの開放方法はルーターに依存するため、取扱説明書をご参照ください。

ラズパイのIP固定

下記サイト様を参考に、ラズパイのIPを固定しましょう。

GUIでの設定の方が楽ちんです。

ムギークのブログ
ラズベリーパイで固定IPアドレスを設定する - ムギークのブログ はじめに 今回はラズベリーパイで固定IPアドレスを設定してみましょう。 固定IPアドレスの設定方法はCUIとGUIの2通りがあるので、それぞれのやり方を説明します。

HDDのマウント

STEP
exFAT形式でHDDをフォーマット

Windowsでも読み込むことを想定しているので、「exfat」でフォーマットしたHDDを使用します。

STEP
UUIDの確認

HDDを接続した状態で、下記コマンドを実行し、HDDのUUIDを確認します。

sudo blkid
STEP
起動時に自動マウント

下記コマンドを実行。

sudo nano /etc/fstab

最終行に以下を追記。

UUID="step2で調べた値" /mnt/hdd/nashdd exfat defaults,nofail,umask=000 0 0

nofail:HDD未接続時でも起動を許可
umask=000:exfat形式の場合、パーミッションをここで指定するため記載

samba設定

Windowsとのファイル共有のため、sambaをインストールします。

STEP
インストール

下記コマンドでsambaをインストールします。

sudo apt-get install samba
STEP
設定

下記コマンドにて、設定ファイルを変更します。

sudo nano /etc/samba/smb.conf
;   interfaces = 127.0.0.0/8 eth0

これの下に「; hosts allow = 192.168. 10.8.」を追加。

;   interfaces = 127.0.0.0/8 eth0
;   hosts allow = 192.168. 10.8.

下の方にこんな感じで記入。

[pi_nas]
  comment = Share folder
  path = /mnt/hdd/nashdd/share
  create mask = 0777
  directory mask = 0777
  read only = no
  writable = yes
  guest ok = no
  browsable = yes
  force user= pi

各オプションについてはグーグルで検索してください。

STEP
ユーザー追加

「guest ok = no」だとユーザー登録する必要があるので、下記コマンドでユーザーを登録。

sudo useradd "username"
sudo pdbedit -a "username"

接続方法

STEP
Wireguardを起動し、トンネルを有効化
STEP
エクスプローラーでラズパイのIPを入力

おわり

中国でも外出先からアクセス可能なNASサーバーを作ることが出来ました。

家に転がってたラズパイくんやHDDくんは、仕事が出来て喜んでいると思います。

シェアしてくださいな
目次
閉じる