对GitHub的审查和封锁

对GitHub的审查和封锁经常在多个国家发生，例如中国、俄罗斯、印度、土耳其等。审查和封锁方式包括但不限于DNS污染、中间人攻击等。但是，由于屏蔽引发了用户和科技公司的强烈反应，这些国家最终都解除了对GitHub的屏蔽。

背景

GitHub是一个基于Git的源代码托管网站，主要用于存储源代码并用于项目管理。截止到2015年，GitHub已有超过1000万用户和2.4亿个Git仓库。此外，GitHub还提供了免费的粘贴箱服务（Gist）和免费的网络空间GitHub Pages。GitHub许可协议禁止滥用GitHub的各项服务，保留了删除内容的权力。此外，如果GitHub收到DMCA删除通知，GitHub也会删除项目。

DNS污染

2013年1月20日，中国大陆政府的防火长城利用域名污染和关键词过滤等手段屏蔽GitHub，令中国大陆的用户无法直接进入。针对政府对GitHub的屏蔽行动，李开复在新浪微博抗议，迅速引起网民的关注，该消息更在三小时内被转发逾3万2千次。2013年1月23日，GitHub被解封，事件平息。
后来，Gist又被防火长城屏蔽，但GitHub其他服务未受影响。

中间人攻击

2013年1月26日，有中国大陆的用户在访问GitHub时发现证书无效，经检查发现，GitHub的证书变为了一自签署的X.509证书，生成时间为2013年1月25日14时29分12秒，有效期一年，故有人推测GitHub疑似遭到了中间人攻击。攻击持续了约一个小时后停止，访问恢复正常。

抢票插件风波

2013年1月15日晚，GitHub遭到疑似DDoS攻击，管理员查询日志后得知，攻击来自中国的一个12306抢票插件。因为该插件代码本身的缺陷，加上插件作者低估了春运抢票的人数，构成了DDoS攻击。1月20日，GitHub在中国遭到屏蔽。有评论认为，该抢票插件是导致GitHub在中国被屏蔽的原因。

再遭攻击

2015年8月，中国政府进一步收紧对互联网的控制。22日，翻墙软件Shadowsocks作者迫于警方压力删除项目。25日，翻墙软件GoAgent作者自行删除自己的代码。同一天GitHub再次遭到来自中国大陆的DDoS攻击。开发者普遍认为此次攻击与中国政府有关。

政府删除请求

2016年6月8日，中国网络空间安全协会致信GitHub，称其中一个名为“Zhao”的项目诽谤中国领导人习近平，要求立刻删除。3天后GitHub公开了这封公开信。这是GitHub收到的第六个政府删除请求，也是第一个来自中国政府的请求。该项目是博客主编程随想制作的“赵家人”名单。当前，在中国大陆访问该项目，网站会返回HTTP 451错误。

浏览器端攻击

2019年4月3日起，中国大陆的一些浏览器（如QQ浏览器、微信浏览器、UC浏览器和360安全浏览器等）将GitHub上的996.icu项目仓库标记为“危险网站”、“违法网站”，阻止用户访问相关GitHub网页。
之后的调查发现，这次对于该项目的屏蔽几乎同时发生，这不得不让人对这些浏览器的幕后产生怀疑。
也有人猜测，对于该项目的屏蔽跟同一个提供源有关，不过当前尚未下定论。

俄罗斯

俄罗斯政府通过俄联邦电信、信息技术和大众传媒监督局维护一份网络封锁的黑名单，封锁网站包括儿童色情、毒品、宣扬自杀、宣扬恐怖主义和其他非法网站等。

运营商封锁

2014年12月2日，俄联邦电信、信息技术和大众传媒监督局因为网站内包含了几种涉及自杀教学的内容而封禁了GitHub。因为GitHub全站使用HTTPS连接，无法针对部分页面进行封锁，因此互联网服务供应商被强制要求封锁整个网站。 实行封锁的运营商包括：Beeline、MTS、MGTS和Megafon。监督局负责人Maxim Ksenzov表示，GitHub被封禁是因为之前的2014年10月10日GitHub未遵守俄罗斯的删除请求。在2014年10月2日GitHub曾被短暂封锁，直到原始的自杀教程被删除。

被封禁的内容

2014年3月23日，有人在GitHub上面发布了介绍自杀的手册，内含在俄罗斯内的31种自杀方法，该项目被数个用户复刻。在GitHub被封锁之后，很多GitHub用户举报了该项目。该项目于2014年10月2日被创建者删除。

回应

按照俄罗斯政府的相关要求，GitHub屏蔽了相关仓库在俄罗斯内的访问，以解除对GitHub的封锁。GitHub为监督局专门创建了一个名为“roskomnadzor”的仓库，并记录来自监督局的删除通知。在仓库的README文件中，GitHub指出，他们对互联网审查表示关注，公开透明是为了防止潜在的史翠珊效应。GitHub还指出，发布通知仅仅是为了记录，不会针对仓库内容的观点进行判断。

政府删除请求

截止到2016年6月，GitHub共收到6份政府删除请求，其中5份来自俄罗斯政府。

印度

印度根据联邦和州法律来审查网站。互联网服务供应商需要按照信息技术法的要求来进行审查。但有评论指出，这些法律规定比较模糊，供应商容易过分审查。

运营商封锁

在2014年12月17日，印度电信部门命令运营商封禁32个网站。命令于2014年12月31日被公开，其中包括GitHub、Gist、Vimeo、互联网档案馆和多个粘贴箱服务。
封锁令被印度执政党印度人民党的Arvind Gupta所证实，他还指出封锁令与印度的反恐小组针对伊斯兰国的建议有关。Gupta还指出，配合政府调查的网站会被解除封锁。
2015年1月2日，印度通信部门宣布将解封四个网站，其中有GitHub Gist，并指出一旦剩下的网站遵守印度法律，也会被解除封锁。解释封禁原因时，部长提到“在这些网站中，大多数网站在发布内容之前都不需要任何审核……这些网站经常被用于传递和交流吉哈德内容……”
2015年1月4日，一个GitHub发言人指出，一些用户在访问GitHub时仍然会遇到困难，GitHub已经和印度政府进行接触，但仍然无法确定封禁的具体原因。发言人还指出，使印度的开发者能够重新访问GitHub是他们的高优先级工作，他们“愿意与印度政府合作，创建一套识别和处理非法内容的过滤系统，以恢复网站的正常访问，并确保将来不会再受到影响。”

影响

据印度时报报道，运营商Vodafone、BSNL、Hathway封锁了GitHub而通过Airtel仍能访问。因为封锁令只告诉运营商封锁哪些网站但未指出如何封锁，因此封锁程度是不同的。封锁是不可靠的，并且似乎发生在多个层面上。即使是同一运营商，封锁方法也有多种，包括IP封锁、使用代理服务器、DNS污染。根据封锁程度不同，突破封锁的方法也不同，例如更换DNS服务器或使用代理软件。

批评

针对封锁，TechCrunch评论到“在名单中加入GitHub……是最脑残的决定之一”，并预言GitHub在信息技术领域的重要性会使封禁行为引发抗议。Twitter用户通过“#GOIblocks”标签进行抗议，并引用纳伦德拉·莫迪在2012年发表的信息来谴责网络封锁。印度匿名者多次向政府发出威胁，但并未采取实际行动。

土耳其

2016年10月8日，在土耳其黑客组织RedHack声称入侵土耳其能源部长、埃尔多安女婿阿尔巴伊拉克之后，土耳其信息与通信技术署命令互联网服务供应商封锁几个文件分享网站，包括Dropbox、Microsoft OneDrive、Google Drive。观测网络审查情况的Turkey Blocks注意到GitHub于次日上午被屏蔽，并且相关的屏蔽令被信息与通信技术署逐步发布出来。屏蔽导致依赖GitHub的软件（例如Font Awesome、Homebrew等）无法正常运行。Startup Istanbul活动的参与者也表达了对基础设施可用性的不满。在土耳其，#GitHub标签成为了Twitter的热门标签之一。按照The Daily Dot的说法，RedHack组织蓄意通过多种服务来传播邮件内容，期待土耳其政府将其屏蔽，以造成史翠珊效应。18小时后GitHub被解封。

美国

2019年5月起，美国的出口管理条例开始对开源代码进行管制。