Open2

Serveoの代わりにngrok without ngrok(SSH)する

okuokuokuoku

昔は ssh 単体で使えるHTTPSトンネルとして serveo というのがあったけど、いつのまにやら消滅していた。

今はLocaltunnel https://theboroer.github.io/localtunnel-www/ のようなサービスも有る

https://zenn.dev/tantan_tanuki/articles/a8cc715272aa71

けどまぁngrokがSSH単体で使える方法を提供し始めたので、それで良いんじゃないか。

https://blog.ngrok.com/posts/ngrok-october-update-no-grok-oauth-and-webhooks-for-all

okuokuokuoku

使う

localhostのポート 3001 にhttpサーバが立っていると仮定する。ngrokの管理画面 でssh public keyを登録し、

$ ssh -R 443:localhost:3001 tunnel.jp.ngrok.com http

のようにすれば、

ngrok (via SSH) (Ctrl+C to quit)

Account     okuoku (Plan: Free)
Region      jp
Forwarding  https://176c-106-178-160-138.jp.ngrok.io

としてforwardされる。サンプルでは us リージョンを使っているが、 jp リージョンも存在する。

ngrokは着地側、つまり -R オプションの 左側 のポート番号で自動的にプロトコルを選択する。今回は 443 を与えているのでhttpsになる。このとき、 localhost:3001 の方はhttpsサーバである必要はない。