Quantcast
Channel: GFW BLOG(功夫网与翻墙)
Viewing all 1645 articles
Browse latest View live

轻松部署 V2ray 教程

$
0
0

因为某知名代理软件不再开发,所以我们需要找到一个保持更新的高效的代理软件用于以后的使用。还记得之前我们开发过一个 V2ray-Bash 的程序,配置V2ray非常简单。但是博主因为某些特殊原因,不得不删除这些脚本了。今天给大家介绍一个非常非常简单快捷地部署V2ray的方法。


来源: https://www.zhujiboke.com/2017/07/646.html

简介

V2rayN是一个用于Windows上的V2ray客户端软件,因为其功能简单易懂,非常适合小白使用。

下载安装

V2rayN 地址:https://github.com/v2ray/v2rayN/releases
V2ray-Core地址:https://github.com/v2ray/v2ray-core/releases
下载完成后解压,然后把V2ray-CoreV2rayN的文件都放在同一目录下
如图所示:

轻松部署V2ray教程

然后我们打开 V2rayN程序

轻松部署V2ray教程

在V2rayN软件里选择添加一个服务器。

轻松部署V2ray教程

在这里输入你想使用的配置,然后点击确定。如果有什么不懂得,可以参考官方手册:http://v2ray.com

轻松部署V2ray教程

然后我们右击这个服务器,选择导出为 服务端配置。
然后把这个文件保存到桌面上,命名为 config.json文件.
然后我们连接上服务器,使用V2ray官方的一键脚本安装(脚本仅支持 Centos 7、Debian 8、 Ubuntu 14 +)

  1. bash <(curl -L -s https://install.direct/go.sh)


然后我们看到这里就表示安装完成了。
轻松部署V2ray教程
下面我们将刚刚导出的,保存在桌面的 config.json上传到VPS上面。
下面,我们删除 /etc/v2ray 里面的 config.json 文件,然后把我们刚刚上传的文件移动过来。
如果你上传到 /root 目录里,我们命令这么写:

  1. rm -rf /etc/v2ray/config.json #删除原来服务器上的配置文件

  2. mv /root/config.json /etc/v2ray/#把刚刚上传到 /root 里面的 config.json 复制到 V2ray 目录下

  3. service v2ray restart #重新启动V2ray


当配置文件复制完,V2ray重新运行后,我们开启刚刚的端口的防火墙规则:

  1. iptables -I INPUT -m state --state NEW -m tcp -p tcp --dport 你配置的端口号-j ACCEPT

  2. iptables -I INPUT -m state --state NEW -m udp -p udp --dport 你配置的端口号-j ACCEPT


然后我们大功告成!我们就可以看到电脑上V2rayN也在运行,我们这时候就可以使用IE代理设置,或者一些浏览器插件,来使用本地1080代理。
如果只是使用谷歌浏览器上网,推荐各位安装使用 Proxy SwitchyOmega 插件,Chrome插件地址:点我点我

Potatso 2:我不是一盘普通的土豆丝

$
0
0

在印象里,Potatso 是继 Surge 后用过的第二款中文网络加速应用,68 元(初上架那会儿卖 45 块)的价格在当时比 Surge 便宜不少,但实现的功能却不比后者少,再后来就是 Shadowrocket,只卖 18 元,再再后来就不再关注此领域了,因为同类的应用已经泛滥于 App Store,而且购买的 SS 服务也都有对应的 iOS 客户端,完全不必为挑选一款加速应用而去烦恼。


来源:https://www.waerfa.com/potatso-review
下载:https://itunes.apple.com/us/app/id1162704202

Potatso 自一代开始就以”完美支持 Shadowsocks”,”自动区分国内外流量”,”后台保持链接”,”4G / WiFi 切换不断线” 等特点广受粉丝喜爱,在 2.0 版本上,这款应用支持了 Socks 5, ShadowsocksR 等更多代理方式,可自定义 DNS,多配置资料下随意切换,你可以为家中的上网习惯设置一套配置资料,或者为户外上网配置一套资料,总之,在代理服务器和规则集的帮助下,我们能自定义出各种各样的加速环境。


Potatso 2 的设计没有 Surge 那么花哨,链接代理后,用户可在仪表盘页面实时查看网络链接记录,也可以在 Today Widget 上开关代理,并查看实时的速度,Widget 支持代理服务器切换和 4G / Wi-Fi 的网速查看。

用户可通过 iCloud 实现在各个 iOS 设备同步代理数据,另外还可以从 PCF(Potatso Config File)、二维码、URL 链接导入代理、规则集等数据。
Potatso 2 依旧提供了强大的规则集系统,你只需要找到被「污染」的域名,并将它添加到规则中即可。在网络日志里,当你看到一个链接请求旁显示「小地球」图标,就代表此域名是通过代理连接的;而「双向箭头」图标则说明域名是直接连接的。
玩过此类应用的同学应该对规则集的设置不陌生,Potatso 也是提供了「DIRECT」、「PROXY」、「REJECT」三种方式,可用于直连(国内网站、服务)、代理(国外的)以及对商业广告的屏蔽功能。域名匹配方式分精准匹配(-MATCH)、后缀(-SUFFIX)、地理IP(GEOIP)等方式。
Potatso 2 的预定义在线规则集资源不多的,需要用户自己去找,当然当你谷歌关键词时会出现一大堆配置(PCF)或规则集,拷贝下来直接用 URL 导入进来就行了。
Potatso 相关使用教程有太多了,小编找了两个比较经典的,供大家学习:《续笔记》、《Potatso 土豆丝设置教程
最后附上一个土豆丝的规则集二维码分享给大家:

ShadowSocks(影梭)不完全指南

$
0
0

不用SS客户端,手机照样可以科学上网的方法

$
0
0

不用ss客户端,手机照样可以科学上网的方法 ,本教程适用于安卓和iOS设备。
教程前提:手机和电脑处于同一局域网/WiFi内
来源: http://www.tizi.pw/android-without-ss-client-google/


电脑端的设置: 以shadowsocksR为例


然后允许来自局域网的连接

按照图示设置,然后退出shadowsocksR, 再打开shadowsocksR。即重新启动shadowsocksR
打开cmd命令行,输入ipconfig,获得本机的局域网IP地址
然后我们来说下手机端的设置
安卓设备,在WiFi的高级选项中,有个代理选项,打开那项,主机名输入电脑ip(命令行中输入ipconfig可以看到ip),端口输入1080(固定的,就是1080),如图,然后确定。

点击确定之后,就可以在安卓手机浏览器中打开 Google、youtube了。

这个排行榜告诉你,哪些科技公司更愿意对抗政府数据请求

$
0
0

Low Angle View Of Security Camera On Wall



来源: http://techcrunch.cn/2017/07/14/eff-2017-government-privacy-scorecard/amp/

电子前线基金会近期发布了报告“ 谁保护你的信息?”,详细列举了大型科技公司在保护用户数据,应对政府数据请求时的行为。


此次的年度报告包含了美国四大移动运营商,以及科技行业最重要的公司。某些赢家和输家符合我们的预期,但另一些公司的情况令人吃惊。

电子前线基金会以五星制对这些公司进行评价,衡量了公司 5 个方面的情况:遵守行业范围内的最佳隐私行为规范,向用户告知数据请求,向第三方出卖用户信息, 坚持对抗 这些请求,以及支持对 702 监控规定 的废除或改革。在该基金会的评价体系中,五星意味着企业最不可能出卖你的信息,而零颗星意味着,这些企业几乎没有采取任何措施,应对政府的数据请求。
  • 五星:Adobe、Credo Mobile、Dropbox、Lyft、Pinterest、Sonic、Uber(或许你猜不到 Uber 能够入选)、Wickr 和 WordPress。
  • 四星:苹果、Facebook、谷歌、LinkedIn、微软、Slack 和雅虎。
  • 两星:亚马逊、WhatsApp。
  • 一星:AT&T、康卡斯特、T-Mobile 和 Verizon。
多家公司的评分为三星,包括 Airbnb、Snap 和 Twitter。需要指出,这个评级系统关注的是政府对数据的请求,而不涉及面对广告主和其他机构时的用户隐私保护(因此 Facebook 和谷歌评为了四星)。如果希望了解每家公司的优点和缺点,那么可以在这里查看 报告全文 。
对于不太熟悉电子前线基金会这家组织的读者,该组织提供关于隐私保护非常有用的快速指南,将许多政策综合为类似这样的排行榜,并每年发布这样的报告。
翻译:维金

欢迎测试 Tor 浏览器的新网桥

$
0
0

可插拔传输层 是一种洋葱路由用来伪装其传输的数据信号之特殊工具,当您的网络服务供应商或所处的网络环境会过滤阻挡通往洋葱路由网络的连接时,此工具即可发挥其功用。


来源: https://tb-manual.torproject.org/zh-CN/

Tor 浏览器(Tor Browser )7.5a4 实验版发布,7.5a4 实验版集成一个实验性的新网桥:snowflake (目前仅支持 Mac OS X 与 Linux),欢迎测试并报告使用情况,以帮助软件更好的改进。

下载地址:https://www.torproject.org/projects/torbrowser.html.en,请在 Experimental Tor Browser 下载位置选择适合您语言及系统的安装包。

请确保是在关闭 VPN 及其它翻墙工具情况下进行测试。

安装完成,会先出现 “Tor 网络设置” 选项卡,在这里选“配置”,如下图所示:



在接下来的界面会询问你网络服务商(ISP)的情况,选“是”。然后并在新界面中,“使用集成的网桥连接”下拉框选择“ snowflake ”,如下图所示:



然后点下一步,会需要选择“本地代理配置”的情况,如果使用代理就填写代理的数据,否则就选否,并点 “连接”。

这样就会连接的界面,需要等一些时间,如下图所示:




连接过程,可能会成功,成功后会关闭网络连接窗口,并自动打开浏览器。也可以连接失败,如下图所示:





欢迎测试与反馈,最好可以提供: 您的城市、网络服务商 及 snowflake是否可以连接 。


聊聊 GFW 如何封杀 Resilio Sync(BTSync)?以及如何【免翻墙】继续使用?

$
0
0
★引子
★BTsync 如何实现【节点发现】?
★GFW 如何封杀 BTsync?
★为啥 GFW 难以封杀 DHT 网络?
★如何让你的 BTsync 客户端使用 DHT 网络?
★Q & A
★结尾

来源: https://program-think.blogspot.com/2017/08/GFW-Resilio-Sync.html


★引子


  最近一个多月,有好些读者抱怨 Resilio Sync(原名叫做“BitTorrent Sync”,简称“BTsync”)无法正常使用。所以俺一直打算写一篇来谈谈这个事情。顺便也分享一下:如何继续【免翻墙】使用 Resilio Sync。
  (注:为了打字省力,本文以下部分使用“BTsync”来表示“Resilio Sync”。请原谅俺的懒惰)

  如果你从来没有听说过 BTsync 这个玩意儿,建议先看看维基百科(中文洋文)。另外,还可以看看俺写的扫盲教程(在这里)。
  俺之所以大力普及该软件,关键在于:任何人都能用它来搭建一个【分布式】的网盘。关于【分布式】的重要性,俺已经唠叨过很多次了。对这个话题感兴趣的同学可以看下面这篇:
“对抗专制、捍卫自由”的 N 种技术力量



★BTsync 如何实现【节点发现】?


  为了聊今天的话题,需要先介绍一点点基础知识——BTsync 的“节点发现”机制。
  大伙儿应该都知道:BT Sync 是一款点对点(P2P)的工具,用来进行文件共享和文件同步。对于任何一款 P2P 软件,其关键的机制是【节点发现】(洋文叫做“peer discovery”)。
  BTsync 有两种完全不同的使用场景,分别是:局域网 和 公网。今天这篇只讨论 BTsync 在【公网】的使用。
  BTsync 要想在【公网】上找到其它节点(peer),大致通过如下几招:

◇Tracker Server(追踪服务器)


  BT 下载的老用户应该听说过 Tracker 这个概念。打个比方,Tracker Server 类似于节点(peer)之间的中介,互不认识的节点通过 Tracker Server 来获得对方的信息(IP 和端口)。
  那么,BTsync 的客户端是如何知道 Tracker Server 的 IP 地址捏?通常有两种方法:
  方法1
  客户端软件本身已经内置了若干个 Tracker Server 的 IP 地址和端口。
  方法2
  客户端软件先连上 BTsync 公司官方的某个网站(通过域名的方式),然后得到某个配置文件,这个配置文件中会包含 Tracker Server 的 IP 地址和端口。比如下面这个网址,就是某些版本的 BTsync 用来获取配置文件的网址。
https://config.resilio.com/sync.conf

◇DHT 网络


  DHT 是个啥玩意儿捏?这个说来话长,今天就不展开细谈了(有空的话,单独写了一篇)。
  简而言之,你可以通俗的理解为:DHT 是用来弥补 Tracker Server 的局限性的。有了 DHT 这个机制,【不】需要依赖 Tracker Server 也可以做到【节点发现】。
  当然啦,【这是有前提滴】——你要先连上 DHT 网络的某个节点。然后就可以通过你的第一个接入节点,逐步找到 DHT 网络中的其它节点,并且还能找到你想要获取的数据位于哪些节点。(这就好比你要想加入某个封闭的社团,先要得到社团中的某个人作为你的引荐人)
  怎样找到 DHT 网络中的某个节点并与之建立连接,用技术行话称之为“bootstrap”。显然,bootstrap 是 DHT 的关键。
  如果 BTsync 客户端支持 DHT 并启用了 DHT,客户端通常是先连接到 Tracker Server,然后就可以通过 Tracker Server 获得某个 DHT 网络的节点,于是就实现了 DHT 的 bootstrap。

◇Predefined Hosts(预定义主机)


  所谓的“预定义主机”,说白了就是:用户自己在 BTsync 客户端的配置界面输入其它节点的 IP 和端口。
  这个功能用得不多,但在某些情况下很有用。比如前面提到 DHT 的 bootstrap。在某些特殊环境中(比如墙内),你可以通过“预定义主机”这个功能添加某个 DHT 网络中的节点,然后你的 BTsync 客户端就可以实现 bootstrap 并加入到 DHT 中(关于这点,待会儿俺还会细聊)

◇这几种方式的优缺点对比


  Tracker Server(追踪服务器)
  这个机制最傻瓜化,完全无需用户干预。
  但是这个机制也是【最容易被封杀】的。

  DHT 网络
  在没有“墙”的网络环境中,这个机制同样也是很傻瓜化的(客户端会自动通过 Tracker 找到 DHT 网络)
  但如果是在【墙内】,Tracker 已经被屏蔽,需要手动实现 DHT 的 bootstrap(具体如何做,待会儿俺细聊)。
  一旦实现了 bootstrap,DHT 很难被封杀。

  Predefined Hosts(预定义主机)
  这个机制的操作门槛最高。被 GFW 封锁的难度与 DHT 相当。
  其门槛在于——你需要找到【IP 地址固定不变】的 BTsync 节点(至于如何找到这种节点,在本文后续部分会提及)



★GFW 如何封杀 BTsync?


  看完上面的介绍,聪明的同学已经猜到 GFW 是如何封杀 BTsync 的。其实很简单,只要封锁 Tracker Server(追踪服务器)就可以让绝大部分客户端失效。因为绝大部分客户端都需要依赖 Tracker Server 来实现“节点发现”。
  要封锁 Tracker Server,GFW 可以有两种方法:其一是“域名污染”,其二是“IP 黑名单”。(关于“域名污染”这个概念,可以参见俺之前的扫盲教程——《扫盲 DNS 原理,兼谈“域名劫持”和“域名欺骗/域名污染”》。

  刚开始的时候,GFW 采用“域名污染”的方式。所以网上也相应出现了一些文章,介绍若干招数,用来对抗域名污染,以便继续使用 BTsync。这些招数,无非就是:“修改 hosts 文件” 或 “加密 DNS 传输”。
  说到这儿,俺要稍微泼点冷水。不论你是“修改 hosts”还是“用 dnscrypt 加密域名解析的传输”,都只能用来对付“域名污染”,但却【无法】对付“IP 黑名单”。由于 BTsync 官方提供的 Tracker Server,数量很有限(通常只有4个,2个是 IPv4,2个是 IPv6),而且这4个服务器的 IP 地址相对固定(不会经常变)。所以 GFW【很容易】就可以封掉这几个 IP 地址(简直可以说是“易如反掌”)。
  那么,咋办捏?



★为啥 GFW 难以封杀 DHT 网络?


  综上所述,要想让 BTsync 可以【免翻墙】使用,就不要再指望 Tracker Server 这种“节点发现”的机制了。因为这种机制太容易被封杀。
  相比之下,GFW 要想封杀 DHT 就会困难得多(不是不可能,而是难度急剧增大)。为啥捏?主要有如下几个难点:

◇难点1


  因为 BTsync 的 DHT 网络中会有很多节点,而且这些节点是动态变化的——每时每刻都有老的节点下线并且有新的节点上线。要想通过“IP 黑名单”的手段来屏蔽 DHT 网络中的所有节点,(对 GFW 维护人员来说)工作量会变得很大。

◇难点2


  从技术上讲,GFW 的开发团队也可以做一些伪装成 BTsync 客户端的 agent,用这些 agent 来探测由 BTsync 客户端所构成的 DHT 网络中的节点信息。
  但是,每个 DHT 节点并不能得到整个 DHT 网络的所有节点的信息,而只能得到其中一个很小的子集(只占整体的一小部分)。
  所以,如果要用这招,GFW 开发团队需要构造足够多的 agent。(即便这样,这招也【无法解决】下面的第三个难点)

◇难点3


  在 BTsync 的 DHT 网络中,有些节点位于【墙内】。GFW 对这些墙内节点是【无可奈何】的。因为 GFW 部属的位置在天朝公网的【国际出口】。通俗地说,GFW 只能屏蔽流经国际出口的流量。如果有两个节点【都在墙内】,那么这两个节点之间的流量是不会被 GFW 检测到,也不会被 GFW 屏蔽。

◇补充说明


  虽然这个章节讲的是:BTsync 客户端构成的 DHT 网络。但其它形式的 DHT 网络,原理也是类似的,它们也会让 GFW 头疼。



★如何让你的 BTsync 客户端使用 DHT 网络?


◇首先,要选择【正确的】客户端版本?


  刚才提到了 DHT 的重要性。对于 BTsync 而言,只有4个大版本支持 DHT,分别是:
1.3.x(同步目录数无限制,但不支持“选择性同步”)
1.4.x(同步目录数无限制,但不支持“选择性同步”)
2.0.x(免费试用30天,30天之后如果不付费,最多只能同步10个目录)
2.1.x(免费试用30天,30天之后如果不付费,最多只能同步10个目录)
如果你不需要“选择性同步”这个功能,就选 1.4.x 版本。
  除非你极其需要“选择性同步”这个功能,才去选 2.1.x 版本,然后参考本文后续的【Q & A】章节,破解时间限制。
  (本文后续部分的示意图会用 1.4.111 的界面进行截图,这个版本不仅是 1.4.x 的最后一个版本,也是 1.x.x 的最后一个版本)

  根据某些读者反馈:1.4.x 版本尚未被彻底封杀,可以【直接使用】(提醒:在每个同步目录的“偏好设定”选项中,要记得勾选 DHT)。
  虽然 1.4.x 目前是直接可用,但说不定过了几天就会出问题。所以大伙儿要重点阅读下面这个章节。

◇如何加入到 DHT 网络?


  前面说了:接入 DHT 网络的关键是——找到 DHT 网络中的某个节点并与之建立连接(行话叫“bootstrap”)。下面要介绍的就是——如何在【墙内】实现 bootstrap。

  步骤1
  由于 GFW 封锁了官方的“追踪服务器”,你的客户端第一次运行时多半找不到任何 DHT 的节点。这时候你要先让 BTsync 走翻墙通道。
  BTsync 翻墙可归纳为两种:其一是 VPN,其二是 proxy。(对于技术菜鸟,俺建议用 VPN,比较傻瓜化)
  对于 VPN 方式:你需要在系统中运行 VPN 软件并正常连接到 VPN 服务器,然后在这个系统中运行 BTsync,BTsync 本身【无需】额外设置,就能自动通过 VPN 翻墙了。
  对于 proxy 方式:你需要进入 BTsync 的“偏好设定”界面,找到 proxy 选项,正确填写。设置完 proxy 要记得重启 BTsync。

不见图 请翻墙
(在界面右上方的工具条,点击最右边那个按钮,打开菜单)

不见图 请翻墙
(在全局设置中填写代理的“类型、地址、端口”)

  步骤2
  添加一个同步目录的密钥(如何添加同步密钥,请参见扫盲教程),然后设置这个新加目录。

不见图 请翻墙
(选中这个同步目录,点最右边那三个点的按钮,打开菜单,然后点“偏好设定”)

不见图 请翻墙
(要记得勾选【DHT】这项)
等待一段时间(具体多长,视情况而定)。你要一直等,直到客户端界面上已经显示出若干节点数,并且已经开始进行同步。

  步骤3
  为了保险起见,你再次进入【每个同步目录】的“偏好设定”界面,【确保勾选 DHT】,同时把“追踪服务器”和“中继服务器”这2个选项【都去掉】。
  然后重启 BTsync。等待它进入正常工作状态(找到其它节点并正常同步)。当它能正常工作,就说明 BTsync 已经基于 DHT 而【不再依赖】Tracker 了。

不见图 请翻墙
(去掉“中继服务器”和“追踪程序服务器”这2项,但要记得保留 DHT 这项)

  步骤4
  到了这最后一步,你可以把翻墙通道关掉,测试 BTsync 是否能【免翻墙】正常同步。
  对于 VPN 翻墙,你只需要关闭/退出 VPN 软件,BTsync 不用重启;
  对于 proxy 翻墙,你需要进入 BTsync【全局】的“偏好设定”界面,去掉所有 proxy 的设置(地址、端口),然后记得要【重启】BTsync(重启后,proxy 设置的改变才会生效)。

◇如果你很久【没有】运行 BTsync,导致再也连不上 DHT,如何复活?


  BTsync 一旦接入了 DHT 网络,会把它得到的 DHT 网络的节点信息(地址、端口)保存在本地的某个文件中。那么当它下次启动的时候,就不用再费劲地去搞 bootstrap 了。
  但是,假如你已经很长时间(比如超过一周)没有运行 BTsync,这时候本地保存的那些节点信息可能已经过时(请记住:DHT 网络的节点是在动态变化中的)。于是你的 BTsync 客户端又处于“脱离组织”的状态。这时候你需要再次重复前一个小节的那几个步骤,再来一次 bootstrap 操作流程。

◇如何避免客户端脱离组织?


  刚才俺说了:如果你在墙内并且长时间没有运行 BTsync,那么将来再次启动 BTsync 会找不到 DHT 网络(脱离组织)。如何避免这种情况捏?俺简单介绍几招:

  招数1:经常运行/始终运行
  如果你是在 PC 上运行 BTsync,并且你的 PC 具备互联网的宽带接入。那么你干脆就让这个 BTsync 一直运行(提醒:在 BTsync 客户端上【至少添加一个】同步目录)
  在这种状态下,你这个客户端始终是 DHT 网络这个组织的一份子,它可以持续得到 DHT 网络中节点变化的信息。这样就可以避免脱离组织。

  招数2:用“预定义主机”的方式添加固定节点
  要玩招数2,要求比较高,需要一个前提——你知道某个【地址/端口都相对固定】的 DHT 节点。
  假设你知道了这种节点,那么你就可以进入【每个同步目录】的“偏好设定”界面,把这些 DHT 节点的“地址/端口”填写到“预定义主机”中。

不见图 请翻墙
(选中这个同步目录,点最右边那三个点的按钮,打开菜单,然后点“偏好设定”)

不见图 请翻墙
(勾选“使用预定义主机”,然后填写主机的“IP 地址、端口”)

  完成上述设置后,客户端在每次运行时都会去找你添加的这几个节点,然后通过这些节点找到 DHT 网络的其它节点。
  有的同学肯定要问了:这种“固定地址的 BTsync 节点”是怎么来的。
  最直接的办法是:你自己买一个 VPS,并且这个 VPS 的地址【尚未】被 GFW 封杀。然后你在这个 VPS 上【长时间运行】BTsync,并且这个 BTsync 要记得使用 DHT 网络。那么这个 VPS 上的 BTsync 就会成为 DHT 网络中的一个稳定节点。然后你就可以让自己手机端或 PC 端的 BTsync 首先通过这个 VPS 节点进行 DHT 联网。
  如果你自己懒得搭建 VPS,也可以通过你朋友或同事搭建的 VPS 来这么干。
  再不济,你还可以去某些论坛或聊天群里面打听,或许也能了解到这种固定地址的 DHT 节点。



★Q & A


  在文本结束前,补充一个问答时间。下面是一些经常被提及的问题。

◇读者提问:为啥新版本的 BTsync(Resilio Sync)反而没有 DHT 功能?


  从前面的介绍中可以看出:早期版本是支持 DHT 的,从 2.2.x 开始就去掉了 DHT。
  俺个人的猜测是(纯属个人猜测):
  BT 公司(BitTorrent, Inc.)是一直想通过 BTsync 来赚钱的。比如说:2.0 和 2.1 版本搞了一个“同步目录数限制”,用户要付费才能取消限制(这种伎俩引发众怒,所以官方被迫在 2.2.x 版本又去掉了限制)。再比如说:BT 公司后来剥离出一家 Resilio 公司单独运营 BTsync,并把 BTsync 重新包装成 Resilio Sync,这些也都是为了商业营销方面的考虑。
  而去掉 DHT 的关键性在于——没有 DHT,所有的客户端都需要先连接到官方提供的 Tracker Server(追踪服务器)才能工作。这样一来,BT 官方(Resilio 公司)就可以对客户端软件具有【更多的控制力度】。
  举个例子:从 2.2.x 开始的版本都需要依赖 Tracker Server。对这些版本的客户端,(从技术上讲)BT 公司有办法强迫它们升级版本(不升级就使之无法工作)

◇读者提问:BT sync 会暴露公网 IP 吗?


  如果你的 BTsync 客户端【没有】通过代理或 VPN 的方式,而是直接联网,那么与你连接的其它节点【可能会】看到你的公网 IP。

◇读者提问:对于电信运营商(ISP)或者公司网管,能监控到我的 BTsync 流量吗?


  BTsync 传输的数据是强加密的。所以,监控网络流量的人(Sniffer)最多只能猜测出你在用 BTsync,但是【无法知道】你正在同步的文件名和文件内容?

◇读者提问:用 BT sync 同步翻墙工具会被跨省吗?


  维稳系统的人力(比如说网警)是有限的,他们的精力也是有限的。所以他们会重点搜捕敏感信息的【发布源头】(比如像俺这种大坏蛋)。对于【获取】敏感信息的普通网民,他们才没空搭理你。
  以翻墙来举例:
  六扇门(公安、国安)是不会去抓翻墙的网民(太多了,抓不过来,而且法不责众)。相比之下,网警会想办法去定位翻墙工具的作者。
  对于 BT sync 也类似。如果你通过 BT sync【获取】敏感内容,六扇门才懒得理你;但如果你通过 BT sync【发布】敏感内容,就要小心被六扇门的人盯上。所以,俺作为 BT sync 的发布源,一直是采用【基于 TOR 的多重代理】来运行 BT sync。

◇读者提问:(在不付费的情况下)如何去掉 2.1 和 2.2 的限制?


  (先声明:这招是网上看来的,俺【没】尝试过)
  在安装前,先把系统时间调到若干年之后(比如2020年或2030年),然后再安装。
  等到你用了超过30天,试用期结束了,你把系统事件调回正常的。这时候 BTsync 会以为还在试用期内。

◇读者提问:为啥不用 Syncthing 来替代 BTsync 作为分布式网盘?


  首先俺承认:Syncthing 作为开源软件,在“开源”这点上明显好于闭源的 BTsync。
  但是,Syncthing 的问题在于——更适合用于【私有分享】,而【不适合】用于【公有分享】。也就是说,你个人用它在多台设备之间同步,是没啥问题滴;但像俺这样用来搞一个面向成千上万网民的分布式网盘,Syncthing 就显得不合适了。



★结尾


  今天先聊到这儿。关于本文介绍的这些,需要大伙儿多反馈,多分享经验。
  与 GFW 斗争,需要群策群力。(套用我党的一句口号)要让 GFW 陷入到人民战争的汪洋大海!


俺博客上,和本文相关的帖子(需翻墙)
扫盲 BT Sync——不仅是同步利器,而且是【分布式】网盘
“对抗专制、捍卫自由”的 N 种技术力量
提供“博客离线浏览”和“电子书制作脚本”——用 BT Sync【免翻墙】自动同步
扫盲 DNS 原理,兼谈“域名劫持”和“域名欺骗/域名污染”

2017-08 - 翻墙技术与大事记


Hexo+IPFS搭建个人免服务器独立博客

$
0
0

很多人都折腾过个人博客,租免费空间,vps,绑定域名等等,可一直被各种各样的问题折磨着,配置服务器、配置github、打包部署等等…,博主也如此折腾过,直至基于区块链的星际文件系统(IPFS)出现,博主就想干脆直接将博客挂在了IPFS的区块链上,不再要折腾服务器,不再要各种配置,只要买个域名,安心写博文就行,如此方便。下面就一步步介绍如何使用IPFS来实现免服务器Hexo博客。


来源: http://esgbox.com/20170413.html
一些IPFS网站:https://amp.reddit.com/r/ipfs/comments/63ev6h/list_of_ipfs_websites/

配置

1. 配置Hexo

Hexo是一款基于Node.js的静态博客框架,安装Hexo需要用到Nodejs,作用是用来生成静态页面,到Node.js官网下载相应平台的最新版本,一路安装即可。

1.1 安装Hexo

Node安装好后,首先创建一个文件夹,如blog,用户存放hexo的配置文件,然后进入blog里安装Hexo。
执行如下命令安装Hexo:
npm install -g hexo

1.2 初始化

然后,执行init命令初始化hexo,命令:
hexo init
好啦,至此,全部安装工作已经完成!blog就是你的博客根目录,所有的操作都在里面进行。

1.3 生成静态页面

hexo generate(hexo g也可以)

1.4 本地启动

启动本地服务,进行文章预览调试,命令:
hexo server
浏览器输入http://localhost:4000
我不知道你们能不能,反正我能,因为我的环境都配置好了,如果无法看到hexo页面,请自行百度查找原因。

2. 配置IPFS

IPFS是点对点协议InterPlanetary File System的简称,它是一个面向全球的、点对点的分布式版本文件系统,试图将所有具有相同文件系统的计算设备连接在一起。
近日,IFPS宣布了一个未来web发展计划,它用基于内容的地址替代基于域名的地址,也就是用户寻找的不是某个地址而是储存在某个地方的内容,不需要验证发送者的身份,而只需要验证内容的哈希,通过这样可以让网页的速度更快、更安全、更健壮、更持久。IPFS表示,IPFS未来将替代HTTP(以及其他的许多东西)。

2.1 安装IPFS

至官网下载对应版本,一路安装即可,笔者是64位win10系统,下载对应zip解压后,将ipfs.exe添加到%PATH%。
测试是否安装成功:ipfs help
出现 USAGE:
ipfs - Global p2p merkle-dag filesystem.

即可。

2.2 启动本地IPFS节点

第一步:先初始化IPFS
ipfs init
第二部:打开节点
ipfs daemon
此时,你可以在http://localhost:5001/webui,打开自己的操作台。

2.3 将Hexo博客部署到IPFS节点上

Hexo是一个静态博客生成器,执行hexo generate后,会在博客目录生成/Public目录,该目录即为全部博客内容
执行 ipfs add -r public
得到:added QmXJJm7aydK22eF1BdKVozcXH5Ltm8ZwbFHo3c36hi9qUx public
QmXJJm7aydK22eF1BdKVozcXH5Ltm8ZwbFHo3c36hi9qUx即为博客网站的site_hash,你可以通过任意运行IPFS的节点访问,如:http://localhost:8080/ipfs/$SITE_HASH,也可以通过官方运行的节点访问:http://gateway.ipfs.io/ipfs/$SITE_HASH。

2.4 绑定独立域名

刚才,我们通过ipfs add,将博客发布到了IPFS运行的区块链节点上,但复杂的site_hash并不友好,我们可以使用IPNS技术,通过绑定独立域名来实现与现有的网站访问并无任何不一样的体现。我们假设你已经有一个可以正常使用的域名,如aa.com,没有域名的可以到任意域名服务商初购买。
首先,我们将网站发布
执行 ipfs name publish QmXJJm7aydK22eF1BdKVozcXH5Ltm8ZwbFHo3c36hi9qUx
得到 Published to QmV61ui6H9qX3126yGH846dPkMgSe7SZcDxrVwm2gxTidu: /ipfs/QmXJJm7aydK22eF1BdKVozcXH5Ltm8ZwbFHo3c36hi9qUx
记住QmV61ui6H9qX3126yGH846dPkMgSe7SZcDxrVwm2gxTidu为你的peerid,该hash是保持不变的。
那好,我们现在只需要将aa.com解析到上述地址即可,添加TXT记录为dnslink=/ipns/QmV61ui6H9qX3126yGH846dPkMgSe7SZcDxrVwm2gxTidu,同时将域名A记录指向任意ipfs节点的ip,如gateway.ipfs.io。
现在访问aa.com,你是不是发现已经可以正常访问你刚才生成的博客了。当然,在没有优化之前,访问会很慢,但可以打开。
由于IPNS还不稳定,你可以在http://ipfs.io/ipfs/QmeaNWtacNyWZxEphYCdVmF6bcMg7Bjn6e5sGdK6fr1nMx 查看本页面。

更新与优化

上面讲的是hexo博客的生成与部署,你可以对Hexo进行进一步的配置和优化,发表新的文章,然后hexo g生成新的public,再通过ipfs add即ipfs publish即可实时更新在线博客。
怎么样,是不是很神奇,没有服务器,没有各种折腾,你有了一个独立博客。小伙伴们,一起努力吧!!!

如何应对微信和QQ的爆炸性新型间谍软件?

$
0
0

文中介绍了两种不同类型的风险源:1.微信与QQ属于被监控软件,你的聊天及聊天过程中的文件传输内容会被监控 ;2. xRAT 是一种能够窃取系统中全部个人信息(比微信与QQ更多的)新型病毒。


来源: https://chinachange.org/2017/09/10/what-to-make-of-the-explosive-new-wechat-and-qq-spying-revelations/


网络安全安全公司 Lookout 在对微信和QQ的安全性(或者缺乏安全性)进行了研究后,最近发布了一份新的报告(https://blog.lookout.com/xrat-mobile-threat)。尽管研究结论十分惊人,但却没有能够引起足够的注意。
微信的服务器在中国大陆,那里缺少对私人数据的法律保障,公司处于公安的控制下,所以微信的数据没有安全保障,随时可以被警方或其他政府部门监控以及浏览。这是早已为人所知的事实。因此很多人在进行政治或比较严肃的讨论时都不再使用微信。在越来越多的法庭案件中,一个人被起诉仅仅是基于和朋友的私密聊天记录,这也证实了微信是不安全的。与此同时,在香港占中运动期间,一种 “特洛伊”木马病毒被用来远程监视用户。
这次研究发现的新病毒名叫xRAT。和早期发现的病毒一样,这也是一个特洛伊病毒,这意味着它会伪装成别的软件,比如一个PDF文档,就算你的手机内现在已经有了这个病毒,你也无从得知。这个病毒通过你的微信和QQ账户而将你作为目标。
它的威胁是什么?
特洛伊病毒具有管理员的运行权限,也就是说它可以进入和控制手机内的方方面面,而且能在你不知情的情况下操作。实际上它还可以远程对你的手机实行“完全监控”。简单来说,它所具有的权限就好比你直接将手机交给某人,然后告诉他你的手机密码。那人想干什么干什么。
也就是说不仅仅是你的微信和QQ的信息被曝光,手机所有的操作都会被曝光。存储的照片、下载的东西、文档、已安装的应用和服务、聊天记录、手机历史记录、通讯录,当然,还包括你的浏览器和整个浏览器历史记录,这可能包括你的信用卡号和密码以及任何其他服务的登录信息,比如你使用的加密邮箱。
换句话说就是任何手机只要是有安装了微信,同时也在用这个手机登录工作邮箱,或是安全的聊天软件比如Telegram或Signal,就很有可能已经被中国警方或国安掌控了。对于中国的人权支持者群体来说,这比糟糕还要糟糕。如果你用已安装了微信和QQ的手机与其他的中国维权人士用安全软件沟通或发邮件,相当于无意间给警方提供了将那些人权捍卫者送进监狱的支持材料。
更糟糕的是,病毒拥有管理员权限意味着你的麦克风可以被启用,你发出的任何声音都可能流向监视中的中国警方,被他们听到。这同样地适用于照相机和摄像机。这是一个能造成巨大后果的最先进间谍工具,它根本不需要读取你的地理位置,也不需要你手机的具体元数据就能照常工作。
如果这些还不够,再列出一件事,也是为什么它是如此先进的病毒的原因。那就是它可以自动销毁。当它自动销毁的时候,不仅仅是将自己从你的手机中删除,并且会尽可能的删除你手机内的脚本信息,这令很多的技术高超的人都无从得知这个病毒曾经在手机内存在过。也就是说,你也许永远不会知道你的手机和你操作手机的方式是将其他人权捍卫者送去监狱的原因。
在中国大陆,这些数据最终所流向的控制中心已经被识别出好几个,而且毫无疑问这个“特洛伊”与早前攻击香港占中人群的背后是同一批人,只不过这一次的要更先进得多。
我应该担心吗我该怎么做?
首先,我们还不太明白这种病毒是如何传染到你的手机的。同时,他们既然开发了这么高端的软件,就不可能不派上用场。早前,一个更简单的版本广泛地用到了占中运动的人群身上。警方和国安机关有什么理由不使用这个他们已经开发好的、如此强大的软件呢?所以几乎毫无疑问的是,你需要假设他们已经广泛的使用上了,并且你自己已经成为目标之一。
很多有风险意识的人都已经放弃了微信和QQ的使用,就算如果他们实在有使用的必要,也会用另一个什么都不用的手机专门安装微信使用,如果你很不幸的与其他很多人一样在使用微信,请至少安装到了一个有进行了出厂设置的备用手机,比如一个超级便宜的安卓手机。关于避免麦克风远程控制的问题,要确保不要将备用(安装了微信的手机)手机带到办公室或在进行任何谈话的时候。
其次,如果你目前的手机被感染了,仅仅卸载掉微信或QQ并不能解决问题,你别无选择,只能进行出厂设置。也许这样并不是很方便,但这是仅有的办法。另外,毫无疑问的是之前工作邮箱所用到的密码等等,在完成出厂设置后都需要被更换。

使用IPFS+纸小墨搭建去中心化纯静态博客

$
0
0

IPFS是新一代的去中心化存储平台,可以做为网站的数据存储方案,尤其是静态站点,目前的官方版本使用GO语言编写,纸小墨(InkPaper)是一个GO语言编写的开源静态博客构建工具,可以快速搭建博客网站。它无依赖(不需要安装python\node.js\或其它库)跨平台,一个软件包搞定全部功能,配置简单构建快速,注重简洁易用与更优雅的排版。


来源:https://ipfs.io/ipns/QmcGzTiCfKvJAnW5D2P12XbvB8WjSNFDxZotwaZuLNb8ce/ink-blog-tool.html

1. IPFS安装

1.1 下载IPFS节点程序

请前往 IPFS项目官方网站下载对应你的平台的ipfs可执行程序:
点击 “Download IPFS for your platform” ,在新窗口中选择“Download go-ipfs”就开始下载了。
下面以windows版本为例讲述安装过程:
  • 将下载的压缩包解压,将解压得到的“ipfs.exe”文件复制到你的 C:\windows\system32 目录
  • 按快捷键:win+R,或者“开始菜单”-“运行”,输入cmd,按确定,进入win命令行界面。

1.2 输入以下命令建立一个用来存储本地数据的文件夹:

ipfs init
该命令执行结果见截图:
注意,此处的 peer identity 就是你的PeerID
  • 请把你的PeerID复制下来,保存到一个文本文件中,后面会反复用到,这个ID相当于你的域名!

在命令行窗口中复制文字的方法:

用鼠标左键指向要复制的起始文字,按住鼠标左键不放,拖动鼠标选中需要的字符,再放开鼠标,当前选中的字符就处于高亮状态。此时不要按 Ctrl+C,在命令行窗口中按Ctrl+C是退出当前运行的命令的意思,正确的复制方法是在被选中的任意高亮文字上点鼠标右键,你会发现高亮消失,此时已经复制成功,你可以在当前窗口中再按一下鼠标右键,你会发现刚才复制的文字被粘贴进来了。没错,复制粘贴都是鼠标右键单击!
ipfs init 命令默认会在当前用户路径下建立名字叫 .ipfs 的文件夹(假如当前用户名是administrator):
C:\Users\Administrator\.ipfs
你可以打开该路径来查看一下里面的内容:

1.3 输入以下命令启动节点程序:

ipfs daemon
运行成功后,你会看到提示信息“Daemon is ready” :

到此,ipfs的安装与运行已经成功完成,请保持该窗口打开,若关闭该窗口,会停止节点程序的运行。

2. 下面进入纸小墨的安装与使用说明:

纸小墨 +IPFS - 简洁的去中心化静态博客构建工具
纸小墨 +IPFS - 简洁的去中心化静态博客构建工具

纸小墨程序的作用:
要发布为静态博客,你的所有网站内容就只允许纯文本文件,不能有数据库查询操作,不能用动态编译的php、jsp之类的脚本文件,只能有html, css,图片…… 如果全部手写html,会非常累!
纸小墨这样的程序所起的作用就是把你写的.md文件转换为html文件!而且会帮你搞定站内链接,相互的引用关系等等。
有关 .md 文件
.md 文件也就是大家常说的markdown格式文档,它的内容就是纯文本,你用记事本就能任意编辑.md文件。但需要花几分钟了解一下它的语法(md的语法已经比html简单了很多,markdown转换软件也比较智能,会自动帮你翻译md为html)

2.1 开始上手

  • 下载并解压 Ink, 你会得到一个叫 ink.exe 的二进制文件,请将其复制到C:\windows\system32 另外,还会解压出一个blog文件夹,这就是你的博客网站文件包。将它复制到你的ipfs本地数据目录下( C:\Users\Administrator\.ipfs) 切换路径到blog路径下,打开config.yaml修改配置,注意一定要启用root (网站路径前缀),否则你的网站打开会出问题,默认是不启用root的,启用方法就是把root那行前面的 # 删除,并且把正确的路径信息填写进去:
root: "/ipns/你的PeerID”
比如我的root设置是这样:
一定要注意!root: 和后面的 "/ipns/你的PeerID" 之间有个 * 空格 *
有关纸小墨的其它配置参考下面的说明自行修改:

2.2 配置网站

编辑blog/config.yml,使用如下格式:
site:
title: 网站标题
subtitle: 网站子标题
limit: 每页可显示的文章数目
theme: 网站主题目录
comment: 评论插件变量(默认为Disqus账户名)
root: 网站根路径 使用IPFS必须启用!
lang: 网站语言 #支持en, zh, ru, ja,可在theme/config.yml配置
url: 网站链接 #用于RSS生成
link: 文章链接形式 #默认为{title}.html,支持{year},{month},{day},{title}变量

authors:
作者ID:
name: 作者名称
intro: 作者简介
avatar: 作者头像路径

build:
output: 构建输出目录 #可选, 默认为 "public"
port: 预览端口
copy:
- 构建时将会复制的目录/文件
publish: |
ink publish 命令将会执行的脚本

2.3 创建文章

每一篇文章就是一个后缀名为 .md 的文本文件!
在纸小墨程序规定下,所有md文件都存放在blog/source 路径下
source目录中可以建立任意个.md文件(可置于子文件夹),
注意,文件名最好不要用中文,否则在把链接发给你的朋友时可能出错,很多软件会把链接从中文出现的位置断开,它们不认为中文是超链接的一部分!
纸小墨程序对md文件的特殊规定:
title: 文章标题
date: 年-月-日 时:分:秒 #创建时间,可加时区如" +0800"
update: 年-月-日 时:分:秒 #更新时间,可选,可加时区如" +0800"
author: 作者ID
cover: 题图链接 #可选
draft: false #草稿,可选
top: false #置顶文章,可选
preview: 文章预览,也可在正文中使用<!--more-->分割 #可选
tags: #可选
- 标签1
- 标签2
type: post #指定类型为文章(post)或页面(page),可选
hide: false #隐藏文章,只可通过链接访问,可选

--- #注意这个分隔符不能少(三个-号),否则会报错!

Markdown格式的正文
你不需要每次都手工输入上面这些 “—” 之前的内容,我们称之为头部信息,建议在编写新的.md文件前,先打开一个旧的.md文件,复制上面这些头部信息,修改你需要的内容,这样能快速建立头部内容。

2.4 文章编译

此处必须注意工作路径!请确保你此时在blog父级路径下,也就是说,最好把blog目录复制到你的.ipfs路径下,看起来应该是这样:

接上图,请确保你已经在上述路径下,然后在当前位置打开CMD命令行窗口,方法有三个,其一便是上图的方法:在空白处同时按下shift+鼠标右键,选择“在此处打开命令窗口”
方法二是在当前位置的资源管理器地址栏输入 CMD 然后按回车:
方法三是在任意位置通过前文所述的 win+r 方式打开CMD窗口,进入windows命令行,使用以下命令切换到ipfs数据路径下:
cd C:\Users\Administrator\.ipfs
无论哪种方法,打开当前路径后的CMD窗口应该是这样:
当前路径提示符应该是 C:\Users\Administrator\.ipfs
如果你的当前路径不是这个,请再对照上面的两种方法,确保在.ipfs路径下打开CMD窗口,并且确保你的blog文件夹在.ipfs文件夹里面!

编译:

你编写的.md文件需要经过 ink.exe 程序编译才能生成正确的html文件, 打开windows命令行界面,再次检查当前路径是.ipfs,输入以下命令进行编译:
ink build
build成功后的截图:
得到的输出在 blog/public 路径下

预览

在.ipfs路径下运行命令 ink preview
该命令运行后的截图:
使用浏览器访问 http://localhost:8000 预览你的网站。

如何退出预览状态:

所谓预览,其实是由纸小墨程序自带的一个web服务器在运行着,提供网页解析功能,如果不退出预览,可能会干扰其它程序的运行,而且也无法重新编辑、预览下一次的修改,所以在反复修改、预览网页时,会频繁启动、中断后台web服务器的运行,此时在当前命令行窗口按 Ctrl+C 这个组合键,如果没有立即反馈中断信息,请等待半分钟,或者多按几次Ctrl+C 中断成功后你会看到提示信息。

2.5 通过IPFS发布:

在执行下面的操作之前,请确保你的ipfs 程序已经启动并在运行中!如果你本地的ipfs程序没有运行,你会发现下面的publish操作瞬间完成!但实际上你根本没有发布成功!
进入windows命令行,如果当前不在 .ipfs 路径下,请使用以下命令切换到ipfs数据路径下:
cd C:\Users\Administrator\.ipfs
输入以下命令,并按回车,
ipfs add -r blog/public
上述命令会将你的 public 目录添加到ipfs网络,生成对应的hash名称
找到最后几行:
此时注意看最后一行你的public目录的hash值,将其复制下来
接下来输入:
ipfs name publish 你的public目录的hash值
此时要等待大约半分钟或更久,让ipfs将你的网站在ipfs网络中以你的peerid注册。
警告:如果此时 publish 命令瞬间完成,99%的可能性是你的ipfs程序没有运行!
注册成功后会看到 “Published to 你的PeerID” 这样的提示信息:
请注意:每次修改了文档,必须再次执行 “ink build”, “ipfs add”, “ipfs name publish” 三个步骤才能让你的修改生效!如果你不执行上述步骤,你会发现你的网页没有发生改变。
针对上述情况的说明:
  • 每当你 add 并 publish 成功之后 ,你的网站就已经被ipfs创建成新的block文件放进本地存储区了,你通过浏览器访问的,并不是存放在blog/public 目录下的那些html文件,而是由ipfs根据你的请求查找到的本地存储区域中对应的文件块(block),按照正确的顺序重新组装成完整的文件发送给你!这些文件块是无法直接修改的,任何修改都会导致其hash改变,进而报错,这也是ipfs改篡改的一个原因。

构造URL:

如果使用本地运行的ipfs节点程序,要访问你的网站,请使用
你还可以通过ipfs-http网关来访问你的网站, 这种网关可以在你本地没有运行ipfs节点程序的情况下,让你通过他们的网关代理进入ipfs网络访问资源,比如 https://ipfs.io 就是一个ipfs-http网关!
你可以构造以下URL来访问你的网站,即使本地没有安装运行ipfs程序
附一个官方演示图说明URL对应关系:


祭奠死去的 Potatso 1

$
0
0

Potatso 2 开发故事

来源: https://icodesign.me/post/potatso1
开发者 icodesign_me 的推特:https://twitter.com/icodesign_me
Potatso 2 下载:https://itunes.apple.com/app/id1162704202

软件作者最近在微博被举报:





🐣 起步

让我们把时钟拨回到 2015 年 WWDC,Apple 在那时发布了 Network Extension 框架。这个 iOS 史上最为开放的 API 可以说瞬间吸引了我的注意,它背后强大的能力让你无法忽视。
但由于当时工作上的事情比较忙(阿里巴巴,你懂的 😂),我并没有立即投入到相关研究中去,而是直到当年 9 月底才正式开始在业余时间断断续续尝试搭建 Potatso 1。早期的用户可能知道,这款 App 直到次年 1 月 15 日才正式上架 App Store,且再过了两个月才启用了网络工具功能。Potatso 1 完全由我一人开发,从产品、设计到iOS、后段开发,再到客服、运营,全部包干。没错,我就是传说中的『全干』工程师。
当然,这么长时间的开发也是有原因的,我总结为两点:有限的时间投入以及技术上的障碍。

⏱ 有限的时间投入

我不是富二代,亦没有创业成功,所以在这过程中我依旧需要保持着一份稳定的工作。
我参与过小团队创业,也在大公司工作过,虽然我也会时不时骂一两句公司,但是我依旧怀着感恩的心情对待这两家公司,一个给了我从 0 到 1 的机会,一个给了我更大的视野。
众所周知,很多国内互联网公司保持着一个畸形的作息时间。我每周投入到 Potatso 1 开发中的时间很有限,平均下来密集开发可能也就两三个小时,很多时候晚上也就能翻翻各种文档,抓抓包。

🚧 技术障碍

除了有限的时间,更大的问题还是在技术上:

文档稀缺

Apple 放出这个 Extension 之后,并没有给出任何的教程和文档,只给出了一个简单的 Demo。当时 Network Extension 也需要向 Apple 申请才能使用,Xcode Extension 的模版需要手动下载安装。
直到今天,官方其实也是没有一份完善的文档的,好在函数注释多了不少,能帮助我们更好的了解这个框架,聊胜于无,对吧 🌚。
早期研究这个框架的人很少,我最早注意到的是 @clowwindy 在 ShadowVPN 项目中的使用。值得说明的是,我早期在官方开发者论坛以及通过 ATS(Apple Technical Support)获得了不少帮助。ATS 确实很有用,然而一年只有两次(什么?还想咨询?再交 99$)。

个人技术有限

Network Extension 的开发需要大量的网络相关知识,然而我本人主要是做上层应用开发,对相关的知识了解并不是很深入,因此在实现 Potatso 1 乃至 Potatso 2 的过程中绕了很多弯,推倒重建了数次,花费了大量时间。
这也导致:为了走一些捷径,在这过程中,我在一些关键部分使用了开源组件。具体的技术细节我将在后续的文章中说明。
当然,作为一名合格的程序员,没学过、不会并不是能阻挡前进的理由。开发 Potatso 的过程我愿意用『痛并快乐着』来形容。痛在你需要面对大量新的知识,面对枯燥的二进制报文,快乐在享受解决一个个未知的问题所带来的成就感。

技术难点

实现一个全功能的代理软件包含的技术点非常多,从底层 TCP/IP 栈到上层各种代理的实现,从 Network Extension API 的摸索到 iOS App 的编写,每一样都不是一件很简单的事,很多的知识点都是边学边做,甚至是读 RFC 文档。
我不能说它的实现非常难,因为至少它在现有的知识系统里是可解的,但对于大部分人来说可能也不是一件轻松的事,尤其是刚接触这个领域的人,至少一开始对我来说………

🌓 开源

很多人可能知道去年我开源了 Potatso 的完整版本,也获得了开源社区的关注和肯定,登上了当日 GitHub trending 的榜首。
现在来看,这很难说是一个正确的决定。很多人一看,『哟,完整的 app,还能挣钱,他卖 45,我卖 6 块好了』。于是,大量的 Potatso copy 开始上架。这也就算了,我开源前就已经想到了。但是真正让我看到人性恶的一面是:作为有能力编译Potatso及上架的人,我理解至少是一个接受过良好教育的人,很多上架的人连名字都不改,Today Widget 的名字还是Potatso,点击连接唤起了 Potatso,甚至直接使用我服务器的 API。
在开源的 Potatso 1 中,我提供了一套基本的 iOS 自定义代理方案,然而遗憾的是,并没有人在真正的用其原理去做更多的事。受限于本身付费软件的属性,Potatso 并没有形成开源软件应有的社区氛围,当然这一点应该是我的责任,因为这仍旧是一个敏感的领域。我有一些顾虑,无法在这方面做的更多。一言以蔽之:原理我已经告诉你了,麻烦好好思考,别当 CTRL+C 和 CTRL+V 程序员了,把掉起的节操拾起来。

❤️ Potatso 2

在经过了长达半年的第二次开发测试之后,Potatso 2 于 2017 年 4 月 4 日 清明节上架 App Store(为了祭奠死去的 Potatso 1)。Potatso 2 是 99% 重写的,你可以理解为一个完全新的 app,在核心部分也并没有使用任何开源库。在 Potatso 2 的设计之初就考虑到了扩展性,可以很方便的集成更多代理类型(新版加入了 Socks 和 Socks over TLS 的支持)。
至于为什么又花了这么长时间,一方面是工作量比较大,一方面是自己的事情有点多(出差、休假、装修搬家等等杂事)。好在一切很快尘埃落定,我有了更多的时间花在 Potatso 2 的维护上。

Potatso 升级问题

Potatso 1 到 Potatso 2 的升级过程引来了一些争议,在此我也一一解答一下。
作者明明公开承诺 Potatso 1 可以免费升级到 Potatso 2,为什么我需要补差价?
这个锅我背。我本意是愿意让 Potatso 1 的用户免费升级到 Potatso 2 的,但是还是产生了一些小插曲:
我采用的是业内流行的套装(Bundle)升级方式,即单独推出一个新的套装,包含 Potatso 1 和 Potatso 2,已拥有 Potatso 1 的用户直接购买这个套装,即可免费获取 Potatso 2。
但是我没有想到的是(第一次使用套装升级):这个免费是有条件的。Apple 会记录你购买 Potatso 1 的价格,在购买套装上,如果之前购买价格低于套装价格,需要补差价。举个例子,如果你以 12 元价格购买 Potatso 1,而升级套装价格是 40,你则需要补全 28 的差价,而更不幸的是,如果你是用兑换码兑换的 Potatso 1,Apple 记录的购买价格是 0。这个过程我是无法控制的,对此产生的不便以及与我承诺相左的额外支出,我只能表示抱歉。(个别用户由于无法支付的原因,向我私人购买了兑换码,我也向他们赠送了 Potarso 2 的更新)
至于为什么现在升级套装是 40 的原因是:一方面你可以看到上面的价格曲线,Potatso 基本长期都是在 45 的价格,所以 40 能够满足大部分用户免费升级,另一方面,在第一周上线的时候我设置的价格为 30(与 2 的价格一致),这导致一个后果是:大部分新用户由于心理原因,会选择购买升级套装而不是 Potatso 2,而这不是我希望出现的,这算是我的定价失误)
那么为什么你不在 Potatso 1 上直接更新,这样就没有升级套装问题了?
这是我的另一个失误。由于在 Potatso 1 开发过程中使用第三方库不小心污染到了一些签名问题导致 Potatso 1 是无法转让给其他账户的,一个潜在的后果就是如果将来 Potatso 由于不可抗力真要下架,是无法转让的。为了留条后路,我选择了重新上架。
总之,这个升级过程的麻烦主要是我的问题导致的,当然也有 Apple 这种奇怪的套装定价策略。更合理的是,Apple 应该提供给开发者更多的选项。再次对受到影响的用户表示抱歉。

😇 心态

为什么要说这个?因为独立开发是一个很艰难的过程,保持一个良好的心态很重要。
每天有很多热心的用户给我反馈,还有一些邮件,有社交平台的私信,一个人是很难面面俱到的,无法做到一一回复。不然哪还有时间去写代码嘛。
这个世界很复杂,你可能会遇到各种各样的人,会有人因为你不会私信辱骂你,会有人因为你不支持某个功能辱骂你,会有人因为有 bug 辱骂你。幸好我是个乐观的人,不然哪还有心情写代码嘛。
盈利重要吗?重要。付出了很多时间,输出了很多知识,盈利是一种很直接的回报。盈利也能为你提供更强的动力,保证软件的持续开发和更新。所以别在价格上跟我纠结了,不过是一杯咖啡而已。你请我喝一杯咖啡,得到一个有趣的软件,这波你绝对不亏。(所以不要去买什么黑卡,不要去买什么家庭共享了,现在没有防盗版不代表将来不会有)

💪 支持我

最后,如果你愿意支持 Potatso 的未来发展,下载并使用 Potatso 2 是最简单直接的方式 。
Potatso 2 下载地址:Potatso 2
P.S. 如果您愿意给我额外的赞助,我不拒绝,欢迎私下联系我 😂,但请不要问我能不能几万做一个 App 了 😱

Pcap_DNSProxy:上手不易,折腾需谨慎

$
0
0
Pcap_DNSProxy 是一个基于 WinPcap/LibPcap 用于过滤 DNS 投毒污染的工具,提供便捷和强大的包含正则表达式的修改 Hosts 的方法,以及对 DNSCurve/DNSCrypt 协议、并行和 TCP 协议请求的支持。多服务器并行请求功能,更可提高在恶劣网络环境下域名解析的可靠性。
来源:https://51acg.eu.org/pcap_dnsproxy-config.html
项目地址:https://github.com/chengr28/Pcap_DNSProxy
作者推特:https://twitter.com/chengr28


花了点时间研究了一下这个Pcap_DNSProxy,看了下真的很厉害:能在抗污染的前提下还不丢失国内的CDN。本人作为小白,试着最大能力看了一下作者写的文档,看着很辛苦——好长,对于新手来说并不算友好。当然,你也可以在不修改任何参数的前提下开箱使用,需求就看自己的爱好了。
对于本人来说,我的需求也不难:像油土鳖什么的统统解析到SNI proxy 上去,我也不需要解析是否正确–反正也没法正常访问,对于国内的常用网站,不丢失CDN优化就好了。花了点时间,分享下折腾过程。
这是基础
打开Config.ini,我修改了一下项目(其实不改也行)
[Listen]与[DNS] 内的Outgoing Protocol = IPv4 + TCP    –国外解析走TCP
Local Protocol = IPv4 + UDP   —国内走UDP
改动[Addresses]内的项目
IPv4 Main DNS Address = 208.67.220.222:443
IPv4 Alternate DNS Address = 208.67.220.220:53|208.67.222.222:5353
IPv4 Local Main DNS Address = 119.29.29.29:53
IPv4 Local Alternate DNS Address = 114.114.115.115:53   删除了google的8.8.8.8/8.8.4.4,IPv4 Main DNS Address端口用了非标443(大概走TCP)

因为我用的是WIN10,所以开启了TCP Fast Open = 1 ,其他选项实在不懂,也就不改了。
这是重点
经过软件的几次更新,Hosts条目已经兼容dnsmsq(的规则),也就是说不必费劲修改自定义条目符合正则规定,本着拿来主义,可以完整支持网络上的屏蔽条目。而且不得不说,dnsmsq的泛解析很厉害,比如以下 address=/puuko.com/xxx.xxx.xxx.xxx,包含puuko.com的域名不管一级二级三级甚至更多都能解析到一个域名上去,这个真的很厉害~~
废话不说,提供一份自己做的规则表,能用,其他不表达

Openload 超簡單無下載限制免空推薦!支援影片線上串流播放還能賺錢

$
0
0

去年出現一個熱門的免費空間「Openload」,相信不少人聽過或曾經使用過,之前本來已計劃要介紹這個免空,但不小心放著放著就錯過了,好的服務終究不會被埋沒,最近再度從 Openload 下載檔案,發現速度好像比之前來得更快、更順暢!既然如此,趕緊來研究一下 Openload 順道寫篇教學給大家,若你想要上傳分享檔案的話,這是一個值得一試的選擇。

来源: 

Openload 有什麼特色呢?如果要我以一句話推薦此服務,我會說:它簡單到不行,而且幾乎沒有任何限制!若你有長期關注免費資源網路社群,一定知道 Pseric 向來喜歡簡單的工具或服務,對我來說,工具是用來解決問題、節省時間的,我不希望因為要使用它而產生更多問題。

話題再次回到 Openload 吧!這個免空非常簡單,只要把檔案拖曳到瀏覽器,就能快速上傳產生分享鏈結,而且支援所有格式。Openload 有最大單檔不得超過 1 GB 限制,不過如果你讓它自動幫你轉檔,那麼最大可以上傳到 10 GB(這應該是對於影音檔案的格式轉換,包括壓縮)。
另一個特色是 Openload 支援部分檔案格式的線上串流,舉例來說,假如你上傳的格式是它支援的影片、音訊或文件檔案,使用者能透過分享鏈結直接於線上觀看,無須先下載檔案,其實會更節省時間。假如你想要上傳一些影片並嵌入自己的網站、部落格,Openload 也是可以考慮的 YouTube 替代方案。
Openload 有固定的檔案保存期限,可串流檔案 60 天、一般檔案為 30 天未使用自動刪除,其實對於大部分使用者來說應該是相當充裕。Openload 也支援批次上傳檔案、遠端上傳及 FTP 上傳檔案,這些功能限定註冊使用者才能使用。
網站名稱:Openload
網站鏈結:https://openload.co/

使用教學

STEP 1
首先,我想先介紹 Openload 最簡單的使用方法,包括如何上傳檔案、取得分享鏈結及下載。
開啟瀏覽器,把要上傳的檔案直接拖曳到 Openload 首頁,或者點擊「Browse or Drag n Drop Files」按鈕選取檔案,就會開始上傳,依照你的網路速度會有一段等待時間。

STEP 2
上傳完成後,Openload 會顯示檔案的下載、分享鏈結,你也可以右鍵選擇檔名然後複製超鏈結。

STEP 3
當下載者打開下載頁面時,會有大約 5 秒鐘的等待時間(這跟其他免空比起來非常佛心,而且沒什麼很誇張的廣告),倒數結束後點擊中間的「FREE DOWNLOAD」即可下載檔案。

免費註冊 Openload 帳戶,分享檔案還能賺錢

其實 Openload 就是一般俗稱的「錢空」(可賺錢的線上空間),但又不像其他類似服務都擺滿廣告,在這裡只有非常有限度的廣告會顯示出來,盡可能不影響使用者瀏覽。
至於要如何賺錢呢?只要把檔案上傳到 Openload 然後分享出去,就會依照不同國家、IP 使用者而有不同的計價方式(影片被播放也包含在內),簡單來說,美國、英國、加拿大和澳洲的 IP 比較值錢,每下載一萬次會有高達 $35 美金收益,台灣的話相對低一些,只會有 $5 美金(詳細遊戲規則及計價方式可參考 Affiliate Program 頁面說明)。
STEP 1
在此之前,你可以點選「Sign Up」來免費註冊一個 Openload 帳戶,註冊有什麼好處呢?除了可以上傳檔案賺錢外,還能管理上傳的檔案,使用批次上傳、FTP 上傳或遠端上傳功能。

STEP 2
下圖就是 Openload 使用者控制台,看起來複雜,其實使用上功能就那幾個,不會太難。如果你想利用免空賺錢的話,記得先到 Affiliate Program 設定一下,開啟才會開始計算。

STEP 3
當你上傳影音檔案至 Openload 後,下載頁面不是只有下載按鈕,而是可以直接於線上播放!而且速度很快,幾乎沒什麼等待時間,喜歡的話還能點擊「Download」來取得影片。

前面有提到,如果你想透過 Openload 來托管影音檔案,亦能點擊「Embed」產生內嵌代碼,把影片或文件直接嵌入自己的網站、部落格喔!

2017-09 - 翻墙技术与大事记


加泰隆尼亞用行星檔案系統繞過西班牙政府封鎖

$
0
0

本文由chihao翻譯,譯文以CC0釋出。原文為《How the Catalan government uses IPFS to sidestep Spain’s legal block》。原文在《黑客新聞》上的討論串在這裡。

来源: https://medium.com/@chihaoyo


正文以巴塞隆納為首府的加泰隆尼亞,是西班牙現行十七個自治社群之一。加泰隆尼亞獨立運動歷史久長,過去也曾宣布獨立。現在,多數加泰隆尼亞人希望舉行獨立公投,支持獨立人數也不容小覷,政治氣氛熱烈,不在話下。

先講結論:加泰隆尼亞不顧西班牙中央政府反對,十月一日,自己的獨立公投自己辦。法院宣告違法之外,中央政府正盡一切可能阻止這次獨立公投,其中一項作為:封鎖任何支持獨立公投的網站。國家警察突襲網路服務供應商、接管數個提供公投資訊的網站,甚至對複製網站內容的人提起告訴。
我要去哪裡投票?
投票地點通常會透過官方郵件告知。但,西班牙的國家郵政由中央政府控制,任何加泰隆尼亞政府的宣傳都會被沒收。
網站被快速的關閉、郵件遞送不可能,加泰隆尼亞政府要如何通知人民,去哪裡投票?
加泰隆尼亞用行星檔案系統、加密和創意找到答案。他們架設了《公投2017》網站。九月二十七日為止,網站仍正常運作。

架設在行星檔案系統上的網站


透過行星檔案系統(Interplanetary File System)的網域https://ipfs.io/發佈這個投票資訊網站,有幾個好處。
  1. 西班牙政府很難強制要求將造訪國際頂級網域.io的訪客重新導向別的網站。如果是加泰隆尼亞的.cat網域結尾的網站,這就很容易了。
  2. 網域擁有者與「加獨份子」扯不上關係。這讓任何干預行動很難取得法律正當性,尤其是當.io網域的管理在英國境內,而這些行動必須在英國境內執行時。
  3. 因為這是一個https網站,這讓從網路服務供應商進行中間人攻擊變的困難。政府還是可以要求網路服務供應商封鎖任何來自或前往ipfs.io的網路通訊,但沒辦法讓使用者在不被瀏覽器警告憑證失效的狀況下,看到其他政府置入的內容。
  4. 就算西班牙政府封鎖任何與ipfs.io的網路通訊,網站上的資訊還是能被存取、複製。ipfs.io只是行星檔案系統的一個代理服務,行星檔案系統本身是點對點分散式內容即位址的網路檔案系統。只要下載行星檔案系統的程式,任何人都可以存取系統中的任何內容。
點對點分散式讓內容能夠自由擴散,當內容能自由擴散,它就幾乎不可能被單一用戶封鎖。點對點的加密連線也讓存取內容的用戶很難被認出來,也許中國可以,但西班牙鐵定是不行的。
問題:可以嗎?
內容即位址讓內容無法被竄改。加泰隆尼亞政府人員只要分享網站首頁的雜湊值(hash),所有人都能確定點擊連結後看到的內容確實是加泰政府所發佈的。
一個挑戰:因為行星檔案系統上的資訊都是公開的,所以網站使用、連結的資訊頁都必須是公開的。只要需要額外的伺服器處理私密的資料,那這個伺服器就很有可能成為讓整件事失敗的弱點。
所以,加泰隆尼亞政府必須讓網站的資料庫成為能夠透過行星檔案系統擴散、能簡單地用網址,或最少的程式碼,就能查詢的資料庫。他們是怎麼做到的?

靜態資料庫


以往的選舉,西班牙公民需要在政府網站上輸入身分證字號、生日、現居地郵遞區號。核對無誤後,網站才會告訴你該去哪裡投票。
這個做法顯然不怎麼樣,因為如果你知道某人的生日,還有他現在住在哪個區域,就可以透過不停嘗試身分證字號組合得到你想要的資訊。不過,如果是一般的網站,只要在伺服器上控制單一IP每秒存取次數就可以解決。
不過這次不同,加泰隆尼亞不能使用伺服器,否則西班牙政府就能輕易封鎖伺服器。為了充分利用行星檔案系統的優勢,整個網站,連同資料庫都必須是靜態的,這樣內容才能自由擴散。
來看看他們怎麼讓選民查詢投票資訊吧!在網站中《我要去哪裡投票》這一頁,介面會請你輸入這些。
  • 身分證字號(DNI)後五碼數字,加上一個字母檢核碼,格式是[0–9]{5}[A-Z]
  • 出生年月日,格式是YYYYMMDD
  • 郵遞區號五碼,皆為數字,格式是[0–9]{5}
這十八碼,就是能夠取得個人投票資訊🗳的個人鑰匙👤
身分證字號 + 生日 + 郵遞區號 → 👤 → lookup()→ 🗳
可是可是,如果這些個人鑰匙👤也都是用明碼發佈,那豈不是洩露了所有加泰隆尼亞公民的個資嗎?

加密來救援


為了易於了解,將個人對應到投票資訊的資料庫查詢程式lookup()大概長成這樣。

function lookup(dni, birth, zip, callback) {  var key = dni + birth + zip;  var passkey = sha256_times(key, 1714);   var search = sha256(passkey);
  var dir = search.substring(0, 2);  var file = search.substring(2, 4);  var path = db_path + dir + "/" + file + ".db";  var lines = readfile(path).split("\n");
  lines.forEach(function(line) {    if (line.substring(0,60) == search.substring(4)) {      found = true;
      var plaintext = decrypt(line.substring(60), passkey);      callback(plaintext.split('#'));    }  })
  if (!found) {    callback("not-found");  }}
裡面有用到三個加密函式,分別是第三行的sha256、第四行的sha256_times和第十五行的decrypt。三個函式的細節如下,其中在第二行、第十六行使用的crypto就是Node.js的crypto模組,任何人都可以取得、使用。

function sha256(text) {  return crypto.createHash('sha256')    .update(text)    .digest('hex');}
function sha256_times(text, times) {  var result = text;  for (var x = 0; x < times; x++) {    result = sha256(result);  }  return result;}
function decrypt(text, key) {  var decipher = crypto.createDecipher('aes-256-cbc', key);  var dec = decipher.update(text, 'hex', 'utf8');  dec += decipher.final('utf8');  return dec;}

這其實沒有很複雜。
lookup()這個函式在第二行把身分證字號、生日、郵遞區號所組成的個人鑰匙👤sha256這個函式加密1714次,生成解密密碼🎛,在第三行再用sha256一次,把解密密碼再次加密,成為查詢金鑰🔑
👤 → sha256× 1714 → 🎛 → sha256→ 🔑
接下來,就用查詢金鑰🔑查詢資料庫🗄,找到一或多筆相對應的內容之後,再用解密密碼🎛將找到的內容解密,進而獲得投票資訊🗳
🔑 → 🗄 → 加密的投票資訊 → 🎛 → 🗳
我不是什麼加密專家,看不出來這樣的機制有沒有什麼致命的失誤。不過,要強制取得個人資訊,看樣子除了暴力解,好像也沒別招了。那麼,到底要多暴力呢?讓我們賣弄一下自己的教育程度,估計看看。
  • 身分證字號的部分,因為最後的檢核字母只有二十三種可能,所以總共有10⁵×23種可能的組合。
  • 出生年月日的部分,假設沒有人超過一百歲,就有365×100種可能。
  • 郵遞區號的部分,因為西班牙的郵遞區號是由兩位省的代碼加上三位區碼組成,如果假設所有人都住在加泰隆尼亞,而加泰隆尼亞境內僅有四省,所以有4×10³種可能。不過,並不是所有可能的組合都是有效的郵遞區號,而且任何人都可以輕易取得所有有效郵遞區號的列表。在這裡,暫時不考慮這件事,先這樣。
  • 把所有可能綜合考慮,個人鑰匙👤有10¹⁰×23×365×4,也就是33580×10¹⁰種組合,大概是48 bit。
「怎麼這麼少?」算完之後,我懷疑只要有點耐心,有一點錢,應該能很快把整個資料庫轉為明碼。假設需要計算1715次sha256來確認某個人鑰匙👤在資料庫裡有沒有資料,那麼,那麼檢查完所有可能的個人鑰匙👤就需要計算575897×10¹²次雜湊值。參考比特幣維基,用不同的硬體設備所需的時間如下。
  • AntMiner S9每秒能計算28×10⁹次雜湊值,所以檢查完所有可能的個人鑰匙👤,需要238天。
  • AMD 7970每秒825×10³,需要20870年。
  • Nvidia Tesla S2070每秒749×10³,需要24381年。
嗯。對一個普通駭客來說不太可行,但如果有點錢,絕對不是不可能。並且,這是要把整個資料庫轉為明碼需要的時間,如果你知道某人的身分證字號和住處,用你的筆電猜測他的生日,應該不會花上多少時間吧!

未解的問題


雖然困難,不過把整個資料庫轉為明碼是可能的。這就表示加泰隆尼亞政府或許洩露了所有加泰隆尼亞公民的部分身分證字號、生日、郵遞區號及投票地點。因為西班牙的身分證字號並不是什麼秘密資訊,所以也許這些資訊也沒那麼重要,但如果頻繁使用這種作法,尤其是當有人開始交叉比對資料庫時,事情可能就不這麼無害了。
每個黑客都應該知道的事:絕對不要自己寫加密演算法。加泰隆尼亞政府的黑客是否犯了這個錯誤?希望五樓能為我解答。
最後,行星檔案系統大致上保證內容的可及,但據我所知,它並不保證匿名。西班牙政府已經對複製這個網站內容的至少十人提出告訴,他們也能很容易的,在行星檔案系統中架一個受污染的節點,秘密紀錄存取的IP位址,就能起訴使用者。

那麼,你覺得加泰隆尼亞的作法如何?如果是你的話,會怎麼做?對於想要避免國家言論審查的人,這樣的作法夠不夠嚴謹?
加泰隆尼亞的黑客們,現在一定很興奮吧?

为什么我用胶布贴住了所有电子产品的摄像头和麦克风

$
0
0
我贴住了摄像头的 iPhone 和 Mac

编注:这是一篇很特别的分享文章,它代表了一种在现代科技生活中不一样的生活方式。有人选择便利,有人为了安全放弃部分便利。我们希望读者在读这篇文章的时候,能带着一种「体验」的心态去读,尽量不去过多评判这种行为本身的意义。就比如我自己读完后的感受是:嗯,还有这样一种生活方式,挺有意思的~

来源: https://sspai.com/post/40799


在互联网时代,想要获取一个人的隐私,是件很简单的事情。花几百元请个「私家侦探」就能查到某个人的通话详单、银行流水等等。想查到某些大明星的身份证信息甚至只需要花几块钱就能买到了。
今年四月份网上流传着学信网信息泄露的消息,我告诉了许多同学,让他们修改学信网密码。一部分同学表示回到了宿舍就去改。但另一小部分同学的回答让我感到惊讶,反正密码都泄露了,犯罪分子都把我的信息看完了,我再改密码又有啥用呢?
我当时的回答是:你不更改密码,后续会有一波又一波的犯罪分子获取到你的信息,你受到侵害的可能性就越来越大,所以还是尽快回去改密码吧。
甚至还有人说,泄露了就泄露了呗,反正我又不是什么名人,他们拿了我的信息也没有用的。
著名开发者 Hiraku 皮乐 说的一段话很好的回答了这个问题:
每次有什麼某國軟體監控隱私問題,總有一種論調是:「你是郭台銘還是庫克嗎?人家監控你幹嘛。」
只能說,或許現在我的資料沒啥價值,但誰知道過二十年之後你我之間會不會有人變成上市公司董事長?到時候這些隱私資料會不會變得很重要?啊不過心裡預設自己不會成功的人通常是比較難成功沒錯啦。
去年美国大选的时候,希拉里团队就拿出了一段录制于 2005 年的视频1 来攻击特朗普,表示特朗普极其不尊重女性,品德低下。
相关新闻看得多了,许多朋友也有了保护隐私的基本意识,比如去银行、电讯营业厅办理业务时,身份证复印件上都会另外用笔写上「仅供办理某业务之用」等等。
但很多朋友都忽略了泄露个人隐私的一个重要源头:电子产品(手机、平板、电脑)。

为什么我贴住了所有电子产品的摄像头

我已经忘了自己是从什么时候开始养成这个习惯的。但令我印象十分深刻的是前两年支付宝被曝出调用(Android)手机摄像头进行偷拍这件事2 。

一条旧闻

著名开发者 typcn 还对此事件进行过一些技术上的分析:
xPrivacy 看到的支付宝偷拍过程很高端:开启相机预览,设置相机预览回调,然后从相机预览的画面里面拿一帧,这样不会调用 takePhoto ,在部分强制开启拍照声音的手机上,也不会出现声音,因为是在预览缓冲中拿的图像。
更多分析请在 typcn 的 Twitter 上搜索关键字「支付宝」进行查看。
支付宝有技术做到这件事,一定还有更多的厂商能做到,只不过没有曝光出来而已。
虽然我一直用着 iPhone, 但依然感到十分庆幸。iOS 有相对完善的权限管理系统,但物理层面的隔绝,一定是比软件层面的隔绝来的彻底。你就随便偷拍吧,攻破了 iPhone 我也不担心,反正拍出来都是黑漆漆一片。
在某个 App 弹出权限请求的时候,很多朋友可能并没有仔细看,就点击了「允许」。某些 App 我们可能确实是需要给予它调用摄像头的权限,比如一些聊天工具,但如何确保我们没有视频聊天室,这个 App 就一定没有调用摄像头进行拍照呢?对于普通用户来说不好判断吧。
即使没有在隐私设定中给予调用摄像头的权限但技术较强的黑客同样有办法攻破 iOS 的安全系统。花费 50 万到 100 万美金即可在黑市购买到一整套用于击破 iOS 安全防线的漏洞3

如何适应贴住摄像头后的生活

我个人比较少用 iPhone 拍照,自拍就更少了,日常支付也都尽量用 Apple Pay 和现金,因此,将 iPhone 的摄像头贴住,对于日常生活没有什么影响。
其实对于一般的用户,贴住前置摄像头基本也就可以了,毕竟大多数时候手机背面向下放在桌面上,后置摄像头拍出来的也都是漆黑一片,即使拍到了一些东西,没有面部特写,也一般无法辨认当事人是谁。
而前置摄像头,多数时候对着人脸,贴上才好。需要自拍时,将胶布揭开一半,也就是一秒钟的事情,拍完再顺手贴上即可。
揭开一半胶布后露出摄像头进行拍照
揭开一半胶布后露出摄像头进行拍照
iPad (平板电脑)的情况与 iPhone (手机)大同小异,自行斟酌即可。而 Mac (笔记本电脑)的摄像头,我想大多数用户都是闲置着的,毫不犹豫贴上吧。

为什么我贴住了所有电子产品的麦克风

我大概是在将摄像头贴住的同时,决定将麦克风也一起贴住的。在我看来,一台电子产品被入侵后,麦克风带来的风险比摄像头更大。

麦克风潜在风险更大

其实只要将手机等电子产品平放在桌面上,摄像头能够捕捉到的信息是很有限的。后置摄像头只能拍出漆黑一片,前置摄像头大多数时候也就拍个天花板。所以即使手机被入侵了一天当中大概有三分之一的时间(睡觉时),摄像头获取不到什么有价值的信息。
而麦克风就不同了,它无时无刻都能获取到周围的信息,不受时间、空间等外部条件的限制。几个人想要交谈,那周围的噪音肯定不能太大吧,既然噪音不大,手机上的麦克风就能录制到交谈的内容。环境非常安静的话,整个房间里交谈的声音都差不多能录制下来吧。所以麦克风带来的潜在威胁比摄像头更大

国外用户的经历

最近在 Medium 上看到了一篇名为 Instagram is listening to you 的文章,大概内容如下:
几周以前,博主发现 Instagram 给他推荐了某样产品的广告,这个产品他从未搜索、分享、或者在聊天软件中提到过。博主仅仅是在某次交谈中向朋友提到过这件产品。
博主开始怀疑 Instagram 会监听他的交谈,因此上周他做了个实验。
博主与家人们出去爬山,山上手机信号比较差,偶尔才有 3G 信号。博主使用的 iPhone 7 Plus 开启低电量模式后,就一直放在背包内。博主在爬山过程中,与 5 名家人用西班牙语和法语交谈,在某个时间点,他用西班牙语和堂兄弟们提了一句,我很想买一个蓝牙投影仪,有了这个东西,连接我的手机后,就能很方便的把手机内的照片和视频投影出来给大家一同观看了
博主很明确的知道,他之前从未在其他任何地方分享、搜索过这类产品。但回家后的第二天早晨,他打开 Instagram 后惊呆了,Instagram 给他推送的广告就是他很想购买的那个投影仪。
请再次想想博主当时出游的场景,多种语言与多人同时交谈,手机信号很差,仅仅提了一下想买个投影仪。结果是 Instagram 推送了十分精准的广告
博主最后的建议是,在系统设置中关掉 Instagram 调用手机麦克风的权限。
要确定 Instagram 究竟有没有干这种事,可能需要更多的证据来证明。但入侵电子产品麦克风来进行监听这事儿,可以确定 CIA 是干过的。WikiLeaks 在今年三月份公布的文件中就提到,美国 CIA 与英国 MI5 联手开发了一款程序,用于攻击三星的智能电视,通过电视内的麦克风来监听用户们的日常对话4 。
这仅仅是被公布出来的一条消息,而更多的信息是我们普通民众接触不到的,可以猜想,世界各国的情报机构以及黑客们一定掌握了更多的漏洞,用于攻击普通民众们的电子设备,并对用户们进行监听。不知道的事情不代表不存在

如何适应贴住麦克风后的生活

经过我的测试,在 iPhone 麦克风的外面贴上一层胶布,就能几乎完全隔绝掉外部的声音,用力敲击麦克风,才能够接收到一点微弱的声音。
其实和摄像头一样,贴住麦克风后,只需要经过短时间的习惯,就可以适应,每次打接电话前,顺手将麦克风上的胶布撕开一点就行,打完了电话再贴上。
前不久我购入了 AirPods, 打接电话就更不存在问题了,iPhone 上的麦克风也就基本成为了摆设。
需要注意的是,从 iPhone 5 开始,iPhone 机身上一共有三个麦克风,分别位于正常话筒的位置、后置摄像头旁边(用于通话降噪)、电话听筒内(使用扬声器进行通话时,系统调用此麦克风进行收音)。如下图所示(图片来自 Apple 官网):
iPhone 机身上的麦克风
iPhone 机身上的麦克风
如果有 AirPods 等蓝牙耳机,将这三个麦克风都贴住,可以说是毫无压力。如果没有,后面两个麦克风究竟贴不贴,还需自己进行一番斟酌。
iPad 和 Mac 上的麦克风使用频率相对更低,贴上也是毫无压力。

其他关于保护隐私的一些建议

用胶布贴住电子产品的摄像头和麦克风其实是比较极端的做法,真正能接受的朋友应该不是那么多。其实日常生活中稍微注意一些细节,就能保护许多个人隐私。

限制 App 的权限

许多 App 在安装后第一次打开时,会申请许多权限,比如定位信息访问相册访问摄像头等等,一定要看清楚、想清楚,究竟这个 App 应不应该给它这个权限。
比如打车 App 要获取定位信息,这个可以理解,但是一个看视频的 App 要获取定位信息是什么意思呢?
再比如,输入法 App 不给任何权限都可以正常工作的,为啥就非得申请摄像头和相册的访问权限呢?想给输入法设置个性皮肤算是可以理解吧,但记得设置完之后,一定要进入系统设置将这些权限给关掉。
系统自带的「相机」,如果不是需求很强烈的话,我建议关掉定位的权限。因为开启后,定位信息会写入照片的 EXIF 内,使用即时聊天应用或社交应用将这些照片分享出去时,这些开发商就能读取到照片内的定位信息,以及拍摄设备的信息,比如「这张照片是今天上午 9 点 10 分在北京颐和园东宫门拍摄的,拍摄者使用的是 iPhone 7 后置摄像头」。多发几张当天拍摄的照片,基本就能知道用户今天的具体行程了。
我日常使用时,如果确实要通过社交网络或即时聊天应用将照片分享出去,会使用一个 Workflow 去除照片的所有 EXIF 信息,并复制到剪切板上,再去对应的 App 内粘贴照片,这样就不需要给这些 App 相册访问权限,很大程度上减少了隐私的泄露。
其他需要注意的几个点有:
  • 购物类、订餐类的 App 不一定得给定位信息(定位信息太精确了),大多数时候手动选择大致的位置基本够用了;
  • 通讯录的访问权限一定要谨慎,父母家人的号码也不要直接设置为「爸爸」、「妈妈」。因为一旦给了,你所有的通讯录都会被上传,App 开发商也就知道你父亲、母亲的号码,实施诈骗时也就更加「方便了」;
  • 健康的访问权限更是要谨慎,因为健康内的信息包含了个人每天的运动信息以及身体素质信息。

避免使用公共 Wi-Fi

iOS 10.3.3 发布的时候,日志内提到了一个很重要的更新:
One of the bugs that is fixed is in the Broadcom Wi-Fi chipset formally known as CVE-2017-9417 and is nicknamed "Broadpwn". Broadpwn allows a worm to propagate among affected Broadcom Wi-Fi chipsets just by having the Wi-Fi chipset turned on even if it is not connected to any networks, and can be used to force a remote code execution on the main CPU of an affected smartphone.
Information on security updates in iOS 10.3.3 can be found at https://support.apple.com/en-us/HT207923.
意思是说,iOS 设备内置的博通 Wi-Fi 芯片存在一个漏洞,即使 iOS 设备没有连接上犯罪分子的无线路由器,犯罪分子仍然可以通过 Wi-Fi 发起攻击,远程执行代码。iOS 10.3.3 中修复了这个漏洞。
言下之意就是,如果你的 iOS 设备运行着 iOS 10.3.3 以下版本的系统,只要在公共场合打开了 Wi-Fi, 就有被攻击的风险。使用同品牌 Wi-Fi 芯片的 Android 用户也存在同样的风险。
正如前文说到的,潜在的漏洞还有很多,只是我们不知道。连上了公共 Wi-Fi, 被攻击的几率一定是更大的。
还有一个原因在于,许多 App, 特别是国产 App, 仍然在用 HTTP 明文传输信息,这些信息里都包含了许多隐私信息,比如手机型号系统版本位置信息所连接的 Wi-Fi 名称设备识别码等等。如下图所示,是某款国产在线视频 App 明文传输的信息:
某国产 Aoo 明文传输隐私信息
某国产 Aoo 明文传输隐私信息
通过公共 Wi-Fi 传输这些信息,也就相当于将这些信息拱手送给了全世界。我甚至见过某款较知名国产 App 明文传输用户名和密码的。
通过连接到的 Wi-Fi 名称,App 甚至不需要在系统中给它开启定位权限,也能获取到用户的位置信息,具体实现方法 typcn 的 Twitter 也曾提到过:
真要定位很简单的,你连接了 Wi-Fi,读取你当前连接的 Wi-Fi 的 MAC 地址,然后在数据库里面找一下就好了。  你没给他定位权限,你附近的安卓用户可能给了他定位权限,附近的 Wi-Fi MAC 地址 + 定位 一上传,你的位置也可以精确确定了
现在的流量套餐越来越优惠,外出时条件允许的话,还是尽量避免使用公共 Wi-Fi. 

结语

互联网时代,获取信息变得十分方便,同样的,泄露信息也是更加容易了。凡事小心一点,一定要把自己的隐私当回事,毕竟谁也说不好十几年后自己会不会成为大名人呢。如果一不小心成了下一个陈老师,那就尴尬了。
上文啰嗦了一大堆,希望能给大家一点点启发。保护好自己的隐私,绿色上网。

『干货福利』手把手教你如何“搭梯子”

$
0
0
中国工信部 新禁令,2017 年 1 月 22 日至 2018 年 3 月 31 日将对网络接入服务市场进行 14 个月的清理,大批量 VPN 服务近期将面临整改下架。
如果你想享受一个自由且不受限制的互联网,想使用谷歌学术搜索写论文,想无障碍使用全球顶尖互联网公司的优秀产品与服务,想去 instagramfacebooktwitter 等社交网络追踪自己爱豆的最新动态,该怎么办?
授人以鱼不如授人以渔,跟着本教程,教你如何自己动手搭建一个稳定、高速、流量管够的自用“梯子”。
来源: https://murongxun.wordpress.com/2017/07/25/%E7%AC%AC%E4%B8%80%E7%AF%87%E5%8D%9A%E6%96%87/


前期准备:

1、一张 VISA 标志的信用卡,注册 PayPal 绑定该信用卡,用于支付购买 VPS 费用。
2、大致了解最基础的 SS 知识《SS指导篇(总结归类)——从无到有,境无止尽!》最好把文章内容链接多看几遍,不要求熟知,了解大概即可。
下面是搭梯子教程:

一、VPS 购买,SSH 登录服务器 

1、点击链接注册 http://www.vultr.com/?ref=7122815 (使用此链接你我都将获得额外的10美元优惠),选择适合自己需求的套餐。点击链接图文教程
个人使用建议流量需求不大的朋友,选择最低配 2.5 美元/月,每月 500 G 流量,多余流量可提供给身边的朋友使用。
2、简单学习 Linux 文本編輯器 Vim 教程
3、创建 VPS 以及进入 SSH 教程(电脑+手机教程
4、登录 VPS 的 SSH 教程
二、 安装配置 SS 服务
启动并永久运行 SS 服务端功能
三、优化 SS 性能

给梯子加速,教程见第二步搭建 SS 服务链接,使用一键搭建脚本可以直接选择安装。笔者 vultr 日本 SS 节点在安装 TCP-BBR 后任意时段看 YouTube 720P 高清视频无压力,但在网络高峰时段看 1080P 超清会稍有卡顿。
四、下载客户端并使用 SS 服务

1⃣ 下载客户端
SSR客户端的Windows 、iOS、Android 客户端下载
网页右上角 LAYOUTS 里面找到 SSR 客户端下载
SSR官方客户端下载 (需梯子)
2⃣ 使用 SS 服务
将搭建成功后获得的服务器 IP 地址,远程端口,密码,加密方式,依次填入客户端中。如有生成 SS 二维码可直接扫描添加节点。
参考教程 文末第 7 部分:配置 Shadowsocks Windows 客户端
五、享受自由无墙的互联网。
六、常见错误的解决办法

以上教程包含图文详解、视频教程、一键搭建脚本,了解 SS 基础知识后按照教程上手很简单,但是总会碰到一些错误和问题,这里列出几个错误问题的解决办法,供大家参考。
重要声明:本文仅供交流学习使用,所有引用内容已标明链接来源,使用本教程完成搭建的网友,请自行分辨互联网中的有害信息,兼听则明偏听则暗,严格遵循相关法律法规,不要违法犯罪,如有任何逾越法律法规的行为与笔者无关。

教程:搬瓦工VPS搭建v2Ray 服务器,配合ShadowRay,v2Ray等客户端翻墙攻略

$
0
0

写在前面,因为小火箭的作者出了ShadowRay这个App,然后我又是个好奇心很强的人,之前的SS,包括现在这个博客站点,也是自己一边Google一边摸索着搭建,所以就Google和琢磨v2Ray这个翻墙方式,然后开始在搬瓦工上面使劲造,各种尝试,失败,尝试,失败之旅,一气之下撂下不干了,太闹心了,但过了一天后平静下心来想,这尼玛太窝囊了!我就不信了,必须得搞会这个东西,从小就是个倔驴没办法,然后就有了这篇文章的诞生,废话不多说,下面列出详细的过程,各位看官不喜勿喷,我是纯技术小白,不懂代码不懂各种学术描述,只有一颗倔强的心,觉得本文有用的,可以转给身边的朋友。



来源: http://www.liyonge.com/2017/10/11/v2ray/

随后我又在另外一台搬瓦工和自用的vultr上尝试搭建,均已成功。搭建以后试用了一天(Mac上和iOS上),不知大是心理作用还是怎么的,速度居然相当快。下面还是说方法

准备材料

1. VPS ,知道IP,SSH端口,和root密码,搬瓦工的root密码是每次都要生成,vultr的是固定的
2. https://www.uuidgenerator.net/ 这个网站提前申请一个密码
3. SSH链接工具,用来远程登陆,windows可与用putty,Mac用自带的终端,顺便推一个,在Mac上面喜欢用Windows终端格式的,可以在Mac上下载一个Shuttle
4. 提前在网站上下载好v2Ray客户端(Windows/Mac)https://github.com/v2ray/v2ray-core/releases/tag/v2.40 根据自己的设备选择下载,下载完以后解压出来
以上这些东西准备好以后,可以开工了

服务器配置

首先登陆终端,我用的是Mac,所以在主要讲的是Mac,但是也会有windows的方法,VPS的当然是最适合练手又耐操的搬瓦工主机,系统是 centos 7
输入ssh  -p 端口 root@IP 地址,回车,会提示要输入密码。复制密码,粘贴,回车,就会登陆。注:粘贴密码后不会显示出来,直接回车就可以

登陆成功以后,可以输入相应的指令开始安装服务器了。
一:自动安装脚本支持所有主流系统,只需一行命令即可完成安装过程,复制下列命令,粘贴,回车
bash <(curl -L -s https://install.direct/go.sh)
该脚本会自动安装unzipdeamon,并自动安装以下两个文件:
/usr/bin/v2ray/v2ray:V2Ray 程序;
/etc/v2ray/config.json:配置文件;
脚本安装完成无误后,会提示安装成功,然后进行如下操作(看不懂英文的,出现v2Ray v.x.x.x is installed表示成功了
二:输入 vi /etc/v2ray/config.json 指令,回车,进入vi编辑状态,这个时候开始配置服务器


要改的地方就是文字标注的地方,改完记得要记录下来,修改完以后保存退出 (估计对于很多人来说,最难的是在JSON里面的编辑吧,具体的操作快捷键,请点击这里参照里面的介绍,其它的请Google
三:输入 service v2ray start  回车,来启动 V2Ray ,会提示启动成功。(之后可以使用 service v2ray start|stop|status|reload|restart|force-reload 控制 V2Ray 的运行。)到这里,服务器就已经搭建好了

客户端配置

Mac端

先说Mac,打开准备工作中第4步里下载好,并解压出来的客户端文件夹,打开文件夹,里面有个config.json文件,双击打开

打开以后,下面截图里面,汉字标注的地方进行修改,修改完以后保存,如何保存,请搜索vi快捷操作方法,(有功夫的时候我把这里能用到的vi操作方法写一个吧)

保存以后,右击文件夹里面的“v2Ray”,选择用终端打开


然后打开v2ray客户端,填入相应的信息就可以翻墙了(Mac要另外下载好客户端,点这里下载)

Windows端

windows端的话,也是一样,先找到config.json文件,修改IP,端口,密码等信息(必须和第一步中配置好的信息相对应),修改后保存,然后双击打开v2Ray,按照上图的方法填写相应信息,保存就可以

iOS端

iOS端目前用的是小火箭Shadowrocket的作者写的 ShadowRay,目前在测试阶段,我也加入了测试,ShadowRay(Twitter:@ShadowRayApp)购买地址:请点击这里

图1

图2
配置方式的话大同小异,填入IP,端口,密码,加密方式等,和服务器配置里面的相对应就可以了。
以上就是我自己配置成功以后,马上根据记忆和我保存的东西写的一篇步骤,写的很乱也很糙,后续还会修改,一来给各位一个借鉴,二来到时候自己也可以复习,在搭建成功之前,我试过很多次,都败下阵来了,都是因为细节原因和概念错误所以没搞明白,最大的困难我相信大部分都是在输入vi 进入JSON的编辑模式以后不知道怎么编辑,所以特地补了下课,学习如何使用vi这个功能,建议各位,这个环节上不来,信我的没错。但依然跟以前搭建SS一样,因为各种原因出错,好在是没放弃,不断试错+Google+适当的求助= 增加成功概率。
网络上关于此类介绍的文章很多,但是好像都是写给程序员看的,小白看不太懂或者无法全懂,我是一个小白,就按照小白的笨的步骤写的,希望看到的人都能按着步骤搭建成功,也希望各位老司机看后勿喷,多提意见
好吧,暂时就这些了,一切为了世界和平!

2017年10月翻墙快报(兼谈用 I2P 突破封锁)

$
0
0
文章目录
★近期翻墙动态
★常见翻墙工具的状况
★非常时期,关于翻墙的注意事项
★关于【分布式】的重要性
★翻墙教程汇总
来源: https://program-think.blogspot.com/2017/10/gfw-news.html

★近期翻墙动态


  很久没有发过《翻墙快报》了。细心的读者会发现:前一篇还是《2015年8月翻墙快报》,距今超过【两年】。
  为啥隔了这么久捏?主要是因为最近两年,翻墙形势喜人,常用的那几款梯子,一直都很稳定。因此,俺就没有动力去写《翻墙快报》了(请原谅俺的懒惰)。

  最近捏,因为朝廷要开【十九大】,按照惯例,GFW 又要加大封锁力度了。本来俺以为会从“十一”长假开始加强封锁。但不知为何,GFW 一直到10月9日才开始发飙。想来是因为 GFW 的研发人员也在欢度长假,所以等到节后第一个工作日才开始动手。
  下面俺给大伙儿介绍一下:几款常见翻墙工具的状况(形势不太妙哦)



★常见翻墙工具的状况


  俺测试了几款常用翻墙工具,情况如下。
  根据这几年的经验,不同省份或者不同 ISP,翻墙工具的效果可能会有差异。所以俺个人的测试,仅供参考。也欢迎列位看官反馈自己的翻墙情况。

◇VPN Gate


  经俺本人测试,从10月9日开始,VPN gate 就很难找到可用的 server;从10月10日开始,连 server list 的更新机制也失效了。
  比较奇怪的是:俺访问 VPN gate 的官网,发现天朝(china)在“国别排名”中依然排在第二名,而且总流量还在继续增加。这说明某些墙内的网民依然可以使用 VPN gate 翻墙。如果你手头的 VPNgate(在10月9日之后)依然可用,欢迎在俺博客留言,反馈一下。反馈的时候顺便说一下你所在的省份以及你的宽带使用哪个 ISP。

◇蓝灯(lantern)


  蓝灯在10月8日发布了 4.1.2 版本。当 GFW 在10月9日开始加强封锁的时候,这个版本还可以用;但是在昨天(10月11日)已经失效了。
  另外,蓝灯官方在10月10日还连发了两个版本(4.1.3 和 4.1.4),可惜在昨天(11日)也都失效了。蓝灯官方这么密集地发布新版本,肯定是为了应对这几天 GFW 的封锁。
  蓝灯最新的两个版本刚推出就失效,让俺有点意外(从另一个角度也反映出——GFW 近期的封锁比较彻底,大伙儿要小心

◇赛风(psiphon)


  最近一年,(俺个人感觉)赛风不如蓝灯。所以,赛风最新版本 3.129 失效,俺倒没觉得太意外。
  (赛风的 3.129 版本于10月9日发布,也是刚推出就失效)

◇无界


  经俺本人测试,无界最新的 16.03 版本【依然可用】,但是从10月9日开始就【很不稳定】。
  如果你手头的无界用了一段时间后突然断线,你可以【切换一下自己的公网 IP】,然后再重新运行无界,【运气好的话】就又能联网了。
  (对于家用宽带,只需要关闭一下宽带拨号设备,隔一会儿再开,就可以切换自己的“公网 IP”)

◇自由门


  经俺本人测试,自由门最新的 7.6.1 版本,从10月9日开始就失效了。

◇I2P


  (从来没用过 I2P 的同学,请先看这篇《简单扫盲 I2P 的使用》)
  前些年,每当 GFW 发飙,翻墙工具倒下一大片,I2P 通常都能屹立不倒。(就比如5年前开“十八大”的那次,当时各种工具纷纷失效,也是 I2P 一枝独秀)
  这次也不例外,【I2P 依然坚挺】,实在可喜可贺!(经俺本人测试,一直可用!)
  I2P 虽然坚挺,但是速度慢。所以它适合于:【在封锁很严重的时期进行应急】。
  如果你是第一次运行 I2P,需要先进行【补种】(洋文叫做“reseed”)。补种之后,I2P 才能够接入 P2P 网络。现在封锁很严重,【如何补种】是一门艺术。下面俺会单独聊。

◇SS(shadowsocks)及其衍生工具


  俺一直没有购买 VPS 用于翻墙(主要是出于【隐匿性】的考虑),所以就没法亲自测试 SS 的情况。
  前几天看到一则新闻《中国研究人员利用机器学习识别 Tor 和 Shadowsocks 流量 @ Solidot》。所以俺猜测:SS 的情况也不乐观 :(
  如果你近期使用过 SS,欢迎在俺博客留言,反馈一下 SS 的情况。

◇关于 VPS 的补充说明


  据俺了解到的情况,这次 GFW 加强封锁,把很多 VPS 提供商的网段都封杀了。
  假如你付费的 VPS 提供商,其网段已经被 GFW 加入“IP 黑名单”,那你的 VPS 就废了(无论怎么折腾都没戏)。



★非常时期,关于翻墙的注意事项


  下面是一些经验介绍,供大伙儿参考。

◇【不要】在一棵树上吊死


  在严重封锁的非常时期,你手头要多准备几个翻墙的梯子。
  有些缺乏经验的同学只依赖一个梯子,万一这个仅有的梯子失效了,就傻逼了。

◇确保有一个【可用的】I2P


  考虑到 I2P 比较坚挺,可以在非常时期用来【救急】。当 GFW 加大封锁导致很多翻墙工具失效,这些翻墙工具也会更频繁地发布新版本,尝试突破封锁。而 I2P 的【救急】作用就体现在——用来下载其它翻墙工具的新版本。
  如果你是第一次运行 I2P,或者你很久没有运行 I2P,要先进行【补种】。I2P 的补种大致有三招,分别如下:

  第1招:用其它翻墙工具给 I2P 补种
  I2P 内置了一批“补种服务器”(洋文叫“reseed server”)。很显然,这些“补种服务器”早就被 GFW 封杀了。要想通过这些“种子服务器”进行补种,需要让 I2P 通过其它翻墙工具联网。假如你手头有其它的翻墙工具,【并且还能用】,赶紧用这个工具给 I2P 补种。
  启动 I2P 之后,用浏览器中访问如下网址,就可以进入【I2P 的补种界面】。
http://127.0.0.1:7657/configreseed
  在这个界面上勾选“Enable HTTP Proxy”,并填写相应的“Proxy Host”和“Proxy Port”(具体填啥,取决于另一个翻墙工具提供的代理)。填写完记得点保存按钮,然后 I2P 就可以通过其它翻墙工具联网并补种。
  补种完成之后,当 I2P 已经找到其它节点(界面上的 Peers 大于零),你就可以把“Enable HTTP Proxy”选项去掉——让 I2P【独立联网】。

  第2招:找其它人帮忙获取 I2P 的【种子文件】
  假设你有一个朋友手头有【可用的】I2P,那么你让这个朋友生成 I2P 的种子文件,并把种子文件发给你;然后你在自己的 I2P 补种界面上,导入这个种子文件,就可以成功补种。
  【生成种子文件】的方法如下:
  进入“I2P 的补种界面”,界面上有一项是【Create reseed file】。如果 I2P 已经联网,就可以通过这个功能,创建一个种子文件(文件中会包含可用的 I2P 节点的信息)。这个种子文件可以分享给其他 I2P 的使用者。
  【导入种子文件】的方法如下:
  进入“I2P 的补种界面”,界面上有一项是【Reseed from file】,用来导入种子文件。只要导入的种子文件【足够新鲜】,就可以让无法联网的 I2P 重新联网。

  补充说明:
  种子文件是有【时效性】滴。越久以前创建的种子文件,时效性越差。因为 I2P 网络的节点是在不断变化的——很早以前创建的种子文件,其中包含的节点信息可能已经过时了。一般来说,一两天之内的种子文件,是“新鲜”的;而超过一周的种子文件,就“不新鲜”了。

  第3招:通过 BT sync(Resilio Sync)获得 I2P 的【种子文件】
  如果你既没有其它可用的翻墙工具,也没有其它朋友可以帮你生成种子文件,那么你还有第三个选择——利用俺提供的 BTsync(Resilio Sync)网盘获取种子文件。
  熟悉俺博客的读者应该都知道:俺提供了一个 BTsync 网盘用来分享翻墙工具。该网盘的【同步密钥】如下:
BTLZ4A4UD3PEWKPLLWEOKH3W7OQJKFPLG
  上个月,俺已经在这个网盘上放了 I2P 的最新版本(0.9.31),位于 I2P 目录下。从昨天(10月11日)开始,俺又在上面放了几个“种子文件”(位于 I2P 目录下的 seeds 子目录)。种子文件的“文件名”是俺下载种子文件的 reseed server 的域名;种子文件的“扩展名”是 su3
  在翻墙困难的时期,俺会尽量多更新网盘上的这批种子文件。

  补充说明:
  如果俺从自己的 I2P 界面上创建种子文件,这些种子文件可能会包含一些跟俺本人的网络环境相关的信息。
  所以,【为了保护自己的隐匿性】,俺分享的“种子文件”是从一些【公开的】“补种服务器”下载的。为了确保种子文件的可靠性,俺使用了 I2P 界面【内置的】“补种服务器”(在“I2P 补种界面”上有这些 server 的列表)。

◇经常运行 I2P 和 BTsync


  I2P 和 BT sync(Resilio Sync)都是基于 Kad(Kademlia)技术进行 P2P 联网。它们的客户端会缓存当前联网的节点信息。如果你只是【短暂关闭】它们的客户端,下次运行时,它们的客户端依然可以根据缓存的节点信息,找到互联网上的其它节点,于是就可以正常联网。
  但如果你【长时间没有运行】I2P 或 BTsync,那么它们客户端缓存的节点信息就过时了(不够新鲜了),于是下次再运行时,客户端就找不到其它节点。这种情况下,就需要【重新补种】!
  那么,怎样才算【长时间不运行】?根据经验,超过一周就算“长时间”。为了保险起见,至少一两天就得运行一次,以便让 I2P 或 BTsync 的客户端更新 P2P 网络的节点信息。如果有条件的话,可以让 I2P 或 BTsync 的客户端一直运行着。

◇电脑上保留一份【本博客的离线浏览】


  多年前,俺就通过 BT sync 网盘分享博客的离线浏览。
  在封锁很严重的时期,如果你手头保留一份【博客的离线浏览】,那么你【无需联网】就可以看俺写的那些【翻墙教程】。
  要获取【本博客的离线浏览】,请使用如下【同步密钥】:
B7P64IMWOCXWEYOXIMBX6HN5MHEULFS4V



★关于【分布式】的重要性


  关于【分布式】的重要性,俺已经唠叨过很多次了,比如这篇:《“对抗专制、捍卫自由”的 N 种技术力量
  这次 GFW 加强封锁,很多翻墙工具失效,而 I2P 和 BTsync 依然可用——再次体现出【彻底无中心的 P2P】是何等重要。而且这2款工具都是基于 Kad 网络,这也说明了——“Kad 网络”是久经考验滴!
  如果你对网络技术比较感兴趣,想知道 Kad 的原理,可以看俺前几周的博文:《聊聊分布式散列表(DHT)的原理——以 Kademlia(Kad) 和 Chord 为例



★翻墙教程汇总


  下面这些教程都在俺博客上(需翻墙)。
  再次唠叨:如果你已经用 BT sync(Resilio Sync)自动同步了【本博客的离线浏览】,无需联网就可以看这些教程。

◇基础教程


如何翻墙(传说中的全方位扫盲教程,定期更新)
获取翻墙软件方法大全(教你在无法翻墙的情况下拿到翻墙软件)
多台电脑如何共享翻墙通道
聊聊 GFW 如何封杀 Resilio Sync(BTSync)?以及如何【免翻墙】继续使用?
扫盲 BT Sync——不仅是同步利器,而且是【分布式】网盘

◇各种翻墙软件使用教程


简单扫盲 I2P 的使用
关于 TOR 的常见问题解答
扫盲 VPN Gate——分布式的 VPN 服务器
新版本无界——赛风3失效后的另一个选择
双管齐下的赛风3
“如何翻墙”系列:TOR 已复活——meek 流量混淆插件的安装、优化、原理
fqrouter——安卓系统翻墙利器(免 ROOT)
自由門——TOR 被封之后的另一个选择
戴“套”翻墻的方法
扫盲 VPN 翻墙——以 Hotspot Shield 为例
Viewing all 1645 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>