プロキシ下でも動作するSSL-VPNをOpenVPNを用いて構築する

2019年11月22日サーバー構築,金盾対策Linux,Ubuntu,VPN,OpenVPN,プロキシ,SSL-VPN,金盾対策

 

例えば80番や443番などしか通過させないようなプロキシが強制的に導入されている環境(たとえば会社や公衆無線LANサービス)では、通常のようにVPN接続を行うことが出来ない。

よく使われる方法は、softetherを用いる方法である。ただ、Softetherをわざわざ使うのが面倒であるのなら、OpenVPNを443/tcpで動かしてしまえば良い。

SSLHを導入する

sslhは、443ポートをSSHの待ち受けにも、Apacheの待ち受けにも、OpenVPNの待ち受けにも分けてくれる魔法のソフト。

以下のページを参考にインストールをして欲しい。

OpenVPNを導入する

今回はOpenVPNを用いる。
OpenVPNを用いたVPNサーバーの立て方は、下記のページにて詳細を説明している。

OpenVPNのproto設定を変更する

先ほどのsslhの設定では、

--openvpn 127.0.0.1:1194

とした。つまり、443に入ってきたopenVPNの通信は、1194ポートに飛ばすという形だ。従って、openvpnはtcpの1194で動かすこととなる。
openvpnのserver.confのうち、portとprotoを次のように変えてあげる。

port 1194
proto tcp

OpenVPNクライアントの設定を変更する

クライアント用の「ovpn」ファイルに関して、次のように変更をしてあげる。

client
dev tun
proto tcp
remote サーバーのアドレス 443

ここで重要なのは、本当のポートである「1194」ではなく、443と記入すること。これで、sslhが自動的にこの通信をOpenVPNに引き継ぎ、処理が行われる。

これらの設定を用いれば、限られたポートでの通信しか許可されていない場合でも、VPN回線を張ることで自由に通信を行うことが可能だ。

Posted by webnetforce