この記事では、無料のZaborona.Helpサービスを設定してウクライナのサイトブロックをバイパスする方法について説明します。
構成機能は、VPNを介してブロックされたネットワークへのトラフィックのみがルーティングされ、他のサイトが直接機能することです。 Windows、Linux、iOS、MacOS、Androidのすべての主要プラットフォームで動作します。
VPNはインターネットの速度に影響を与えず、他のサイトのIPを置き換えたり、オンラインゲーム、音声トラフィックなどの作業を妨げたりしません。
一般的なロックバイパスツールの課題
- ブラウザプラグイン -モバイルアプリケーションでは機能せず、サーバーを経由するすべてのトラフィックをプロキシします。 彼らはページのコンテンツにアクセスし、セキュリティを脅かす。
- 通常のVPN-すべてのトラフィックをサーバー経由でルーティングします。 インターネットの速度に影響を与え、遅延を増やし、すべてのサイトのIPを置き換えます。
- プロキシブラウザ -モバイルアプリケーションのブロックのバイパスを許可しません。
設定プロセスはOpenVPNを例として説明されており、数分で簡単に繰り返すことができます。
クライアント側の設定は単一の構成ファイルを使用して実行され、アドレスとパスワードの手動入力を必要としません。
サーバーの選択
VPNのサーバーは、プロバイダーとのネットワークレベルでの良好な接続性を備えている必要があります。これにより、遅延が最小限に抑えられ、このVPNを介してアクセスする予定のリソースも最小限に抑えられます。 米国、中国、日本のデータセンターは最良の選択ではありません。
Zaborona.helpサービスで選択したいくつかのオプションを次に示します。
Linode.comは、優れたチャネルを備えたクールで信頼性の高いホスティングです。
長所:
- ギガビットチャネル、ヨーロッパでの接続性
- / 64 IPv6アドレスのルーティング可能なブロック。 VPNクライアントに実際のIPを直接与えることができます。
短所:
- 最低費用5ドル
- 最低レートで1TBの発信トラフィック
- 制限を超えた場合、テラバイトあたり20ドル
Scaleway.com-トラフィックが無制限の安価なホスティング。
長所:
- サーバーの最低価格€3
- 無制限のトラフィック、200Mbit / s
- ポーランドのデータセンター(ウクライナに近い)
短所:
- サーバーごとに1つのIPv6アドレス(なんてバカなこと!)
- ロックされたリソースとの最適な接続ではありません
信頼性のために、両方のプロバイダーの複数のサーバーが同時に使用されます。 バランシングは、DNSレベルで基本的に行われます。
vpn.zaborona.helpクライアントが接続するサービスドメインには、一度にすべてのサーバーに向けられた複数のAレコードがあります。 これにより、サーバー間でクライアントを均等に汚すことができます。 最小TTLレコードを使用すると、一般的なリストから問題のサーバーをすばやく削除し、クライアントをリダイレクトできます。
ブロックされたサービスのリスト
ウクライナ大統領133/2017の令から、ブロックの対象となる企業のリストが知られています。 このリストを知っていれば、これらの会社に属するすべてのIP範囲のリストを作成できます。
これにはbgp.he.netサービスを使用できます。
次に、Yandex BGPアナウンスがbgp.he.net/AS13238#_prefixesのように見えるものを示します。
すべての必要な範囲を収集します。 隣接するネットワークを1つの帯域で結合して、クライアント上のルートの総数を減らします。
出力では、IPv6範囲を考慮せずに次のリストを取得します。
Zaborona VPNサーバー経由でルーティングされるネットワークリスト
#Vkontakte
-87.240.128.0/18
93.186.224.0/20
95.142.192.0/20
95.213.0.0/18
185.29.130.0/24
185.32.248.0/22
2a00:bdc0 :: / 36
2a00:bdc0:e003 :: / 48
2a00:bdc0:e004 :: / 46
2a00:bdc0:e008 :: / 48
2a00:bdc0:f000 :: / 36
#ヤンデックス
-5.45.192.0/18
5.255.192.0/18
37.9.64.0/18
37.140.128.0/18
77.75.152.0/22
77.75.159.0/24
77.88.0.0/18
84.201.128.0/18
87.250.224.0/19
93.158.128.0/18
95.108.128.0/17
100.43.64.0/19
109.235.160.0/21
130.193.32.0/19
141.8.128.0/18
178.154.128.0/17
185.32.185.0/24
185.32.186.0/24
185.71.76.0/22
199.21.96.0/22
199.36.240.0/22
213.180.192.0/19
2001:678:384 :: / 48
2620:10f:d000 :: / 44
2a02:6b8 :: / 32
2a02:5180 :: / 32
#Mail.ru
-5.61.16.0/21
5.61.232.0/21
79.137.157.0/24
79.137.183.0/24
94.100.176.0/20
95.163.32.0/19
95.163.248.0/21
128.140.168.0/21
178.22.88.0/21
178.237.16.0/20
185.5.136.0/22
185.16.148.0/22
185.16.244.0/22
188.93.56.0/21
194.186.63.0/24
195.211.20.0/22
195.218.168.0/24
217.20.144.0/20
217.69.128.0/20
178.22.91.0/24
178.22.92.0/23
185.16.244.0/23
195.211.128.0/22
208.87.94.0/24
2a00:1148 :: / 32
2a00:b4c0 :: / 32
#カスペルスキー
-77.74.176.0/22
77.74.181.0/24
77.74.183.0/24
93.159.228.0/22
185.54.220.0/23
185.85.12.0/24
185.85.14.0/23
77.74.176.0/21
91.103.64.0/21
93.159.224.0/21
2a03:2480 :: / 33
-87.240.128.0/18
93.186.224.0/20
95.142.192.0/20
95.213.0.0/18
185.29.130.0/24
185.32.248.0/22
2a00:bdc0 :: / 36
2a00:bdc0:e003 :: / 48
2a00:bdc0:e004 :: / 46
2a00:bdc0:e008 :: / 48
2a00:bdc0:f000 :: / 36
#ヤンデックス
-5.45.192.0/18
5.255.192.0/18
37.9.64.0/18
37.140.128.0/18
77.75.152.0/22
77.75.159.0/24
77.88.0.0/18
84.201.128.0/18
87.250.224.0/19
93.158.128.0/18
95.108.128.0/17
100.43.64.0/19
109.235.160.0/21
130.193.32.0/19
141.8.128.0/18
178.154.128.0/17
185.32.185.0/24
185.32.186.0/24
185.71.76.0/22
199.21.96.0/22
199.36.240.0/22
213.180.192.0/19
2001:678:384 :: / 48
2620:10f:d000 :: / 44
2a02:6b8 :: / 32
2a02:5180 :: / 32
#Mail.ru
-5.61.16.0/21
5.61.232.0/21
79.137.157.0/24
79.137.183.0/24
94.100.176.0/20
95.163.32.0/19
95.163.248.0/21
128.140.168.0/21
178.22.88.0/21
178.237.16.0/20
185.5.136.0/22
185.16.148.0/22
185.16.244.0/22
188.93.56.0/21
194.186.63.0/24
195.211.20.0/22
195.218.168.0/24
217.20.144.0/20
217.69.128.0/20
178.22.91.0/24
178.22.92.0/23
185.16.244.0/23
195.211.128.0/22
208.87.94.0/24
2a00:1148 :: / 32
2a00:b4c0 :: / 32
#カスペルスキー
-77.74.176.0/22
77.74.181.0/24
77.74.183.0/24
93.159.228.0/22
185.54.220.0/23
185.85.12.0/24
185.85.14.0/23
77.74.176.0/21
91.103.64.0/21
93.159.224.0/21
2a03:2480 :: / 33
このリストはめったに変更されないため、必要に応じて更新することは難しくありません。
OpenVPNを構成する
サーバーはOpenVPN 2.4を使用します。 このバージョンを使用することをお勧めします。 Ubuntu LTSリポジトリにはOpenVPNバージョン2.3があるため、公式のopenvpnリポジトリを接続することで必要なバージョンをインストールできます 。
証明書の問題
証明書を生成する最も簡単な方法は、 easy-rsaユーティリティを使用することです。 ValdikSSからのこのフォークにより、OpenVPNとIpsecの両方に同時に適した証明書を生成できます 。
easy-rsaによるキー生成
$ git clone https://github.com/ValdikSS/easy-rsa-ipsec.git $ cd easy-rsa-ipsec/easyrsa3 $ ./easyrsa init-pki init-pki complete; you may now create a CA or requests. $ ./easyrsa build-ca nopass Generating a 2048 bit RSA private key … Common Name (eg: your user, host, or server name) [Easy-RSA CA]:Cool VPN Server … $ ./easyrsa build-server-full zaborona.help nopass Generating a 2048 bit RSA private key … Write out database with 1 new entries Data Base Updated # public . . $ ./easyrsa build-client-full public nopass Generating a 2048 bit RSA private key … Write out database with 1 new entries Data Base Updated
:
:
easyrsa3/pki/ca.crt —
easyrsa3/pki/issued/zaborona.help.crt —
easyrsa3/pki/private/zaborona.help.key —
:
easyrsa3/pki/ca.crt —
easyrsa3/pki/issued/public.crt —
easyrsa3/pki/private/public.key —
. VPN . - 0.0.0.0 .
DNS , , , VPN.
OpenVPN
mode server proto tcp dev-type tun # tun, L2 dev zaborona # tun topology subnet server 192.168.224.0 255.255.252.0 # IP . , server-ipv6 2a01:7e01:e001:77:8000::/65 # IPv6 . , ipv6 push "dhcp-option DNS 8.8.8.8" # DNS push "route 8.8.8.8" # VPN push "dhcp-option DNS 74.82.42.42" # HE.net DNS push "route 74.82.42.42" # Route to HE.net DNS txqueuelen 250 keepalive 300 900 persist-tun persist-key cipher AES-128-CBC ncp-ciphers AES-128-GCM user nobody duplicate-cn # log logs/openvpn.log #status logs/status.log 30 ca ca.crt cert zaborona.help.crt key zaborona.help.key dh dh2048.pem # Routes # Yandex network push "route 5.45.192.0 255.255.192.0" push "route 5.255.192.0 255.255.192.0" push "route 37.9.64.0 255.255.192.0" push "route 37.140.128.0 255.255.192.0" push "route 77.88.0.0 255.255.192.0" push "route 84.201.128.0 255.255.192.0" push "route 87.250.224.0 255.255.224.0" push "route 93.158.128.0 255.255.192.0" push "route 95.108.128.0 255.255.128.0" push "route 100.43.64.0 255.255.224.0" push "route 130.193.32.0 255.255.224.0" push "route 141.8.128.0 255.255.192.0" push "route 178.154.128.0 255.255.128.0" push "route 199.21.96.0 255.255.252.0" push "route 199.36.240.0 255.255.252.0" push "route 213.180.192.0 255.255.224.0" push "route-ipv6 2620:10f:d000::/44" push "route-ipv6 2a02:6b8::/32" # Mail.ru network push "route 5.61.16.0 255.255.248.0" push "route 5.61.232.0 255.255.248.0" push "route 79.137.157.0 255.255.255.0" push "route 79.137.183.0 255.255.255.0" push "route 94.100.176.0 255.255.240.0" push "route 95.163.32.0 255.255.224.0" push "route 95.163.248.0 255.255.248.0" push "route 128.140.168.0 255.255.248.0" push "route 178.22.88.0 255.255.248.0" push "route 178.237.16.0 255.255.240.0" push "route 185.5.136.0 255.255.252.0" push "route 185.16.148.0 255.255.252.0" push "route 185.16.244.0 255.255.252.0" push "route 188.93.56.0 255.255.248.0" push "route 194.186.63.0 255.255.255.0" push "route 195.211.20.0 255.255.252.0" push "route 195.218.168.0 255.255.255.0" push "route 217.20.144.0 255.255.240.0" push "route 217.69.128.0 255.255.240.0" push "route-ipv6 2a00:1148::/32" push "route-ipv6 2a00:a300::/32" push "route-ipv6 2a00:b4c0::/32" # VK.com network push "route 87.240.128.0 255.255.192.0" push "route 93.186.224.0 255.255.240.0" push "route 95.142.192.0 255.255.240.0" push "route 95.213.0.0 255.255.192.0" push "route 185.32.248.0 255.255.252.0" push "route-ipv6 2a00:bdc0::/36" push "route-ipv6 2a00:bdc0:e006::/48" # Kaspersky network push "route 77.74.176.0 255.255.252.0" push "route 77.74.181.0 255.255.255.0" push "route 77.74.183.0 255.255.255.0" push "route 93.159.228.0 255.255.252.0" push "route 185.54.220.0 255.255.254.0" push "route 185.85.12.0 255.255.255.0" push "route 185.85.14.0 255.255.254.0"
/etc/openvpn
zaborona.conf —
ca.crt —
zaborona.help.crt —
zaborona.help.key —
, , .
.ovpn
nobind client # . DNS. remote vpn.zaborona.help remote-cert-tls server cipher AES-128-CBC setenv opt ncp-ciphers AES-128-GCM setenv opt block-outside-dns dev tun proto tcp <ca> easyrsa3/pki/ca.crt </ca> <cert> easyrsa3/pki/issued/public.crt </cert> <key> easyrsa3/pki/private/public.key </key>
: OpenVPN .
c :
Windows
MacOS
iOS
Android
, , Github. - , pull request-.
, VPN , . , .