ShellHub
https://camo.githubusercontent.com/923ad064af8e9d41fbbcd84f48ab05f4a7315052dd082f95d0d39bc9bdf2e9c6/687474703a2f2f646f63732e7368656c6c6875622e696f2f696d672f6c6f676f2e706e67#.svg
https://github.com/shellhub-io/shellhub/
https://docs.shellhub.io/
SSHクライアントに加え、Webブラウザー やモバイルアプリを経由して、ShellHub 管理下のサーバーにリモートアクセスできるようにするための中央集権型の SSH ゲートウェイ
ShellHub で管理されているホストは ssh <ユーザー名>@<インスタンス名>@<ShellHubのドメイン> のような形でアクセスする
@ が2回出てくるので大丈夫かな?と思えるが 少なくとも ssh コマンドの省略記法では最後に出てくる @ から後ろを接続先として使用するようで問題なかった
例: debug1: Authenticating to example.test:22 as 'hoge@fuga@piyo@demo.device-0'
主な機能
ネイティブSSHサポート
OpenSSH や PuTTY などの標準的なツールを使用して ShellHub SSH を経由した SSH 接続ができる
SCP/SFTP サポート
ShellHub SSH を経由して透過的に SCP/SFTP が使用できる
公開鍵認証対応
ShellHub上でサーバーに設定する公開鍵の管理を集約できる
ファイアウォールルールの設定
SSH 接続を許可したり拒否する設定を細かく制御できる
監査ログ
ShellHub 上の操作、ShellHub SSH への接続状況を監査ログとして取得できる
セッションの記録
トレーニングやデモ、追跡などを目的に ShellHub SSH のセッションを記録できる
インスタンスの管理
ShellHub の管理対象のサーバーには Go で作られた ShellHub Agent をインストールするだけで良い
https://docs.shellhub.io/user-guides/devices/adding
APIの活用
ShellHub には OpenAPI で定義された RESTful API が存在する
記載時点でドキュメント化はされていないが API により管理を自動化する手段となり得る
https://docs.shellhub.io/developers/openapi
関連
https://twitter.com/5st7