WebSockets(http://novnc.com)を使用したVNCの実装があることは知っていますが、それでもサーバーが必要です。 SSHを実行しているポートへの単純なクライアント側JavaScriptのみ(Flashなし)接続を作成したいと考えています。 TCPを行うため、WebSocketsが唯一の方法だと思います。コード例はありますか?その他の方法で?
申し訳ありませんが、制約があるため(クライアント側のJavascriptのみ)、古いSSHサーバーに接続する方法はありません。
WebSocketsは単純なTCPではありません。これは、Originポリシーを含む、クライアントとサーバー間のHTTPのようなハンドシェイクを備えたフレームプロトコルです。
Flashは単純なTCP=接続を作成できますが、Originポリシーも適用されます。これを行う方法は、ポート843で同じサーバーに接続し、以下を含む特別なXMLファイルを要求することです。 Originのポリシー。サーバー(任意のサーバー)またはクライアントのいずれかでTCPプロキシへの汎用WebSocketを実行することを希望する場合など、制約を少し緩和することをいとわない場合は、 noVNCにはCとpython WebSockets to TCP proxy: http://github.com/kanaka/noVNC/tree/master/utils / 。
役立つと思われるその他の情報:
現在のWebSocketドラフト: http://tools.ietf.org/html/draft-hixie-thewebsocketprotocol-76
フラッシュポリシーサーバー(Linux/UNIX with socat)を実行する簡単な(安全でない)方法を次に示します。 http://github.com/kanaka/noVNC/blob/master/docs/flash_policy.txt
フラッシュポリシーファイルの詳細: http://code.google.com/p/doctype/wiki/ArticleFlashSecurity
serfish をご覧ください。これは、SSHサーバーにアクセスするためのソリューションです。ただし、sshと同じサーバーでWebアプリケーションをホストしている場合は、 Shell in a box などの他の解決策があります。
まだ検索している人にとって、paramikojsが答えになる可能性があります。
現在、同様の問題が発生しています。SSHJSクライアント側の実装が必要であり、BSDライセンスを取得する必要があります。残念ながらparamikojsはGPLライセンスを持っているようです。
優れたOpenRISCエミュレーター jor1k のような完全なネットワークサポートを備えたLinuxエミュレーターを使用することは間違いなく可能です。
私は browser-tools.net を作成したことに注意してください。これは、さまざまなプロジェクトからのブラウザー内ツールのコレクションです。