先日のJP_Stripe ConnectのLTで教えていただいたserveoを試しに使ってみました!
サイトが英語オンリーなので使ってみた感想と利用方法を残します♪
SSHを使った簡単接続
serveoは登録もインストールも必要なし❗
sshコマンドだけで気軽に利用可能です(*´▽`*)
sshでlocalhost:8080をserveo.netに接続してURLを発行。
ポート番号はlocalhostで動かしているシステムに応じて変更。
ssh -R 80:localhost:8080 serveo.net
Hi there
Forwarding HTTP traffic from https://xxxxxx.serveo.net
Press g to start a GUI session and ctrl-c to quit.
これで接続完了❗
Forwarding HTTP traffic from https://xxxxxx.serveo.net
このhttps://xxxxxx.serveo.net
が発行されたURLなので、ここに接続すればOK❗
サブドメインの固定
ポートの前に指定したいサブドメインをつけるだけ❗
ssh -R local:80:localhost:8080 serveo.net
Hi there
Forwarding HTTP traffic from https://local.serveo.net
Press g to start a GUI session and ctrl-c to quit.
たったこんだけw
ngrokでは有料だったサブドメイン固定があっという間に出来てしまったww
カスタムドメイン設定
カスタムドメインの設定も割と簡単にできます❗
キー作成
まずはssh-keygen
でserveo用のキーを作ります。
※-f serveo
はどちらでもOKです、僕はsshのキーを分けてるので💦
ssh-keygen -f ~/.ssh/serveo
Generating public/private rsa key pair.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /Users/hisayuki/.ssh/serveo.
Your public key has been saved in /Users/hisayuki/.ssh/serveo.pub.
fingerprint登録
作成したキーにfingerprintを書き出します。
ssh-keygen -lf ~/.ssh/serveo.pub
2048 SHA256:csUbcWUwL302un5J********************** hisayuki@morihisayuseinoMacBook-Pro.local (RSA)
この場合、fingerprintはSHA256:csUbcWUwL302un5J**********************まで❗
Route53に登録
AWSを使っているので、今回はRoute53への登録をします。
今回使用するDomainはlocaltest.jupiter-fortune.comとして進めます❗
まずはAレコードにserveoのIPの159.89.214.31を登録します。
次に、textレコードにauthkeyfp=([fingerprint]の形式のTXTレコード)を登録します。
あとはSSHで接続
ssh -R localtest.jupiter-fortune.com:80:localhost:8080 -i ~/.ssh/serveo serveo.net
Hi there
Press g to start a GUI session and ctrl-c to quit.
Forwarding HTTP traffic from https://localtest.jupiter-fortune.com
これでカスタムドメインでの接続も出来ます❗
ただまぁWebhookのテストとかでドメイン固定したいだけならここまでしなくてもいいかなって感じはする。
ngrokに比べたメリット
インストールするものがない!
とりあえずssh
が出来れば誰でも取り入れれますw
URLが変わらない!!
これが一番メリットだと思ってるw
ローカルでフロントからAPI叩くテストや、Webhookテストなどでは最適ですね❗
ngrokに比べたデメリット
ちょくちょく接続が切れてる
長時間放置してたりすると接続が切れてたりする。
これが結構な頻度で切れてるので、autosshを取り入れるのはありかなと。
Automatically reconnect
Use autossh for more persistent tunnels. Use “-M 0” to disable autossh’s connectivity checking (rely on ServerAliveInterval and ServerAliveCountMax instead):
autossh -M 0 -R 80:localhost:8888 serveo.net
こんな感じで公式にも取り入れ方書いてあります。
インスペクタがない
個人的には欲しい機能・・・
出入りのJSONチェックがしたいときはおとなしくngrok等のインスペクタがあるのを使ったほうがよいかなと。
まとめ
さらっとですが使った感想書いてみました❗
無料で手軽さを考えたらかなり優良なサービスです!
Serveo gets better all the time. Leave your email address or follow me on Twitter to get notified of improvements. (Expect about one or two emails per month.)
まだまだ進化し続けるとの記載もあるので、今後のバージョンアップに期待します❗
コメント