以前の記事では、スマホで撮った写真や動画を保存するために、Windows 11とDockerを用いてNextcloudというクラウドを構築しました。


ただ、LAN内限定だったので、家でしか接続できないのが難点でした。
そこで、今回は外にいても安全に自宅のWindows PC上のNextcloudに接続する方法を解説します。LinuxのUbuntuでの方法は別記事で掲載しています。


大まかな流れは以下のとおりです。順を追って操作できるようにしています。
以前の記事を踏まえて環境の確認
まず前提条件として、上でも紹介したWindowsにNextcloudをインストールする記事を実際に試してみて、LAN内でNextcloudをインストールしたPCにアクセスできることを確認します。
192.168.X.X:8080 形式のアドレスでアクセスできているはずです。
例えば同じWi-Fiルータに繋がったスマホのブラウザで、次のようにアクセスできていれば成功しています。


このアドレスは、ご自宅のWi-Fiルーターが作ってくれているローカルなものなので外では繋がりません。
外出先でも接続できるようTailscaleと呼ばれるサービスを利用し仮想的なLAN環境を作ります。
なお、Tailscaleについては、こちらの記事に詳しく書かれています。


Tailscaleで家のLAN環境を持ち出そう
Nextcloudのようにサーバーを利用した機能を外出先からアクセスするためには、セキュリティに気を遣う必要があると心配されるのではないでしょうか。
それで、自分のPCを直接ネット上に公開せず、自分で認証した端末だけでアクセスする、そんな⾼セキュリティを提供してくれるTailscaleの出番です。
早速公式ページからインストールしてみましょう。
Windowsへのインストールについては、こちらの記事でも説明されています。


Tailscaleのアカウントを用意
Tailscaleのアカウントを作って作業していきます。個人で使うには⼗分すぎる機能が無料で使えます。
まず、Tailscaleのサイトにアクセスします。
右上の [Get started – it’s free!]をクリック。


Tailscaleの使用を開始するために、GoogleやMicrosoft等のアカウントが使えます。


例えば上の画⾯で[Sign up with Microsoft]をクリックすると以下のような画⾯が表示されるので、お持ちのアカウントで使い始めましょう。
また、すでにブラウザでMicrosoftにログインしたことがあれば、下の方に「ここで使用できるアカウントが⾒つかりました」と表示されるのでそこから選ぶこともできます。


TailscaleのインストールとPCの登録
Tailscaleのインストール
アカウント作成が完了すると次のようなページが表示されます。


もう⼀度Tailscaleのトップページ https://tailscale.com/ を開きます。
右上のほうにある[Download]をクリック。


Download Tailscale for Windowsをクリックして、分かりやすい場所に保存してください。


保存したファイルをダブルクリックするとインストーラーが開きます。
I agree to〜の左側にチェックを⼊れ[Install]をクリック。インストール完了まで数分かかります。


TailscaleにPCを登録
インストールが終了すると以下の画⾯が表示されるので、[Get Started]をクリックします。


[Sign in to your network]をクリック。


ブラウザが開くので先ほどのアカウントでサインインします。


サインインすると以下の画⾯になるので[Connect]をクリック。


ログイン成功のメッセージが表示されます。


ブラウザで次のアドレスにアクセスすると、今登録したPCが⾒つかります。
https://login.tailscale.com/admin/machines
これで、Tailscaleにお使いのPCを登録できたので、[ADDRESSES]項目にある100.〜から始まるIPアドレスで自宅に限らずどこからでも安全にアクセスできます。


ただ、この段階でTailscaleが用意してくれる 100.X.X.X から始まるIPアドレスを用いてNextcloudにアクセスしようとすると、警告が表示されたり、以下のようなエラーページが表示されたりします。


これは故障や不具合ではなく、まだNextcloudがTailscaleの作ってくれたアドレスを知らないからです。
では、このアドレスをDocker上のNextcloudにも教えてあげましょう。
TailscaleのIPアドレスをNextcloudで使うための設定
Tailscaleが用意してくれるIPアドレス(100.X.X.X)でNextcloudを使うためには、⼀度だけNextcloud側で「このアドレスからのアクセスを許可する」という設定が必要です。
WindowsでNextcloudを動かす場合は、以前の記事で紹介したようにDockerを使っています。そのため、Nextcloudの設定はDockerを通して行います。


Docker Desktopで[Containers]→[nextcloud]と順にクリックします。


次に[app]の[︙]をクリックします。


出てきたメニューの[View files]をクリック。


ファイル一覧が表示されるので、順に[ var ] → [ www ] → [ html ] → [ config ]とフォルダをたどっていきます。


たどっていくと、[config]フォルダに[config.php]という設定ファイルがあるの、右クリックします。


右クリックするとメニューが表示されるので、[Edit file]をクリック。


設定ファイルであるconfig.phpが開くので以下を探します。
‘trusted_domains’ =>


数行下に、前回の記事で設定した「1 =>」で始まる行があります。
その次の行に、Tailscaleが提供するアドレスを追加します。
以下のように書きます。100.X.X.X の部分に記入してください。
2 => '100.X.X.X:8080',
ボカしていますが記入すると以下のようになります。


もう一か所、’overwrite.cli.url’ => を探し、値を以下のように、Tailscaleの同じアドレスに書き換えます。
'overwrite.cli.url' => 'http://100.X.X.X:8080',
変更前


変更後


記入後は保存ボタンを押し(下図①)、変更箇所を有効にするため再起動(下図②をクリック)します。


ブラウザでアクセスしてみましょう。設定したTailscaleのアドレスに :8080 を付けたものがNextcloudのアドレスです。
例: 100.X.X.X:8080
100.X.X.X の部分は設定したTailscale提供のアドレス
設定した結果、Tailscaleのアドレスでも正しく表示されるようになりました。ログインしてみましょう 。


このアドレスを使って他のPCやスマホ等からアクセスするためには、それらにもTailscaleアプリのインストールが必要です。次の章でスマホにアプリをインストールしてみましょう。


Tailscaleをスマホにもインストール
スマホにもTailscaleが必要だということで面倒に感じるかもしれません。
ただ、言い方を変えるとNextcloudにアクセスするにはTailscaleをスマホにインストールし、さらに自分のアカウントに自分で登録しない限り、写真などのデータを見ることができないということです。
つまり「URLを知っているだけではNextcloud内にアクセスできない」仕組みになっており、安全に自分だけのクラウドを利用できるということです。
早速アプリストアでTailscaleを検索しインストールしましょう。今回はAndroidで説明しますが、iPhoneなどのアップル製品にも対応しています。


インストール後、アクセス許可を求めるメッセージが出たらOKをタッチします。
アプリが開くので[Get Started] をタッチ。


先ほどPCで作ったTailscaleアカウントにログインします。


以下の画⾯になるので[Connect]をタッチ。
ログインが完了すると通知の許可を求めてくることがあるので許可します。


自分のスマホが登録されているのを確認しましょう。


先ほどNextcloudがインストールされたPCに設定した、100.から始まるTailscaleのアドレスでアクセスしましょう。アドレスの後ろに :8080 を付けるのを忘れないようにします。
スマホのChrome等のブラウザでアクセスし、Nextcloudへログインしてみましょう。


このように、Tailscaleアドレスを使えばスマホのWi-Fiをオフにしてもアクセスできます。
NextcloudをインストールしたPCが起動していれば、どこからでも安全に接続できます。
今、「あなただけのクラウド」が動き始めました。
まだ繋がっただけのNextcloudですが、専用アプリで写真や動画のバックアップなど本格的な運用が可能です。
次回以降はアプリやクラウドの機能を紹介する予定です。












コメント