Monday, May 30, 2016

Tor Browser 6.0 is released

The Tor Browser Team is proud to announce the first stable release in the 6.0 series. This release is available from the Tor Browser Project page and also from our distribution directory.

This release brings us up to date with Firefox 45-ESR, which should mean a better support for HTML5 video on Youtube, as well as a host of other improvements.

Beginning with the 6.0 series code-signing for OS X systems is introduced. This should help our users who had trouble with getting Tor Browser to work on their Mac due to Gatekeeper interference. There were bundle layout changes necessary to adhere to code signing requirements but the transition to the new Tor Browser layout on disk should go smoothly.

The release also features new privacy enhancements and disables features where we either did not have the time to write a proper fix or where we decided they are rather potentially harmful in a Tor Browser context.

On the security side this release makes sure that SHA1 certificate support is disabledand our updater is not only relying on the signature alone but is checking the hash of the downloaded update file as well before applying it. Moreover, we provide a fix for a Windows installer related DLL hijacking vulnerability.

A note on our search engine situation: Lately, we got a couple of comments on our blog and via email wondering why we are now using DuckDuckGo as the default search engine and not Disconnect anymore. Well, we still use Disconnect. But for a while now Disconnect has no access to Google search results anymore which we used in Tor Browser. Disconnect being more a meta search engine which allows users to choose between different search providers fell back to delivering Bing search results which were basically unacceptable quality-wise. While Disconnect is still trying to fix the situation we asked them to change the fallback to DuckDuckGo as their search results are strictly better than the ones Bing delivers.

The full changelog since Tor Browser 5.5.5 is:
Tor Browser 6.0 — May 30

  • All Platforms
    • Update Firefox to 45.1.1esr
    • Update OpenSSL to 1.0.1t
    • Update Torbutton to 1.9.5.4
      • Bug 18466: Make Torbutton compatible with Firefox ESR 45
      • Bug 18743: Pref to hide ‘Sign in to Sync’ button in hamburger menu
      • Bug 18905: Hide unusable items from help menu
      • Bug 16017: Allow users to more easily set a non-tor SSH proxy
      • Bug 17599: Provide shortcuts for New Identity and New Circuit
      • Translation updates
      • Code clean-up
    • Update Tor Launcher to 0.2.9.3
      • Bug 13252: Do not store data in the application bundle
      • Bug 18947: Tor Browser is not starting on OS X if put into /Applications
      • Bug 11773: Setup wizard UI flow improvements
      • Translation updates
    • Update HTTPS-Everywhere to 5.1.9
    • Update meek to 0.22 (tag 0.22-18371-3)
      • Bug 18371: Symlinks are incompatible with Gatekeeper signing
      • Bug 18904: Mac OS: meek-http-helper profile not updated
    • Bug 15197 and child tickets: Rebase Tor Browser patches to ESR 45
    • Bug 18900: Fix broken updater on Linux
    • Bug 19121: The update.xml hash should get checked during update
    • Bug 18042: Disable SHA1 certificate support
    • Bug 18821: Disable libmdns support for desktop and mobile
    • Bug 18848: Disable additional welcome URL shown on first start
    • Bug 14970: Exempt our extensions from signing requirement
    • Bug 16328: Disable MediaDevices.enumerateDevices
    • Bug 16673: Disable HTTP Alternative-Services
    • Bug 17167: Disable Mozilla’s tracking protection
    • Bug 18603: Disable performance-based WebGL fingerprinting option
    • Bug 18738: Disable Selfsupport and Unified Telemetry
    • Bug 18799: Disable Network Tickler
    • Bug 18800: Remove DNS lookup in lockfile code
    • Bug 18801: Disable dom.push preferences
    • Bug 18802: Remove the JS-based Flash VM (Shumway)
    • Bug 18863: Disable MozTCPSocket explicitly
    • Bug 15640: Place Canvas MediaStream behind site permission
    • Bug 16326: Verify cache isolation for Request and Fetch APIs
    • Bug 18741: Fix OCSP and favicon isolation for ESR 45
    • Bug 16998: Disable <link rel=”preconnect”> for now
    • Bug 18898: Exempt the meek extension from the signing requirement as well
    • Bug 18899: Don’t copy Torbutton, TorLauncher, etc. into meek profile
    • Bug 18890: Test importScripts() for cache and network isolation
    • Bug 18886: Hide pocket menu items when Pocket is disabled
    • Bug 18703: Fix circuit isolation issues on Page Info dialog
    • Bug 19115: Tor Browser should not fall back to Bing as its search engine
    • Bug 18915+19065: Use our search plugins in localized builds
    • Bug 19176: Zip our language packs deterministically
    • Bug 18811: Fix first-party isolation for blobs URLs in Workers
    • Bug 18950: Disable or audit Reader View
    • Bug 18886: Remove Pocket
    • Bug 18619: Tor Browser reports “InvalidStateError” in browser console
    • Bug 18945: Disable monitoring the connected state of Tor Browser users
    • Bug 18855: Don’t show error after add-on directory clean-up
    • Bug 18885: Disable the option of logging TLS/SSL key material
    • Bug 18770: SVGs should not show up on Page Info dialog when disabled
    • Bug 18958: Spoof screen.orientation values
    • Bug 19047: Disable Heartbeat prompts
    • Bug 18914: Use English-only label in <isindex/> tags
    • Bug 18996: Investigate server logging in esr45-based Tor Browser
    • Bug 17790: Add unit tests for keyboard fingerprinting defenses
    • Bug 18995: Regression test to ensure CacheStorage is disabled
    • Bug 18912: Add automated tests for updater cert pinning
    • Bug 16728: Add test cases for favicon isolation
    • Bug 18976: Remove some FTE bridges
  • Windows
  • OS X
    • Bug 6540: Support OS X Gatekeeper
    • Bug 13252: Tor Browser should not store data in the application bundle
    • Bug 18951: HTTPS-E is missing after update
    • Bug 18904: meek-http-helper profile not updated
    • Bug 18928: Upgrade is not smooth (requires another restart)
  • Build System
    • All Platforms
      • Bug 18127: Add LXC support for building with Debian guest VMs
      • Bug 16224: Don’t use BUILD_HOSTNAME anymore in Firefox builds
      • Bug 18919: Remove unused keys and unused dependencies
    • Windows
      • Bug 17895: Use NSIS 2.51 for installer to avoid DLL hijacking
      • Bug 18290: Bump mingw-w64 commit we use
    • OS X
      • Bug 18331: Update toolchain for Firefox 45 ESR
      • Bug 18690: Switch to Debian Wheezy guest VMs
    • Linux
      • Bug 18699: Stripping fails due to obsolete Browser/components directory
      • Bug 18698: Include libgconf2-dev for our Linux builds
      • Bug 15578: Switch to Debian Wheezy guest VMs (10.04 LTS is EOL)

原文:http://ift.tt/1THudwY




via 细节的力量 http://ift.tt/25vNR6I

Tor 0.2.8.3-alpha is released

Tor 0.2.8.3-alpha has been released! You can download the source from the Tor website. Packages should be available over the next week or so.

Tor 0.2.8.3-alpha resolves several bugs, most of them introduced over the course of the 0.2.8 development cycle. It improves the behavior of directory clients, fixes several crash bugs, fixes a gap in compiler hardening, and allows the full integration test suite to run on more platforms.

REMEMBER: This is an alpha release. Expect a lot of bugs. You should only run this release if you’re willing to find bugs and report them.

Changes in version 0.2.8.3-alpha – 2016-05-26

  • Major bugfixes (security, client, DNS proxy):
    • Stop a crash that could occur when a client running with DNSPort received a query with multiple address types, and the first address type was not supported. Found and fixed by Scott Dial. Fixes bug 18710; bugfix on 0.2.5.4-alpha.
  • Major bugfixes (security, compilation):
    • Correctly detect compiler flags on systems where _FORTIFY_SOURCE is predefined. Previously, our use of -D_FORTIFY_SOURCE would cause a compiler warning, thereby making other checks fail, and needlessly disabling compiler-hardening support. Fixes one case of bug 18841; bugfix on 0.2.3.17-beta. Patch from “trudokal”.
  • Major bugfixes (security, directory authorities):
    • Fix a crash and out-of-bounds write during authority voting, when the list of relays includes duplicate ed25519 identity keys. Fixes bug 19032; bugfix on 0.2.8.2-alpha.
  • Major bugfixes (client, bootstrapping):
    • Check if bootstrap consensus downloads are still needed when the linked connection attaches. This prevents tor making unnecessary begindir-style connections, which are the only directory connections tor clients make since the fix for 18483 was merged.
    • Fix some edge cases where consensus download connections may not have been closed, even though they were not needed. Related to fix for 18809.
    • Make relays retry consensus downloads the correct number of times, rather than the more aggressive client retry count. Fixes part of ticket 18809.
    • Stop downloading consensuses when we have a consensus, even if we don’t have all the certificates for it yet. Fixes bug 18809; bugfix on 0.2.8.1-alpha. Patches by arma and teor.
  • Major bugfixes (directory mirrors):
    • Decide whether to advertise begindir support in the the same way we decide whether to advertise our DirPort. Allowing these decisions to become out-of-sync led to surprising behavior like advertising begindir support when hibernation made us not advertise a DirPort. Resolves bug 18616; bugfix on 0.2.8.1-alpha. Patch by teor.
  • Major bugfixes (IPv6 bridges, client):
    • Actually use IPv6 addresses when selecting directory addresses for IPv6 bridges. Fixes bug 18921; bugfix on 0.2.8.1-alpha. Patch by “teor”.
  • Major bugfixes (key management):
    • If OpenSSL fails to generate an RSA key, do not retain a dangling pointer to the previous (uninitialized) key value. The impact here should be limited to a difficult-to-trigger crash, if OpenSSL is running an engine that makes key generation failures possible, or if OpenSSL runs out of memory. Fixes bug 19152; bugfix on 0.2.1.10-alpha. Found by Yuan Jochen Kang, Suman Jana, and Baishakhi Ray.
  • Major bugfixes (testing):
    • Fix a bug that would block ‘make test-network-all’ on systems where IPv6 packets were lost. Fixes bug 19008; bugfix on tor-0.2.7.3-rc.
    • Avoid “WSANOTINITIALISED” warnings in the unit tests. Fixes bug 18668; bugfix on 0.2.8.1-alpha.
  • Minor features (clients):
    • Make clients, onion services, and bridge relays always use an encrypted begindir connection for directory requests. Resolves ticket 18483. Patch by “teor”.
  • Minor features (fallback directory mirrors):
    • Give each fallback the same weight for client selection; restrict fallbacks to one per operator; report fallback directory detail changes when rebuilding list; add new fallback directory mirrors to the whitelist; update fallback directories based on the latest OnionOO data; and any other minor simplifications and fixes. Closes tasks 17158, 17905, 18749, bug 18689, and fixes part of bug 18812 on 0.2.8.1-alpha; patch by “teor”.
  • Minor features (geoip):
    • Update geoip and geoip6 to the May 4 2016 Maxmind GeoLite2 Country database.
  • Minor bugfixes (assert, portability):
    • Fix an assertion failure in memarea.c on systems where “long” is shorter than the size of a pointer. Fixes bug 18716; bugfix on 0.2.1.1-alpha.
  • Minor bugfixes (bootstrap):
    • Consistently use the consensus download schedule for authority certificates. Fixes bug 18816; bugfix on 0.2.4.13-alpha.
  • Minor bugfixes (build):
    • Remove a pair of redundant AM_CONDITIONAL declarations from configure.ac. Fixes one final case of bug 17744; bugfix on 0.2.8.2-alpha.
    • Resolve warnings when building on systems that are concerned with signed char. Fixes bug 18728; bugfix on 0.2.7.2-alpha and 0.2.6.1-alpha.
    • When libscrypt.h is found, but no libscrypt library can be linked, treat libscrypt as absent. Fixes bug 19161; bugfix on 0.2.6.1-alpha.
  • Minor bugfixes (client):
    • Turn all TestingClientBootstrap* into non-testing torrc options. This changes simply renames them by removing “Testing” in front of them and they do not require TestingTorNetwork to be enabled anymore. Fixes bug 18481; bugfix on 0.2.8.1-alpha.
    • Make directory node selection more reliable, mainly for IPv6-only clients and clients with few reachable addresses. Fixes bug 18929; bugfix on 0.2.8.1-alpha. Patch by “teor”.
  • Minor bugfixes (controller, microdescriptors):
    • Make GETINFO dir/status-vote/current/consensus conform to the control specification by returning “551 Could not open cached consensus…” when not caching consensuses. Fixes bug 18920; bugfix on 0.2.2.6-alpha.
  • Minor bugfixes (crypto, portability):
    • The SHA3 and SHAKE routines now produce the correct output on Big Endian systems. No code calls either algorithm yet, so this is primarily a build fix. Fixes bug18943; bugfix on 0.2.8.1-alpha.
    • Tor now builds again with the recent OpenSSL 1.1 development branch (tested against 1.1.0-pre4 and 1.1.0-pre5-dev). Closes ticket 18286.
  • Minor bugfixes (directories):
    • When fetching extrainfo documents, compare their SHA256 digests and Ed25519 signing key certificates with the routerinfo that led us to fetch them, rather than with the most recent routerinfo. Otherwise we generate many spurious warnings about mismatches. Fixes bug 17150; bugfix on 0.2.7.2-alpha.
  • Minor bugfixes (logging):
    • When we can’t generate a signing key because OfflineMasterKey is set, do not imply that we should have been able to load it. Fixes bug 18133; bugfix on 0.2.7.2-alpha.
    • Stop periodic_event_dispatch() from blasting twelve lines per second at loglevel debug. Fixes bug 18729; fix on 0.2.8.1-alpha.
    • When rejecting a misformed INTRODUCE2 cell, only log at PROTOCOL_WARN severity. Fixes bug 18761; bugfix on 0.2.8.2-alpha.
  • Minor bugfixes (pluggable transports):
    • Avoid reporting a spurious error when we decide that we don’t need to terminate a pluggable transport because it has already exited. Fixes bug 18686; bugfix on 0.2.5.5-alpha.
  • Minor bugfixes (pointer arithmetic):
    • Fix a bug in memarea_alloc() that could have resulted in remote heap write access, if Tor had ever passed an unchecked size to memarea_alloc(). Fortunately, all the sizes we pass to memarea_alloc() are pre-checked to be less than 128 kilobytes. Fixes bug19150; bugfix on 0.2.1.1-alpha. Bug found by Guido Vranken.
  • Minor bugfixes (relays):
    • Consider more config options when relays decide whether to regenerate their descriptor. Fixes more of bug 12538; bugfix on 0.2.8.1-alpha.
    • Resolve some edge cases where we might launch an ORPort reachability check even when DisableNetwork is set. Noticed while fixing bug 18616; bugfix on 0.2.3.9-alpha.
  • Minor bugfixes (statistics):
    • We now include consensus downloads via IPv6 in our directory- request statistics. Fixes bug 18460; bugfix on 0.2.3.14-alpha.
  • Minor bugfixes (testing):
    • Allow directories in small networks to bootstrap by skipping DirPort checks when the consensus has no exits. Fixes bug 19003; bugfix on 0.2.8.1-alpha. Patch by teor.
    • Fix a small memory leak that would occur when the TestingEnableCellStatsEvent option was turned on. Fixes bug 18673; bugfix on 0.2.5.2-alpha.
  • Minor bugfixes (time handling):
    • When correcting a corrupt ‘struct tm’ value, fill in the tm_wday field. Otherwise, our unit tests crash on Windows. Fixes bug 18977; bugfix on 0.2.2.25-alpha.
  • Documentation:
    • Document the contents of the ‘datadir/keys’ subdirectory in the manual page. Closes ticket 17621.
    • Stop recommending use of nicknames to identify relays in our MapAddress documentation. Closes ticket 18312.

edited to add links to tickets. Please met me know if my script broke anything.

原文:http://ift.tt/1Z4DIKy




via 细节的力量 http://ift.tt/1OZL7oB

Android 安裝 squid proxy 的步驟

squidproxy
项目: http://ift.tt/1U6mp7G
推特: https://twitter.com/squidgfw
G+社区: http://ift.tt/25uXHJy
squidproxy 提供了squid技术的应用、部署、教育、培训等内容!
http://ift.tt/1U6m05k
 

Android使用squid proxy教程
(感謝開發員abbot最全面的技術支持,萬分感謝abbot的無私奉獻!)
步驟如下:
(本文連接如下:http://ift.tt/1NYorKF

 

1).安裝any connect。
方法:
    a.建議Google play安裝anyconect of Cisco
b.從telegram安裝!下載後文件路徑如下:

2)下載證書文件:
3).添加vpn加載賬號及安裝證書:
     3.1添加VPN連接。
    
   3.1.2>.配置VPN
3.1.3).由軟件~anyconnect 導入證書!
 
3.1.4.確認密碼與證書關聯!
3.2由系統證書管理導入!
設定->(系統)->安全->從設備存儲空間安裝->查找證書(文件名.p12)
->輸入證書密碼,捆綁證書!
 

4.連接vpn網路

 

****************************************

 

****************************************
@@@附加部分:
明天加入連接Tor部分,可以做到,直連,obfs4網橋,雲橋的順利連接和盡可能防範信息洩漏,解決替換證書的疑惑!

 

1.).強制系統使用Tor8118代理端口出站,防止數據按非代理路徑流出,達到防止洩漏的目的。(部分VPN使用該模式,會出現無法連接)

2.).firefox,Facebook,Twitter等均可強制使用Tor通道傳輸數據!
3.).各種tor模式(直連,雲橋,obfs4)運行傳輸完全沒任何異常!

 

 

 

原文:http://ift.tt/25uXXIx

原文: http://ift.tt/25uXXIx




via 细节的力量 http://ift.tt/25t0EqG

Sunday, May 29, 2016

赛风3(安卓版)-122版

直接下载:http://ift.tt/1BDXUal

Google Play商店中的赛风安卓版:http://ift.tt/1kv6Rxa

电邮索取:get@psiphon3.com

原文:http://ift.tt/10PMX98




via 细节的力量 http://ift.tt/24eWeBg

Saturday, May 28, 2016

安卓版: 无界一点通3.6b测试版(2016年5月28日)

无界一点通3.6b测试版,在3.6a的基础上,做了以下改进,请帮忙测试并反馈:

1. 修复电视模式下,勾选退出时清除历史记录会非正常退出的问题;
2. 新增标签页是空白标签页,而不是无界主页;
3. 增加‘停止键(X)’, 可以停止网页下载;
4. 取消左右滑动可翻页的功能;
5. 解决某些设备上看新唐人不能看全屏的问题;
6. 可能解决新唐人节目单在机顶盒上不能全屏显示, 需要移动光标才能看全的问题。(我们的测试设备没有此问题, 请原有此问题的用户帮忙测试)。

http://ift.tt/1TOBLl2

sha1:86c203222887fdbb99b13853e1efe2f772cbb54c
md5:e32ef55baff5ec307a91ff7b04c86b13

谢谢 !

**********************************************************************

无界一点通3.6a测试版做了以下改进:

1. 解决了一些手机上不能正常浏览一些网页的问题, 如:脸书(facebook)/youmaker/谷歌应用商店/谷歌搜索;
2. 解决了一些手机上不能正常看youtube的问题;
3. 允许用户选择下载文件夹;
4. 增加下载程度及通知;
5. 支持多标签浏览;
6. 增加“清除历史记录”选项;
7. 增加“禁止cookie”选项;
8. 增加浏览界面顶部的功能键, 方便浏览;
9. 看电视机听广播时不自动锁屏, 除非用户自己关掉屏幕;
10. 增强安全及联通能力。

谢谢!

—————–

“无界一点通”是安卓版的翻墙软件, 让您看到没有被过滤的真实讯息。适用于安卓手机/安卓机顶盒等安卓平台。

安装”无界一点通”测试版:

1. 需要首先对手机进行设置: 按“菜单”键 –> settings(设置)–> Applications(应用程序), 钩选”Unknown sources”(未知源)。
注: 有的版本是: 按“菜单”键 –> settings(设置)–> security (安全) 里面, 钩选”Unknown sources”(未知源)。
2. 将下载的um.apk文件拷贝到手机SD卡(或内置SD卡)上。如果下载的为压缩文件, 无须解压, 直接将文件扩展名 .zip 更改为 .apk 。
在安卓手机上点击um.apk文件便可安装。如与已经安装的无界一点通旧版有冲突,请先卸载旧版, 再安装新版。
3. 详细说明见网址: 《网址》http://ift.tt/1QfyeJ8 《网址》

原文:http://ift.tt/1TOAZob




via 细节的力量 http://ift.tt/1TOBpet

EasytimeTV.轻松玩Mac.科学上网的常识(6 – 8)预览


iOS 科学上网教程(6 – 8),介绍 Surge 的使用技巧;升级到 1.2 版之后的新功能;升级到 1.3 版之后代理服务器自动测速功能;还有 Lantern 、Shadowrocket、Proxifier 的介绍。
来源:https://www.youtube.com/user/EasytimeTV/videos

科学上网的常识(6):Surge [预览]

 

 

 

科学上网的常识(7):Surge的新功能 [预览]

 

 

科学上网的常识(8):备用方案 [预览]

 

原文:http://ift.tt/1Z54xht




via 细节的力量 http://ift.tt/1qRkrQY

Friday, May 27, 2016

【翻墙问答】Whatsapp黄金版乃黑客陷阱切勿下载(视频)

 620

3月31日起,Whatsapp所有通讯会开始采用AES 256位元加密匙。而加密了的信息,Whatsapp主机不会存有任何副本,亦无法解密。Whatsapp将是世界其中一个最保密即时通讯软件。(维基百科图片)

【翻墙问答】如何设定Shadowsocks翻墙视频地址:http://ift.tt/25nNuLk

问:最近有些人收到电邮,指Whatsapp推出了终极黄金版,又指很多名人都用这版本。到底这终极黄金版是真的给名人用,还是只是黑客用来偷窃资料用的木马?

李建军:一直以来,Whatsapp都是黑客们偷窃资料的目标,由于在Whatsapp全面改用点对点加密通讯后,黑客再难透过中间人攻击来偷取Whatsapp用户资料,因此,就以Whatsapp现时功能上的一些弱点下手,以电邮四处宣传所谓黄金版,主要目的就是在你Whatsapp应用程式上加设木马,藉此截取你和朋友之间的通讯。

因此,所谓终极黄金版并非由Whatsapp公司所推出,而是黑客的木马,如果你不幸安装了所谓终极黄金版,请立即删除,并且重新下载官方原装的Whatsapp软件。

由于所谓终极黄金版,并不能够通过苹果App Store的审查机制,因此,现时受终极黄金版木马困扰的人,都是使用Android平台的用户。如果你想用安全的Whatsapp版本,暂时只有Google Play或Whatsapp公司官方网页提供的版本称得上安全,由其他途径提供的版本,不论是终极黄金版,还是中国手机制造商提供的山寨应用程式商店,都是不安全的版本,切勿使用。

问:Tor协定已经用了一段时间,现时Tor的开发社群,正研究下一代Tor网络技术,提升翻墙能力,其中Tor地址的格式会有所改变,到底下一代Tor网络的地址的格式会有什么改变?这与翻墙又有什么关系?

李建军:应对中国当局越来越强的封锁,Tor开发社群根据去年的协定,全力开发下一代的Tor网络,其实为了实现全面随机化的分散数据传送要求,令当局难以阻止Tor协定的通讯,网址的长度由现时十六个英文字母或数字,加长到五十五个英文字母或数字,因此,在未来的Tor路由器软件,将需要处理相当长的一串网址。由于新一代Tor网络仍然在实验阶段,因此,现今一代Tor网址以及相关软件仍然会继续使用,而未来的Tor软件,亦会同时能处理新旧技术的通讯,直至第一代Tor技术完全被淘汰为止,相信完全淘汰现今一代的Tor通讯,并不会是这一两年会发生的事。

问:除了VPN和翻墙软件,越来越多人用Shadowsocks来翻墙,到底Shadowsocks是什么来的?而现时Shadowsocks用户端难不难用?

李建军:Shadowsocks的概念与VPN有点类似,也是一种用加密机制去掩盖实际通讯内容的方式,只不过Shadowsocks由于可以用很多不同的非标准协定,实际上像代理软件,多于VPN,但Shadowsocks支援的加密程度和机制,远比传统的代理软件来得多。

在Shadowsocks普及初期,需要用家自行兴建主机,因此,一般只是一些技术能力比较高的用户才用得起Shadowsocks,但今天已经有商家像卖VPN一样卖Shadowsocks主机户口,不少提供虚拟主机服务公司,亦有提供搭建Shadowsocks主机的服务,搭建Shadowsocks主机比以往容易得多,几个朋友要共享一个主机的流量都简单得多。而近来,亦有使用图像介面的Shadowsocks客户端软件出现,令设定Shadowsocks变成一个人人都负担得起的活动。现时在淘宝网等地方买Shadowsocks户口,唯一要担心控制主机那些人的背景是否可靠,会否有一些与中国公安机关合作的人营运这些网站。但海外亦有人卖Shadowsocks户口,可以考虑向海外背景清楚的人购买户口。

这次翻墙问答,会有视频示范如何自行设定Shadowsocks的客户端软件,成功翻墙上网,欢迎各位听众浏览本台的网站收看。虽然片段示范用Mac,但在Windows上使用方式都大同小异。

原文:http://ift.tt/1sgIOZq




via 细节的力量 http://ift.tt/1sgItpE

Thursday, May 26, 2016

“翻墙”可能是一种手艺,如何传承,任重道远

新时代的防火墙像手术刀,精准迅速,直击命门。而“翻墙”未来可能变成一门手艺,如何传承,任重道远。


1987年,中国第一封电子邮件由中国兵器工业计算机应用研究所发往德国,标志中国成功接入互联网。邮件内容是:“Across the Great Wall we can reach every corner in the world”——穿越“巨墙”(长城),我们无处不及。与这封邮件几乎同龄的我,没想到生活中竟总离不开“墙”。在物理世界和虚拟世界中多次穿墙,也去过世界各处,看“墙”越筑越高,有时义愤填膺,有时啼笑皆非。仅以此文,记录“墙”边的一些见闻。

国家公共网络监控系统

国家公共网络监控系统,俗称中国网络防火墙(The Great Fire Wall of China,常用简称“GFW”或“墙”)。一般意义所説的GFW,主要指中国官方对境外涉及敏感内容的网站、IP地址、关键词、网址等的过滤。随着使用的拓广,中文“墙”和英文“GFW”有时也被用作动词,网友所説的“被墙”即指被防火长城所屏蔽。

2008年校园网:“连坐”惩罚


2007年,我进入这所XX理工大学。它特别吊诡的设定是,大一不能带电脑,大二考过国家英语四级的人才可以带电脑。就这样,2008年秋天,我终于正大光明地连上校园网。千兆比特级别以太网直入国家主干网,中国电信、中国教育网双通道。这个规格,算是极高的。网速之快,前所未见;可是,总有一些网站访问不了。但这些小细节,终究不影响同学们DotA(一款基于Warcraft的对战地图)的热情。

那个时候,我们愉快地上Google,查Wikipedia,学习西方先进科技。不时有好事者,会键入诸如“六四”、“胡萝卜”、“温度计”(网民用来形容胡锦涛与温家宝的指代用词)这样的神奇词汇,于是全校与Google失联十数分钟。每当到这个时候,室友们相视一笑,“哦,谁又撞墙了!”但打壶开水,泡一杯面,还不等吃完,就又可以Google了。

那个时候的“墙”就好像霰弹枪,火力充足,但瞄不太准。一枪下去,打一大片,总是搞得“城门失火,殃及池鱼”。

###墙如何运作? 一台机器要与互联网上的其他机器对话,需要一个IP地址,好比一个人需要身份证(ID),才能唯一标识一样。否则,你喊一句话,对方不知应该回话给谁。而IP地址的总量是有限的,就好比一个大小固定的蛋糕。美国入场早,切走一大块。接着列强瓜分。等到中国的时候,还剩下点面皮。而该理工大学在这轮“圈地运动”中,只得到2个IP地址,给全校数万师生共用。这下好了,一个IP后面几万人,究竟谁在干什么,从校外是看不清的了。早期的防火墙,只能粗糙地在IP级别上执行封锁,要管束,只能全盘封了整个学校的网络。但毕竟一所国家重点高校,不可能用这种方式来管理,但不封锁,又无法向监管部门交代。

墙早期对用户的“连坐”惩罚策略。制图:金秋枫


说到底,监管当局不乏能工巧匠,他们很快想出一个办法:封杀大约4千个连续的端口(Port)。如果我们把IP地址比作一栋房子 ,那么端口就是出入这间房子的门。不同于真正的房子只有几个门,一个IP地址的端口可以有65536(即2的16次方)个之多。端口在一定时期内是被内网的一个用户独占,于是数据包可以准确地回到始发地。不过,封一个端口不过瘾,只是撞墙者自己倒霉而已。试想,你好不容易把野马制服了,又会有一些原本安顺的良马变野,效果不佳。最好的办法就是让它成为害群之马,以做警示。所以,一旦内网某个用户登陆Google检索“敏感信息”,这意味着一个端口“撞墙”,“墙”就把接连着的约四千多个端口都封掉,令无辜群众也无法上网。这种断网的“连坐惩罚”短则几分钟,长则十几分钟,才能恢复服务。

2010年北京:合租服务器翻墙

3月,Google位于北京中关村的办公室楼下堆满了鲜花,网友以这种方式纪念因“遭受中国骇客攻击”和“网络审查”而决定退出中国市场的Google。

“墙”这个概念越来越清晰,也进入了更多人的视野。2009年,Facebook和Twitter相继被封,昭示着中国政府通过防火墙阻隔国际互联网,建立“局域网”的决心——“局域网”是中国网民对墙内状况的戏称。

“咱们合租一个VPS(Virtual Private Server)吧”,这是技术青年们见面经常谈到的话题,仅次于买房和买车。VPS即虚拟主机,向服务商租取一段时间使用权即可。以前,大家合租VPS,多是为了搭个博客,赶赶时髦。而现在,合租VPS,多是为了翻墙。

墙外丰富多彩的世界吸引着年轻人。制图:金秋枫


对这些年轻人来说,“翻墙”用Google检索最新资讯,使用垃圾邮件最少的Gmail,随时查询在线百科全书Wikipedia,通过Facebook、Twitter与同行保持密切的技术资讯沟通,就像呼吸一样自然。也有更多人翻墙是要选择不同服务器进行联网游戏,或下载最新的影视内容,“翻墙”就像玩猫和老鼠的游戏。

VPS如何帮你翻墙?

当你发一个数据包到Google或者Facebook时,防火墙可以直接识别目的IP地址而自动拦截。而前面提到的VPS,是虚拟主机,自己也有IP地址,但无公开记录其归属,难以确认是否是敌军。既然如此,我们把数据包先发到VPS,再由它中转到目的地,就成功绕开“墙”了。由于VPS的这种特性,它也被称作“跳板”。

“跳板”是所有“翻墙”技术的共通原理。制图:金秋枫


利用一个“跳板”绕过“墙”,正是许多翻墙软件的基本原理。曾经繁荣的翻墙软件“无界”、“自由门”,还有众多的“代理服务器”,包括后来更广泛应用的VPN(Virtual Private Network),都是借用跳板原理。VPN最早是用来帮助一个企业多地的办公室间互联,也可以让员工在异地进入公司内网,方便执行一些高权限的作业。这样一来,跨国公司天然就拥有了穿墙的隧道:数据包先发到海外办公室,再去向世界各地。所以,VPN也成了跨国公司员工翻墙的主流手段。

这年,我第一次用“ssh -D”(一行命令)翻墙。SSH可以让系统管理员连接上主机,进行远程操作。同时它相当于在客户端与服务器之间建立了一个隧道,所以也能传输其他的数据,包括“翻墙”流量。只要这台机器的IP不在墙的“黑名单”中,也就可以成功绕过墙的封锁了。对技术人员来说,买VPS是最简单且低成本的翻墙方法。即便一台VPS被墙,再买一台即可。一年几十美元的价格,合租下来非常便宜。

SSH协议可以建立“隧道”,成为技术人员“翻墙”的最爱。制图:金秋枫


2011-14年香港:“墙”成为一门显学

在Google、Wikipedia中文、Facebook、Twitter等全球流行网络应用被阻隔在防火墙之外后,中国大兴土木建设的“局域网”,这几年也初现雏形。

搜索用百度,邮箱有163/QQ,社交有微博/人人,购物用淘宝/京东,即时聊天用微信——各种互联网服务,墙内应有尽有。对大部分网民来说,翻墙成了越来越不必要的需求。而剩下的一小拨执着于翻墙的用户,以及全世界致力于研究“墙”的学者,他们见证了“墙”的升级,与之斗智斗勇,也从一些滑稽的表象,捕捉到“墙”发展的各种蛛丝马迹。

因“墙”不同的工作原理,越来越多的翻墙工具被开发出来。对“翻墙”这个行当来说,这是个百花齐放的时代。

解析邮件

2011年初,Gmail大规模延迟,这可能是生活在中国的很多“良民”第一次看到墙的影子。他们并不是Twitter、Facebook的忠实用户,对自由世界的“危险信息”也并不感兴趣,只是日常收发邮件,竟也撞墙。实测显示,Gmail与大陆服务商之间的邮件有不同程度的延迟,少则几个小时,多则几个星期。人们纷纷猜测,“墙”已经进化到开始解析邮件。

“墙”开始尝试解析墙内外邮件,终因负载太高,造成大规模延迟。制图:金秋枫


敏感词触发RST,偶尔需要“向内翻墙”

这几年,我在香港求学,当时因为研究需要,我要下载大陆某公司的中文词库,奇怪的是,无论使用何种工具,进度条总是停在70%的地方。后来分析发现,每次下载到这个位置的时候,系统就会收到一个“RST”包──“RST”是“Reset”(重置)的意思。这是一种特殊的数据包,当计算机收到这种包的时候,会重置一条网络链接。这个特点被“墙”广泛用来掐掉“不和谐”的网络链接。好比A和B正在打电话,“墙”想要掐断电话,和以前粗暴地摔电话机不同,“墙”对A说:“B挂你电话了”,同时又对B说,“A挂你电话了”,不明真相的两人就真的自己把电话挂掉了。敏感词触发RST,这种“墙”的工作机制,如今已是衆所周知。而这种监控与阻断是双向的,出入都可能撞墙。有时候在墙内需要翻出来,有时候在墙外需要翻进去。

通过“RST”欺骗通信双方,以阻断链接。制图:金秋枫


走出国门的DNS污染

DNS(Domain Name Service)即“域名解析服务”,功能好比是互联网上的电话簿。早期,仅通过IP来封锁服务的话,“墙”需要查看每个数据包,判断是否放行。但使用“DNS污染”技术,相当于直接给用户一个错误的“电话号码”,从源头就遏制了“不良通信”。值得注意的是,“DNS污染”这种强力武器,不仅能有效封锁国内网民对敏感内容的访问,还会连带影响其他国家。2012年,世界顶级网络通讯会议SigComm上,出现一篇匿名论文。论文发现,中国发动的“DNS污染”已经超越了国界。在测试了全球4万多个域名解析服务器后,他们发现其中26.41%的服务器受到了这种污染的影响,覆盖109个国家。

DNS污染。制图:金秋枫


近500个实体“哨所”

2012年,一组来自Michigan大学的研究者,对“墙”的位置进行了探测。他们发现,就像真实的长城并非连绵不断的,防火墙也并不是密不透风地“堵”在我们的“网络”上,而是一组散落各处的“哨所”,只有当发现威胁的时候,它们才用“RST”或“DNS污染”这样的方式进行干扰。截止2012年底,研究者总共探测到了近500个这样的“哨所”,在中国南方,部署数量头三位的省份为:广东(84个)、福建(29个)、湖南(28个)。

小插曲是,研究者把探测“哨所”的工具在GitHub(世界最大的开源代码托管服务)上开源发布后,引起了激烈的争论。一些人认为,此举会激怒“墙”的管理者,导致GitHub被封锁,影响墙内程序员学习交流,所以应该删除这样的代码仓库,“保持技术社区的纯粹”。另一些人,则认为翻墙是程序员的基本技能,表示不受影响,所以力挺该项目,并极力反对技术社区加入“自我审查”的行列。

深度数据包检测

2012年底,“墙”的总设计师、北京邮电大学时任校长方滨兴的研究团队曾发表论文“网络流量分类,研究进展与展望”,文章提到了多种使用机器学习进行“深度数据包检测”(Deep Packet Inspection,DPI)的技术。随后几年,这些先进的技术逐渐在“墙”上部署开来。

要理解“深度数据包检测”的威力,我们可以把数据包想像成一封信。“浅度”的数据包检测,就好像是看看信封上的发件人和收件人,即决定是否放行。这给“跳板法”留下可乘之机:我们先将信送到中间站(如虚拟主机VPS),再转发到目的地,就绕过检查了。“深度”的数据包检测,可以理解成对信件内容的探查──相比起暴力打开信封,这种基于机器学习的技术更具有艺术性。它并不实际解读数据包的内容,而是搜集周边信息,对数据流进行“肖像刻划”(Profiling)。举个例子,你用Google搜索时,网络上只会有文本和少量图片经过,数据量很小,并且是突发的;但用YouTube看视频时,就会有持续一段时间的大量数据流过。“墙”的监控也是基于这样的抽象指标,比如它监控到到间歇而细小的流量,便推断你不太可能是在用YouTube。将诸如此类的可参考指标放在一起,就组成当前数据流的一副“肖像”。把这个“肖像”与数据库里面已经存放的巨量“翻墙流量肖像”和“非翻墙流量肖像”做个比对,就可以相应归类了。如所有的机器学习算法一样,这种归类会误杀一些非翻墙流量,也会错放一些翻墙流量。但日积月累,“墙”观察的样本越多,准确率也就越高。

浅度与深度数据包检测。制图:金秋枫


2015年深圳:“墙”的疯狂进化

新时代的墙,像是手术刀,精准迅速,直击命门。

在深圳小住半年,我深刻感受到“数字围剿”的压力。随着2014年底,Gmail全面被封禁,墙进化迅速、部署增强,还配合行政措施打击翻墙势力。深度包检测的大规模部署、DNS污染的扩大、转守为攻的国家防火墙策略、ISP的深度合作——“墙”俨然是正规军,而翻墙的社区只能打一场场的游击战,越打越疲惫。

首先,是香港的学校专用VPN开始不好使了。据传,几种主流的VPN协议已经被“墙”破解,手段十分细腻:有时候连上VPN,可以使用Google搜索和Google Drive办公,但一旦链接YouTube或者Facebook,网络链接就立马被掐掉了。

紧接着,一系列政策出台:境外VPN需要备案。像Astrill等常用的商业VPN服务,迅速被封。

同时,“DNS污染”的范围与频度都扩大了。为了抵御“DNS污染”,我曾一度使用“DNSCrypt”——这个开源项目会加密客户端和服务器之间的通信内容,不被墙查探到。然而好景不常在,很快,“墙”将已知的DNSCrypt的服务器IP计入黑名单,这样连访问DNSCrypt的服务器也是需要“翻墙”了……有段时间,我依赖SSH+DNSCrypt翻墙。但这套组合拳,最终打在墙上只是手疼,而墙还是泰然自若。

更有甚者,一些二级ISP(不自建主干网,但提供社区宽带接入到主干网服务的ISP)参与了合作,封禁“非常用”的DNS地址。家庭宽带用户,只能选择ISP默认分配的DNS,或者一些“广为人知”的DNS服务器,如Google多年前提供的8.8.8.8(该服务器的IP地址)就是其中之一。“4个8”曾经是大陆网民用来抵御“DNS污染”的缓冲剂,但它使用普通DNS协议,很容易被攻击。社区很快发现,“墙”会选择性地污染8.8.8.8返回的结果。

“DNS污染”、“RST攻击”、“深度数据包检测”——“防火长城”的一套立体防御体系已经建成。从左到右,精准度逐渐加大,防御成本也逐渐加大。这个时候,不管使用什么VPN,最常见的现象是,翻墙几分钟后,网络延迟加大,进而链接被阻断,导致日常工作都不能正常进行。

“进攻是最好的防守”——2015年3月,国家防火墙突然转守为攻。这是一种与“防火长城”(Great Fire Wall,GFW)部署在一起的设备,网友戏称其为“大加农炮”(Great Cannon,GC)。经过3月初的一系列测试,“大炮”从3月中旬开始发动疯狂攻击,其首轮攻击的重点目标之一是GitHub上“greatfire”这个代码仓库。“greatfire”上集结了大量的翻墙工具与资讯,俨然一个巨大的“翻墙军火库”。“大炮”攻击目标的原理简单而有效:它会劫持跨越中国边境的流量,注入恶意脚本,向指定目标发动“DDoS攻击”。

DDoS

DDoS(Distributed Denial of Service,分布式拒绝服务),是一种通过巨大流量导致目标服务器不堪重负而下线的攻击手法。DDoS是一系列方法的统称,他们使用不同的技术,“大炮”所使用的流量劫持并注入恶意脚本的技术是一种比较新的形式。衡量一场DDoS攻击的能量,可以使用“峰值速率”。如2014年6月,香港的公民投票网站“PopVote”受到超过“300Gbps”的攻击,连提供网络支持服务的Google和Amazon都抵挡不住,宣布退出,最终服务商靠着全球网络服务业者联手,才维持“占中”公民投票持续进行。2015年7月,支持加密功能的即时通信软件Telegram受到超过“200Gbps”的攻击,受影响区域很快从东南亚蔓延到全球,导致大量用户无法通信。要知道100Gbps的流量有多大,可以想像同时在线点播两万部高清(720p)视频。也可以参考的一个数据,据CNNIC报告显示,截至2014年底,中国大陆的所有国际出口带宽总和为4100Gbps。

“墙”转守为攻的这一异常举动,是一个明显的信号,希望GitHub删除“有威胁”的代码仓库。最终,在巨大的舆论压力下,“大炮”停止了攻击。在墙的攻防体系中,“大炮”虽然不直接设防,但它对墙外的“反动势力”是一种威慑的的存在——必要的时候,随时可以出击。

墙的招式列表。大炮作为一种威慑的存在,以攻为守。制图:金秋枫


在“墙”的拼命围剿之下,传统翻墙手段逐一失效。原因很简单:主流方法都有特定的模式,逃不过基于机器学习的“深度包检测”技术。机器学习的准确性是随着样本增加而提升的,所以要逃离“墙”的围剿,就得把自己的流量伪装得不一样。海外专业VPN服务Astrill,以及国内的“曲径”、“红杏”等后起之秀,都是通过打造私有协议,来绕过检测。

在这种形势下,开源翻墙利器ShadowSocks被更多的人注意到,基于SS搭建的翻墙服务如雨后春笋一样出现。它的中文名为“影梭”,社区昵称为“SS”——这是一个由中国程序员发起的开源项目,主要开发者在墙内。

2012年4月,SS第一份代码提交;

2013年,SS完成主要开发;

2014年夏开始,由于墙的升级,SS受到社区更多的关注,进入高频升级的阶段;

……

ShadowSocks开发记录。


ShadowSocks提供的其实是一套框架,支持多种加密方式,可以监听不同的端口,只需要很简单的配置,就可以在客户端和跳板机之间建立一条隧道。这些特点,让SS成为“游击队员”们最喜爱的工具。作为一款“非主流”的工具,SS曾经是非常有效的翻墙手段。但从15年初开始,深圳的部分ISP已经部署针对SS的阻断系统——推测是基于同一套“深度包检测”技术。好在SS的参数衆多,随便调整一下,即可生成不同的“肖像”,令“墙”在观测不足的情况下,无法迅速动手。但随着时间推移,“墙”总会搜集到足够的样本。刚开始的时候,选一套SS的参数可以坚持几个星期,到后来,就只有几个小时了。但墙一天不倒,游击战就一天不停。换密码、换加密协议、换端口,如每天吃饭一样,逐渐变得规律。实在不行,就只有换IP了,即再买一个VPS。SS的高级玩家,会加入自己定制的加密模块,使得流量更隐蔽。总之,SS是一个开源项目,玩法多种多样,打游击的优势巨大。

2015年香港:遥看墙内围剿“造梯人”

还有太多重要的事情要做,不能将时间浪费在与“墙”无休止的游击战中——我决定搬回香港。

而墙内,一场密谋已久的围剿,终于显露。

2015年2月24日,24时。著名kindle电子书分享及讨论论坛“kindle人”在创建者被请“喝茶”后停站

8月20日,ShadowSocks作者在GitHub上关闭了相关项目的Issue面板并清空所有帮助信息,同时GitHub上“shadowsocks”组织的成员信息被隐藏。

8月21日,GoAgent(一款曾经主流的翻墙软件,托管在Google Code)的论坛上传出SS作者“被喝茶”的消息。

8月22日,ShadowSocks作者现身GitHub,证实“喝茶”,并删除了代码库。

8月25日,Google Code转为只读状态,GoAgent论坛散落。

8月25日,GoAgent托管在GitHub上的仓库被删。

8月25日,GitHub受到超过两个小时的DDoS攻击,攻击源目前不明。

8月26日,多处消息源显示,曲径、红杏等大陆多家VPN服务商受到直接或间接的压力,停止服务。

 

……

有哪些知名网站被屏蔽? 查看:维基百科

以前干掉的是制造和售卖梯子的人,现在连设计梯子的人也要干掉。

未来会如何呢?可以想像,大规模的VPN服务会消失;一些小规模的地下服务,继续运行。另一方面,翻墙工具链,势必会持续升级。

公开的成熟项目被封后,社区会衍生出不同变种,以适应“墙”的改变。特别是像SS这样的开放框架,稍作修改,又是一种玩法,无穷无尽。

但没了牵头的人,没了集中的论坛,知识传递的形式将会反古。

原本,互联网让知识可以扁平传递,现在“屠梯”行动恐将人们逼回“口耳相传”的模式。未来,“翻墙”可能是一种手艺,如何传承,任重道远。

(以上文章中的“我”并非本人,摘自互联网:X先生的亲身经历。)

GFW仍然不断的提升,我们能做到的是为言论自由,为畅游互联网而努力。截止2016年可使用的科学上网方式:

SS  VPN  HTTP/HTTPS/SOCKS5   TOR 

文/我毕竟不是神(简书作者)
原文:http://ift.tt/1NOFfDP



via 细节的力量 http://ift.tt/1sAHQqR

XX-Net v3.1.19

Fix bug:

  • Fix google verification problem 修复google搜索验证问题
  • Update SwitchyOmega.crx 更新SwitchyOmega.crx
  • Activate auto update 启用自动更新

Downloads

原文:http://ift.tt/22qerfC




via 细节的力量 http://ift.tt/22qeHeH

Wednesday, May 25, 2016

XX-Net V3.1.18

Fix bug:

  • Flush when saving good_ip.txt 修复good ip不能保留问题
  • Update deployment README.md 增加appid部署说明
  • Fix can’t use google scholar 修复google学术不能搜索问题

Downloads

原文:http://ift.tt/1GOIbdg




via 细节的力量 http://ift.tt/25lLyql

Tuesday, May 24, 2016

金盾防火墙概述

对于在中国地区的人们来说,要能够自由的上网是非常麻烦的事情。许多人在连到国外网站时,常常会看到连线已重设或是作业逾时的错误讯息(图1、图2)。本文以中国金盾工程(注1)中的的防火墙(注2)为例,说明中国地区的翻墙(或称科学上网)方式,以及防火墙存在的意义。


图1、作业逾时错误讯息


图2、连线已重设错误讯息




原理


要了解翻墙,先要了解网路运作的方式,以及封锁的原理。网路运作是这样的。事实上,当你在浏览器中输入一个网址以后,浏览器就会先拿这个网址去DNS伺服器查询,找出IP。之后在连往IP,取得网页内容。而传输的过程,就是以封包的方式传递资料。如果容量大,就会切割成很多封包来传递。


我知道很多人对这边的描述不太有概念,所以在这边解释一下。浏览器浏览网站,其实就像去一个朋友家里搬东西回来放到面前给你看一样。要去朋友家,那么就要先知道朋友家的地址。通常我们很难记住那么长一串地址,怎么办呢?DNS就像问路的人一样。如果你不知道地址,那么就问DNS,他会告诉你正确的地址在哪里。如果DNS也不知道,他就会去找他的长官一层一层的问,直到问到位址为止。


根据上面的连线原理,金盾防火墙使用了三种不同的封锁方式。金盾防火墙就像警察一样,站在国内、国外网路的交接口。如果这个警察发现你要前往被封锁的地址,他会把你拦下来不给你过。或者是当你在问路的时候,故意报给你一个错误的网址。就算你好不容易找到资料搬回来,警察也会打开每个货物检查。如果在检查货物的时候发现是违禁品,就会没收货物。


这就是三种封锁方式。第一种就是封锁特定IP,第二种是DNS污染,第三种是封包窜改或丢弃(又称为丢包)。在错误讯息上,前两者浏览器会回应作业逾时(图1),第三种会回应连线被重设(图2)。


不过除了技术上的这三种,还有第四种:备案。在中国,每个网站在成立的时候都要向公安备案,负责人要拍照存证,而且内容也会随时被审核。如果网站出了问题,放上了不该出现的内容,公安会联络网站把东西撤下来。如果情节严重,还会直接逮捕网站负责人。在中国,政府也能管DNS的查询内容,因此如果浏览器问中国国内的DNS怎么找到Facebook,他会故意给你错误的IP地址让你连不到(第二种)。


中国政府在每个国外和国内的网路交界处都设立了检查站,国内的网路里也有随机抽查的检查站。这些检查站会检查每一个通过的封包。如果发现IP地址已经列入禁止访问的名单,这些检查站会直接丢弃封包,让你看不到网站(第一种)。如果你连上的网站有敏感词(回应的封包里有敏感词),那么检查站也会把这个回传的封包丢掉,并且阻止你前往那个网站三分钟(第三种)。三分钟之后,又可以正常连线了。


刚刚不是提到问路吗?有的人会说,既然国内的DNS不能问,那我去问国外的好了。但中国的检查站一旦发现了你问的网址是不允许问的,会故意把你问路的封包拦下来,换另外一个伪装的封包来给你错误答案。这个被称作DNS污染(图3)。


结果就是在中国,许多网站都难以访问。就算国外网站可以连,也会因为这些层层检查而连线缓慢。


图3:金盾防火墙的封锁方式



突破方式


突破方式其实不难。前面不是有个检查站吗?只要外头有个朋友可以帮你,其实很多东西就方便许多。首先,检查站只防止前往特定网站,你可以先连去别的网站,再从那个网站转往原本要去的网站。再来,为了避免检查站发现你的内容不合法,因此要先把这些内容伪装起来,让检查员不知道那到底是什么。这就是加密。这条路只要建立起来,就可以透过这条路直接询问国外的DNS,也能透过这条路去访问国外的网站了。别人也可以透过先连到你的电脑来突破封锁了(图4)。


从原理来看,我们就能了解目前的翻墙方式了。首先,你需要建立一条加密的连线,连到外面可以访问的一个中继站,再来从中继站前往其他的网站。这些连线方式很多,基本的是VPN,还有ssh加密、goagent等几乎也都是这种方式。


不过,有些加密连线的方式已经被中国政府破解了。像是L2TP、openVPN都已经不能用了。目前为止VPN的通讯协议里只有PPTP使用正常。其他还算正常的有ssh连线的方式。不过这些连线和协议的使用状况依据不同的运营商、不同的连线方式还是有不一样的限制。比如说,虽然ssh协议的连线还算正常,但如果发现传输速度过快,还是可能会把封包丢弃,或是强制降低连线速度。而防火墙也会对部份网站进行间歇性封锁,或是在特殊时期封锁特定网站。这些无法预测、烦不胜烦的阻扰方式才是防火墙令人讨厌的原因。


这边所提到的翻墙方式目前是可以运作的。中国现在的防火墙是只让你不能去访问有问题的网站,其他网站预设都是可以访问的。这被称做黑名单模式。如果变成只能访问没有问题的网站,也就是白名单模式,这条路就没有办法运作了。因为那些网站肯定是不会帮助你浏览其他网站的。这就是北韩所做的网路封锁。


关于更详细的原理,请参考后面所附上的《翻墙路由器的原理与实现》(注3)一文。


图4、翻墙破解方式



为什么要进行网路封锁?


大体而言,中国的网路封锁并不是真正让你没有办法看到外面的网站,而是提高获得外部讯息的成本。在这个网路时代,取得讯息是快速、方便又低成本的事情。一旦取得资讯需要花上大量的精力,就会降低许多人想要获得这些资讯的欲望。


而中国的金盾防火墙就是针对这一点。防火墙的存在不是为了“阻断所有资讯”,而是为了“提高资讯取得的成本”。只要提高成本,减少愿意取得“有害资讯”者的数量,他就已经成功了。金盾防火墙可以有效的阻止那些没有好奇心的人知道不该知道的东西,这些人才是防火墙真正的标的。人们会花时间去寻找游戏和影片,却很少有人愿意花心思、功夫去看一篇可能会改变自己想法的文章。因此虽然突破的方法只要有心就找的到,但对于没有好奇心的人来说,金盾就足以阻止他们的行动了。


防火墙分割了中国和外国的网路,也导致中国的网路文化和世界上其他国家的网路文化格格不入。许多有行动能力进行翻墙的人在第一次接触到外来的网路文化时,常常会因为文化冲突的缘故而不喜欢、甚至对外来思想产生反感。网路论坛上常见的中国愤青就是由此而来。能够放下身段、包容不同文化甚至接受不一样思想的人又更少了。


举个例子来说,中国的魔兽世界由于迟迟无法更新,因此大批中国玩家蜂拥至台湾的魔兽世界伺服器游玩。但他们来到台湾伺服器以后,往往就直接带来当地的游戏文化,甚至用语、说法完全不改,不懂的入境随俗,造成许多台湾玩家的不满。有的台湾玩家和中国玩家甚至在游戏的公共频道上互骂。在这种对中国玩家不友善的环境中,能够包容、接受不一样文化的中国玩家就更少了(注4)。


在行动力、技术能力、文化冲突的多重过滤下,导致能取得“有害资讯”的人数成等比级数的降低。再加上国内网站的关键字屏蔽、过滤,中国政府就能有效的控制那些异议者的数量。剩下来的异议者,只要单纯打为“反革命份子”、“异类”、“精神病”,就能控制他们思想的传递。金盾就像资讯的海关,可以用来保护“政府希望人民所相信的思想”。


中国的网路上又时常出现审查、删帖的讯息(图5)。这些网路警察的行为会先在人们心理中塑造出恐惧。你根本不知道自己的言论何时会受到审查,因此大多数人就会假定“自己的言论会被审查”。这会导致所谓的“自我审查”。自我审查的效果,比起网路审查的效果还来的巨大。有些台湾的新闻网站为了避免被防火墙给封锁,损失来自中国的流量,因此自我审查,过滤对中国不利的新闻,就是最好的例子。


图5、新浪微博的审查讯息(图片来源:微博 @平湖春晓)


恐惧把审查这件事情放大了许多倍。只要大家认为审查是存在的,审查的效果就出现了。这,也就是金盾防火墙的存在意义。(注5)


原文:http://ift.tt/1qG1GQq




via 细节的力量 http://ift.tt/1OL8KRP