ポート転送不要!自宅サーバーの立て方 【Tailscale】
Tailscaleの導入
Tailscaleをダウンロード、インストール
TailscaleというVPNサービスについては、以下の記事を参考にしていただければと思います。このサービスは非常に多機能で便利であり、さらにVPNの外部からのアクセスも可能です。また、最大100台までの無料提供も行っています。詳細は以下のリンク先の記事をご覧ください。
Tailscaleにログイン
Tailscaleにログインします。アカウントを作成していない方は、Googleアカウント、Microsoftアカウント、またはAppleアカウントを使用して登録してください。登録はブラウザ上で実施されます。料金は一切かかりませんので、ご安心ください。
PC名を設定
PCの名称を設定いたします。初期状態では、PCの本体の名称が設定されていますが、これはサーバーを構築した際のURLにも反映されますので、以下のリンクより変更を行ってください。
サーバーの構築
ここではサーバーの立て方を解説します。
「そんなん、わかってるよ!」という人は飛ばしてください。
サーバーシステム(Node.js)の導入
こちらでは、Node.jsをご利用いただきます。以下のウェブサイトをご覧いただき、サーバーマシンのオペレーティングシステムに適したインストーラーをダウンロードし、インストール手順に従って進めてください。
サーバーを立てる
サーバーのパッケージをインストールするためには、以下のコマンドを使用してください。
npm install -g http-server
サーバー(現段階ではファイルサーバー)を立てるには、配信したいフォルダで以下のコマンドを実行します。
http-server
サーバーを立てることができると、まずはローカルで使えるようになります。
http://localhost:8080/ で閲覧できます。ただし、サーバー機からのみ。8080の部分がポート番号となります。後で使いますのでポート番号を確認してください。
Tailscaleで外部公開
HTTPS通信を使えるようにする
HTTP通信では閲覧時にセキュリティの警告が出るのでHTTPSを利用することをお勧めします。
具体的には、以下の記事に述べられている内容を参考に、まずTailscaleの設定ページで次の項目を確認してください。
外部公開
以下のコマンドを実行します。ポート番号は置き換えてください。
書式)tailscale funnel -bg --https=443 <ポート番号>
C:\Users\user>tailscale funnel -bg --https=443 8080
Available on the internet:
https://nucbox5.dmrwxpdfdpw1x3f-royal.ts.net/
|-- proxy http://127.0.0.1:8080
Funnel started and running in the background.
To disable the proxy, run: tailscale funnel --https=443 off
このようにリンクが表示されれば成功です。
外部から表示されているURLにアクセスするとサーバーとして利用できます。
※例に示した「https://nucbox5.dmrwxpdfdpw1x3f-royal.ts.net/」にアクセスしても開けないことをご了承ください。
以下のように書くとhttps://nucbox5.dmrwxpdfdpw1x3f-royal.ts.net/voice/にアクセスしたときに8081番ポートに接続するようになります。
tailscale funnel --bg --set-path /voice/ localhost:8081
外部公開をキャンセルするには、以下のコマンドを実行します。
tailscale funnel reset
まとめ
サーバーを公開するためにTailscaleを使いました。
TailscaleはGoogle,Microsoft,Appleのアカウントを使って登録します。
PC名がそのままURLに含まれるので、変更を推奨します。
サーバーを立てる方法はさまざまですがNodejsでのやり方を紹介しました。
「保護されない通信」の警告を出さないようにHTTPSに対応させましょう。
サーバーへのアクセスにはTailscaleを経由しますのでサーバー機のTailscaleはずっと起動しておいてください。
最後に
この記事を書くにあたって以下の記事を参考にしましたので紹介させていただきます。
この記事が気に入ったらサポートをしてみませんか?