【ngrok】ローカル環境をインターネット上に公開する

この記事はブログとプログラミングで生計をたてている海外在住ウェブディベロッパーがわかりやすさにこだわって作成しました

ngrokをインストールする

(1) ngrok公式サイトでzipをダウンロードします
https://ngrok.com/download

(2) zipを解凍し、任意のディレクトリにngrok.exeを置きます。
※パスを通しておきましょう

(3) ngrokアカウントを持っていない場合、新規登録(無料)します。

(4) 登録したアカウントでログインして、ダッシュボード画面を表示します。

(5) Connect your accountに表示されているコマンド(認証トークン)をコピーします

(6) コマンドプロンプト画面にコピーして実行します

./ngrok authtoken [認証トークン]

以上でインストールは完了です

ウェブサーバーを公開する

(1) 以下コマンドを実行します

ngrok.exe http ローカルホスト
ngrok.exe http ローカルホスト:8080

コマンドを実行すると、ngrokサービスが開始され、ステータス、アカウント、発行URLなどの情報が表示されます。Forwardingと書かれた箇所が発行URLに該当します。

httpおよびhttpsのURLが発行されます。

外部公開用のURLが有効になっている(Session StatusOnlineになっている)間は、ngrokダッシュボード画面のEndpointsの下にあるStatusメニューでもURLやステータスを確認できます。

(3) 発行されたURLをブラウザに入力し、アクセスします

(4) 終了時はコマンドプロンプトにてctrl + Cでngrokサービスを停止します

SSHサーバーを公開する

次にSSHサーバを外部公開したいと思います。SSHサーバはデフォルトポートである22/tcpをリッスンして稼働しています。よって、tcp 22番ポートを指定して、ngrokコマンドを実行します。

ngrok tcp 22

実行すると、コマンドターミナルがクリアされて、ngrokの状態画面が表示されます。

まとめ

ngrokはHTTPとHTTPSのフォワーディングエンドポイントが用意されています。HTTPSのエンドポイントではSSL通信が可能です。

さらに特筆すべきは「tcp通信」をも公開することができます。ngrok tcp 22と実行すると、sshサーバを公開することができ、任意のポートのtcp通信を公開できます。telnetもsshもftpも独自通信も公開できます。

このサービスを利用すれば、ローカル環境で作成したサイトをクライアントに公開したり、ローカル環境のトラブルを遠隔でトラブルシュートしたりすることが簡単にできるようになります!

PHP/Javascript/WORDPRESS案件全般承ります

オーストラリアで主に日系企業や個人のお客様からのご依頼でお仕事をしております。この記事についてのご質問またはお困りのことがございましたら、お気軽にお問い合わせください。

タイトルとURLをコピーしました