【Show HN】設定不要でスマホからも爆速アクセス!次世代SSH代替ツール「Reminal」が爆誕
Show HN: Reminal – A zero-config SSH alternative that's also mobile friendly
Show HN: Reminal – A zero-config SSH alternative that's also mobile friendly
SSHの設定にうんざりしていませんか?「Reminal」は、そんな面倒な作業を一切排除したゼロコンフィグなSSH代替ツールです。最大の特徴は、スマホからの操作性も完璧に考慮されている点。どこにいても手元のデバイスからシームレスにサーバーへアクセスできる、現代のエンジニアに必須のツールです。
HNのみんな、こんにちは。作者です。SSHじゃかゆい所に手が届かないことが多くて、Reminalを作ってみたよ。家に置いてあるノートPCがスリープしてたり、電車でスマホからアクセスしたかったり、カフェやホテルのネットワークが厳しくてインバウンドポートが全滅してたり。作業中にノートPCからスマホやiPadへシームレスにシェルを引き継ぎたい、なんてこともよくあるよね。VPNや踏み台サーバー、ダイナミックDNS+ポート開放、あるいはtmuxでSSHをラップするといった解決策は一般的だけど、どれも環境構築が面倒でやりたくなかったんだ。Reminalはコマンド一つで完結する。実行するとセッションID、6桁のPIN、QRコードが表示される。スマホでQRを読み取るか、ブラウザでリレーURLを開くか(xterm.jsベースのターミナルが組み込まれてるから、ビューワー側へのインストールは不要)、あるいは別の端末からreminal connect <id>でフルTTY接続できる。マシン側はアウトバウンドのHTTPS通信しか行わないから、ポートを開放する必要もないし、ネットワークからスキャンされる心配もない。仕組みとしては、マシン側でPTYを保持しつつリレー(Cloudflare Workers + Durable Objects)へ外向きに接続する。ビューワー側も同じリレーに接続する形だ。通信はすべてエンドツーエンドで暗号化される。セッションごとに新鮮な256bit鍵を使ったAES-256-GCMを採用していて、PIN認証を経たX25519ハンドシェイク(EKEスタイル)でビューワーに配布される。接続ごとに一時的な交換を行うから、万が一PINが漏洩しても録画されたトラフィックは読み取れない。リレー側は暗号文しか見えない仕組みだ。認証情報も一時的で、Ctrl+Cを押せばセッションIDとPINは即座に消滅する。5回連続でPINを間違えるとロックアウトされるよ。PTYはマシン側で生きているから、接続が切れてもシェルはそのまま維持される。ノートPCを閉じたりデバイスを切り替えたり、電波の悪い場所を通っても自動で再接続されてスクロールバックも再現される。tmuxもnohupもいらないよ。リレーは今は僕が運用してるけど、Cloudflareの無料枠を使って完全に自己ホストも可能(cd cloudflare && npm run deploy)。興味があればぜひ試してみて。レポジトリ: https://github.com/harshalgajjar/reminal インストール: curl -fsSL https://raw.githubusercontent.com/harshalgajjar/reminal/main/install.sh | sh