Vpn

一些 VPN 流量被阻止以保護端點

  • September 16, 2020

我有一個strongswan用於測試IKEv2的VPN 伺服器(今天早上,我在英國的一列火車(Transpennine Express,使用Icomera.com)並連接到車載 wifi。這是一個純 IPv4 網路,並利用 OpenDNS 阻止某些站點。不幸的是,它們阻止了堆棧交換,所以我連接到我的 VPN 以試圖繞過這些限制。它在一些網站上執行良好,例如 news.bbc.co.uk 和一些 twitter.com(它允許在某些地址訪問https://abs.twimg.com,但阻止了其他類似/responsive-web/web/runtime.21a6d542388d1e3e4.js/responsive-web/web/main.d9a47f436e41de1a4.js``/responsive-web/web/i18n-rweb/en.10f7da63e9b736204.js``/responsive-web/web/icon-default.3c3b224a61f8b0e54.png)。但是,其他域根本不起作用;例如 google.com 和 amazon.com。 是什麼阻止了某些交流?

pingtraceroute在所有域上工作並返回有效 IP(通過 v4 和 v6,通過 VPN - 如果我禁用 IPv6,問題仍然存在)。通過埠 80連接telnet到站點是可行的,但是當我嘗試時wget,它會在重定向後卡住(通常是到 https,儘管下面的重定向到 http 地址失敗):

wget -vv -4 google.com
--2019-09-02 08:39:18--  http://google.com/
Resolving google.com (google.com)... 172.217.18.14
Connecting to google.com (google.com)|172.217.18.14|:80... connected.
HTTP request sent, awaiting response... 301 Moved Permanently
Location: http://www.google.com/ [following]
--2019-09-02 08:39:18--  http://www.google.com/
Resolving www.google.com (www.google.com)... 216.58.205.228
Connecting to www.google.com (www.google.com)|216.58.205.228|:80... connected.
HTTP request sent, awaiting response... ^C

使用adb(Android調試外殼,連接到我的手機,以防我的硬體有特殊性),我嘗試了同樣的方法 - 它沒有wget,所以我使用curl了,但結果相同:

NB1:/ $ curl google.com
<HTML><HEAD><meta http-equiv="content-type" content="text/html;charset=utf-8">
<TITLE>301 Moved</TITLE></HEAD><BODY>
<H1>301 Moved</H1>
The document has moved
<A HREF="http://www.google.com/">here</A>.
</BODY></HTML>

NB1:/ $ curl https://google.com
curl: (28) Operation timed out after 300191 milliseconds with 0 out of 0 bytes received

如果我嘗試通過 SSH 連接到託管 VPN 的伺服器(我在這裡沒有使用密鑰),同時連接到 VPN:

ssh -v user@1.2.3.4
OpenSSH_7.6p1 Ubuntu-4, OpenSSL 1.0.2n  7 Dec 2017
debug1: Reading configuration data /jkl/ssh_config
debug1: /abc/ssh_config line 19: Applying options for *
debug1: Connecting to 1.2.3.4 [1.2.3.4 port 22.
debug1: Connection established.
debug1: key_load_public: No such file or directory
debug1: identity file /home/user/.ssh/id_ed25519 type -1
debug1: key_load_public: No such file or directory
debug1: identity file /home/user/.ssh/id_ed25519-cert type -1
debug1: Local version string SSH-2.0-OpenSSH_7.6p1 Ubuntu-4
debug1: Remote protocol version 2.0, remote software version OpenSSH_7.4
debug1: match: OpenSSH_7.4 pat OpenSSH* compat 0x04000000
debug1: Authenticating to 1.2.3.4:22 as 'user'
debug1: SSH2_MSG_KEXINIT sent

然後什麼都沒有,沒有超時或無法通過身份驗證的消息等。我可以訪問的另一台 SSH 伺服器連接良好。

VPN 伺服器使用 Cloudflare 1.1.1.1 DNS 伺服器。執行該命令dig +nocmd +multiline +noall +answer TXT resolver.dnscrypt.info會返回實際的解析器,它似乎在 VPN 上使用正確的 DNS 配置:

嘗試1:

resolver.dnscrypt.info. 10 IN TXT "Resolver IP: 162.158.85.239"

嘗試2:

resolver.dnscrypt.info. 10 IN TXT "Resolver IP: 162.158.82.32"

顯然這不是 DNS 錯誤,因為地址已解析,並且 VPN 通過多個埠(至少 22、25、80、443)正確連接和接收數據。 什麼可能會在這裡阻止某些交流? 幾乎就像發生了某種 DPI,它似乎與安全通信有關 - 某些 HTTPS 連接和上述 SSH。這不是連接問題 - 我每秒都在後台執行一個腳本 ping,當失敗時,我顯然停止嘗試診斷問題。

我能找到的唯一相關問題是Cisco ASA:部分通過 VPN 的流量在此處被阻止 785363 關於 Cisco ASA 設備,但這不會導致問題,因為它們只出現在我連接的網路上。我假設它與使用的 OpenDNS 設置有關,但無法弄清楚它是如何工作的。

相關伺服器的日誌中沒有任何立即可見的內容。

作為參考,當我沒有連接到 VPN(並允許使用不安全的證書)時,我在 Chrome 中嘗試訪問 stackoverflow.com 時看到了這一點:

This site is blocked due to content filtering.
stackoverflow.com
Sorry, stackoverflow.com has been blocked by your network administrator.

You can still get FREE movies, TV shows and magazines through our TPE App or at tv.tpexpress.co.uk.

This site was blocked due to the following categories: Forums/Message boards

Diagnostic Info
ACType
0
Block Type
aup
Bundle ID
640224
Domain Tagging
-
Host
block.opendns.com
IP Address
176.12.107.132
Org ID
2218188
Origin ID
72833478
Prefs
-
Query
url=8485666876808770837177808815688078&ablock&server=lon15&prefs=&tagging=&nref
Server
lon15
Time
2019-09-02 08:48:01.341364541 +0000 UTC m=+5779291.314972467

我最近有機會再次測試有問題的網路。

這裡的解決方案是使用 MTU。對有效負載的進一步分析curl -v顯示,在客戶端打招呼後握手失敗並且沒有看到響應,即使 VPN 伺服器看到了這一點,這讓我懷疑路由中存在問題。

進一步看,客戶端的 MTU 為 1500,通常工作正常,但在此網路配置中失敗。解決方法是降低 MTU,並且可以通過更改iptables.

具有不同長度的不同域返回不同大小的有效負載,這不會導致問題,因此不一致。

引用自:https://serverfault.com/questions/981618