質問: vpnを使用せずにtlsを介してすべてのwebトラフィックをリダイレクトする 仮定:サーバ: 静的ipv4アドレスを使用して、パブリックインターネット上でルーティング可能なdebiansqueezeサーバーがあります。 サーバー上のソフトウェアを変更するための無制限のアクセス権があります。 サーバーは任意のポートでリッスンし、ファイアウォールルールを再構成できます。基本的に、サーバーに実行させることができる内容に制限はありません。 クライアント: firefox、javaプログラム、.netプログラム、およびlocalシステム(ロックダウンされたwindowsデスクトップ)で管理者アクセスを必要としないいくつかのネイティブ実行可能ファイルを実行できます管理者権限なし)。 firefoxにアドオンをインストールできます。 ループバック(localhost)インターフェイスの任意のポートでリッスンできます。したがって、前述のプログラムcanは、プロキシを経由せずに、ローカルポートにバインドし、任意のネットワークi/oを実行します。 すべてパブリックインターネットアクセスは、多くのサイトをブロックし、慎重なステートフルインスペクションを行う制限付きhttpプロキシを介してルーティングされます。ポート80では、httpのみを許可します(tls/sslは許可しません)。ポート443では、ドメイン名/ ipアドレスによってブロックされていないリモートホストへのconnectベースのssl/tlsを許可します。 制限付きhttpプロキシ実行しないプロキシを介して許可されるtls接続のディープパケットインスペクションを実行し、実行しないこれらの接続に対して中間者攻撃を実行します。 私がアクセスできる上記のサーバーは、プロキシによってブロックされていますnot。 ゴール:firefoxから発行されたhttpおよびhttpsリクエストを、上記のサーバーを介してssl/tls経由でルーティングしたいall。「目標」に関するその他の注意事項: エンドポイントサイト(たとえば、http://superuser.com)サーバーに対してssl/tlsを使用していませんが、ssl/tlsを使用したいクライアントからサーバーへ、暗号化されているかどうかに関係なく、サーバーにhttpリクエストを実行させます- -希望の目的地へ。 i 気にしないサーバーがsslトラフィックを「平文で」見ている場合。言い換えると、リモートサーバーが次のようにアクセスされている場合、ローカルクライアントからリモートサーバーに至るまで、完全なエンドツーエンドのssl暗号化は必要ありません。 https://google.com。言い換えれば、私はtrustサーバーが私のデータの機密を保持します。 管理者権限を必要とせず、32ビットのwindows7で実行できるソフトウェアまたはfirefoxアドオンをインストールしたいと思っています。 プロプライエタリよりもオープンソースソフトウェアが好まれ、ライセンス料が必要なソフトウェアよりもフリーウェアが好まれます。 新しいソフトウェアをコード化するよりも既存のソフトウェアの方が好まれますが、それが唯一の方法である場合はコードを記述してもかまいません。 私は次のことを説明する大まかに説明された「解決策」を探しています。 クライアントにはどのようなソフトウェアが必要ですか?知っている特定のソフトウェアパッケージがある場合は、それに名前を付けます。それ以外の場合は、クライアントソフトウェアが何をしなければならないかを説明してくださいdo。 サーバーにはどのようなソフトウェアが必要ですか?知っている特定のソフトウェアパッケージがある場合は、それに名前を付けます。それ以外の場合は、サーバーソフトウェアが何をしなければならないかを説明してくださいdo。 上記の特定のソフトウェアパッケージに名前を付けた場合は、私の目標を達成するためにセットアップするために必要な構成パラメーターを説明してください。 何らかの理由でこれが不可能であると思われる場合は、理由について説明してください。 私が試したがうまくいかないこと サーバーにsquidをインストールして、サーバーに独自の標準httpプロキシを設定しようとしました。 firefoxで通常のhttpを介してwebサイトを要求すると、firefoxも通常のhttpを介してサーバーにアクセスしようとします!ローカルネットワーク上のプロキシが可能であるため、これは受け入れられません。もちろん、クライアントとサーバー間の通常のhttpトラフィックを監視および/またはブロックします。 vpnは機能しません、ポート443でリッスンしているopenvpn over tlsもありません。これは、ローカルコンピューターにレイヤーを実行できるtunネットワークアダプターをインストールする権限がないためです。 3ルーティング、またはレイヤー2ルーティング(例:tap)を実行することもできません。つまり、openvpnをインストールするには管理者権限が必要であり、一時的に管理者権限を持っていたとしても、インストールされていることに気付いた場合、会社はそれほど満足しません。 javaまたは.netプログラムは、特にプログラムの追加と削除にインストールされておらず、openvpnのようなカーネルドライバーコンポーネントがない場合は、それほど目立ちません。
回答: サーバーにプロキシを設定する途中です。残りの半分はサーバー上のsslであり、puttyを使用してssl対応のhttpプロキシに接続し、firefoxを設定してすべてを127.0.0.1にプロキシするクライアント上のローカルプロキシです。私はputtyセットアップのために簡単なグーグルをしたところ、これを見つけました: https://mariobrandt.de/archives/technik/ssh-tunnel-bypassing-transparent-proxy-using-apache-170/