sshview

to English

sshview icon Download on the App Store

このアプリは、SSHターミナルの機能と、ポートフォワードの機能があります。 ポートフォワードにより Proxy jump が可能です。 また、ポートフォワードしたポートを、内蔵ブラウザで見ることができます。 SSH接続をして、 tensorboard や jupyter notebook のコマンドを実行し、 その開いたポートを手元のデバイスにポートフォワードし、ブラウザで見ることができます。 リモートサーバーで実行している、tensorboard や jupyter notebookを、 SSH接続を通じて、手元のiPhoneやiPadで見ることができるアプリです。

ソースコード

コンパイル可能なソースコード一式はこちらで公開しています。 https://github.com/lithium0003/sshview

このプログラムは、openssl ライブラリ https://github.com/openssl/openssl および、libssh ライブラリ https://www.libssh.org/ に依存しています。

ソースコードライセンス

libsshは、LGPL 2.1 opensslは、Apache License 2.0 でライセンスされています。iOSプログラムは、スタティックリンクの方が楽なので、 これらのライブラリは、本体に結合されております。 そのため、総体としてライセンスは、LGPL 2.1となります。

プライバシーポリシー

プライバシーポリシーは こちらです。

スクリーンショット

screenshot 1 screenshot 2 screenshot 3 screenshot 4 screenshot 5 screenshot 6 screenshot 7

操作動画

add server movie ssh terminal movie jupyter notebook movie tensorboard movie

使い方 (iPhone, iPad)

ユーザーデータの作成

最初に、ユーザー認証用のデータを作成します。 アプリのトップを開き、"User ID"をタップして、右上の + ボタンから追加します。

add user 1

新しいユーザーの追加では、タグとなる名前と、ユーザー名、秘密鍵(必要であればパスフレーズも)が必要です。

秘密鍵は、テキストボックスにコピペする他に、ファイルから読み込むこともできます。また、新しい鍵ペアを作成できます。

add user 2

鍵ペアの作成では、鍵タイプを選び、パスフレーズによる保護が必要であれば入力し、generateをタップします。 作成された後は、公開鍵をクリップボードにコピーするか、ファイルに書き出すことができます。 このとき秘密鍵は自動でユーザー情報に追加されます。

サーバーの追加

次に、サーバーを追加します。 アプリのトップを開き、"Servers"をアップして、右上の + ボタンから追加します。

add server 1

サーバーの追加では、タグとなる名前と、ホスト名、ポート番号を入力し、ユーザー認証データを選択します。

デフォルトの接続タイプは、通常の端末です。

サーバーへの接続

サーバーが追加できたら、Server list からリモートサーバーに接続が可能です。

screenshot 2

リストからタップすると、SSH接続が始まります。

サーバー情報の編集

Server list ページでは、項目を右スワイプするか長押しすると、編集可能になります。

リストからサーバーを削除する場合は、左スワイプしてください。

Proxy jump

SSH接続にProxy jumpを使用できます。最初に proxy のサーバーを追加し、次にメインのサーバーを追加します。 サーバー情報のページで。Proxy jump server を選択するところで、proxyとなるサーバーエントリを指定します。 proxyをセットすると、SSH接続は、先にproxyサーバーへSSH接続し、トンネルを通じてメインサーバーへの接続を行います。

Remote command

サーバーの接続タイプを、"Command" にすると、ptyを開かずコマンドの実行のみを行います。 コマンドの標準出力と標準エラーは、ディスプレイに表示され確認できます。

ローカルポートフォワードを介したWebBrowser

サーバーの接続タイプを、"WebBrowser" にすると、リモートサーバー上のwebページを、ローカルポートフォワードを通して見ることができます。 ポート番号は、固定にすることも、動的に取得させることもできます。 動的にポート番号とurlを取得する場合は、コマンドの出力からgrepにより見つけ出します。 tensorboard用とjupyter notebook用のgrep文字列は、あらかじめセットされています。 サーバー上で既にコマンドが動いていて、ポートが空いているときは、ポートを指定し、コマンド欄は空白にします。 接続した際に、コマンドを実行して待ち受けてたポートに対して、ブラウザで見たい際は、コマンド欄に実行したいコマンドを指定します。

目次に戻る

連絡先 contact@lithium03.info