HTTP 経由で VPN 接続を実行できますか?

HTTP 経由で VPN 接続を実行できますか?

ポート 80 を介したトンネルを持つ VPN サーバーに接続し、ファイアウォールによるポートのブロックをすべて排除することは可能ですか?

答え1

始めましょう。私はOpenVPN解決策を好みます

OpenVPN アクセス サーバーは、内部ネットワークやプライベート クラウド ネットワーク リソースへの安全なリモート アクセスや、きめ細かなアクセス制御を備えたアプリケーションなど、幅広い構成をサポートしています。Android および iOS 用のモバイル アプリが用意されているため、スマートフォンからも VPN サーバーにアクセスできます。

Ubuntu/DebianにOpenVPN ASをインストールする

OpenVPN AS は、他の VPN サーバーに比べてインストールと設定が非常に簡単です。

次のコマンドを使用して、OpenVPN AS の最新バージョンをダウンロードします。

wget http://swupdate.openvpn.org/as/openvpn-as-1.8.5-Ubuntu12.amd_64.deb

次のコマンドでインストールします。

xx@server1:~$ sudo dpkg -i openvpn-as-1.8.5-Ubuntu12.i386.deb
[sudo] password for xx: 
 Selecting previously unselected package openvpn-as.
 (Reading database ... 53813 files and directories currently installed.)
 Unpacking openvpn-as (from openvpn-as-1.8.5-Ubuntu12.i386.deb) ...
 Setting up openvpn-as (1.8.5-Ubuntu12) ...
 The Access Server has been successfully installed in /usr/local/openvpn_as
 Configuration log file has been written to /usr/local/openvpn_as/init.log
 Please enter "passwd openvpn" to set the initial
 administrative password, then login as "openvpn" to continue
 configuration here: https://ip-address:943/admin
 To reconfigure manually, use the /usr/local/openvpn_as/bin/ovpn-init tool.

Access Server web UIs are available here:

Admin UI: https://ip-address:943/admin

Client UI: https://ip-address:943/

これで OpenVPN AS がインストールされました。

OpenVPN管理者ユーザーとパスワードを設定する

インストール中に、OpenVPN AS によって openvpn というデフォルトの管理者ユーザーが作成されます。次のコマンドを使用して、ユーザー openvpn のパスワードを設定します。

 xx@server1:~$ sudo passwd openvpn

管理Web UIへのアクセス

https://ip-address:943/admin/ブラウザからURL を使用して OpenVPN アクセス サーバー管理 UI にアクセスできます。リモート システムからアクセスする場合は、943ルーター/ファイアウォールを通過するポートを許可してください。

SSL 警告メッセージが表示されますが、「続行」ボタンをクリックして警告を無視してください。ユーザー名とパスワードの入力を求められます。ユーザー名として openvpn と、先ほど作成したパスワードを入力します。

ログイン後、Agreeライセンス契約に同意しますをクリックします。

これで、管理コンソールにアクセスできるようになりますOpenVPN。この管理コンソールでは、さまざまな VPN 管理作業を実行できます。すべてのメニュー/タブを調べて、必要に応じて必要な値を変更しますが、デフォルト設定でも問題なく動作します。

ページの左側のパネルで に移動しますServer Network Settings。に 変更TCP Port numberに変更80UDP Port number80

設定を保存をクリックしてUpdate Running Server

これがそれです。私たちのサーバーはポートのみで実行され80、使用tcpudpプロトコルも実行されます。

クライアント設定

システムに新しいユーザーを作成する

 sudo useradd vpnvpn

adduserフォルダは必要ないので使用しないでください/home/vpnvpn...ユーザーのパスワードを設定します

 sudo passwd vpnvpn

https://ip-address:943/ブラウザからに移動し、OpenVPNでログインしu: vpnvpnp: vpnvpn

新しいページでリンクをクリックしてくださいYourself (user-locked profile)。ダウンロードできますclient.ovpn

openvpnクライアント システムにパッケージをインストールします。

yy@yy:~$ sudo apt-get install openvpn

次のコマンドで VPN サーバーに接続します。

yy@yy:~$ sudo openvpn --config Downloads/client.ovpn 
 Thu Jun 27 11:36:43 2013 OpenVPN 2.2.1 x86_64-linux-gnu [SSL] [LZO2] [EPOLL] [PKCS11] [eurephia] [MH] [PF_INET6] [IPv6 payload 20110424-2 (2.2RC2)] built on Feb 13 2013
Enter Auth Username:vpnvpn
Enter Auth Password:
 Thu Jun 27 11:36:50 2013 NOTE: OpenVPN 2.1 requires '--script-security 2' or higher to call user-defined scripts or executables
 Thu Jun 27 11:36:50 2013 Control Channel Authentication: tls-auth using INLINE static key file
  -- omitted the rest --

終了。vpnポートにサーバーがあります80

adminネットワーク範囲、ルーティングなど、多くのパラメータを変更できます。

答え2

ソフトイーサVPNVPN プロトコルを HTTP/HTTPS 経由で実行することで、適切に形成された HTTP トラフィックのみを通過させるプロキシ ファイアウォールをトンネルすることができます。これが必要なことだと思います。

OpenVPNはHTTP経由でトラフィックをカマフログするように設定できますが、実際にはこれを行うのは難しい場合があります。(@2707974の回答では解決できないと思います。http-proxy設定を追加する必要があります。OpenVPNサイトに記載されている通り

関連情報