写点什么

GitHub 有国界:全面封禁美国制裁地区开发者账户

  • 2019-07-29
  • 本文字数:2832 字

    阅读完需:约 9 分钟

GitHub有国界:全面封禁美国制裁地区开发者账户


当 GitHub 被微软收购时,新任 CEO Nat Friedman 曾表示:GitHub 将始终坚持开发者优先并独立运营。但到了今天,这句话也许应该改成:GitHub 将坚持(不受美国制裁地区的)开发者优先。

私人仓库免费了,却不让用了

2019 年 1 月初,GitHub 发布了重磅更新:无限私有仓库免费使用。此良心之举让开发者们一片叫好,许多人表示将从 GitLab 或 BitBuckets 回到 GitHub 的怀抱。可是半年后的今天,许多国家和地区的开发者们却笑不出来了。


事情是这样的:上周,一位伊朗开发者的 GitHub 账号被禁,他在社交媒体上分享了自己的经历,并向 GitHub 官方发起质询。最后得知,因为自己的所在地伊朗受到美国制裁,目前整个伊朗地区的 GitHub 账号均无法使用。更让人愤怒的是,GitHub 在没有任何事先通知的情况下屏蔽了所有伊朗账户,连让该地区开发者下载备份数据的机会都没有。


无独有偶,起初他以为这只是个别事件,可随后在社交媒体上却了解到更多相似遭遇:在他之前,一位克里米亚地区的俄罗斯籍开发者的账号同样遭到封禁。更有甚者,一位居住在芬兰的伊朗籍开发者账户同样遭到了封禁,显然 GitHub 不是单纯地凭借 IP 地址封禁账户,账户的国籍同样是其封禁的考量标准之一。


这时人们才想起,被微软收购后的 GitHub,毕竟本质仍是一家美国企业。开源虽然无国界,但 GitHub 却是有国界的。

开源与封禁,竟是命运的双生子

当开发者们因为“Open Source”的开源概念聚合在一起时,他们脑中想的、口中喊的,都是纯洁、高尚的口号:


  • “开源是没有国界的!”

  • “开源是自由的!”

  • “开源将促进世界的发展!”

  • “开源将帮助落后地区的 IT 建设!”

  • ……


彼时,从没有人怀疑过,崇尚自由的开源,竟然能与封禁联系在一起。更可怕的是,这个封禁的衡量标准,仅以一国之政策为指导方针:任何被美国制裁的国家和地区,其开发者账户都有可能遭到封禁,不管你是真的在利用 GitHub 造核弹,还是托管几个小游戏的代码,你都是被 ban 的对象。


事件起始于一位居住在克里米亚地区的俄罗斯开发者的遭遇:



GameHub 项目的维护者 Anatoliy Kashkin 发出警告,因美国对克里米亚的制裁,GitHub 限制了他这位生活在克里米亚的居民的账号,他可能无法继续维护 GameHub。在俄罗斯与乌克兰交战以及克里米亚脱离乌克兰之后,国际社会对克里米亚进行了制裁。

Kashkin 称他收到通知,“由于美国贸易管制法律,你的 GitHub 账号已被限制。对于个人账号,你被限制只能访问免费的公开库用于个人通过。”Kashkin 解释说,GitHub 限制他创建私有库,关闭了现有的私有库,可以创建公开的库但不能删除。他表示自行托管单一的 git 库的意义不大,毕竟很多人是在 GitHub 上发现 GameHub 的,GameHub 提供了很多有用的社交功能。


事件发酵于一位伊朗地区开发者的遭遇:


伊朗开发者 Hamed Saeedi 发表博文声称,GitHub 屏蔽了他的账号,认为他在利用免费的私有库开发核武器。他称自己从 2012 年开始使用 GitHub,最近收到了与贸易制裁相关的邮件通知。他称 GitHub 屏蔽了所有伊朗账号。


Hamed Saeedi 在 GitHub 上发起了一个项目:github-do-not-ban-us,截止目前已经收获了 6000+ 个 Star,但如果不能得到解封,这些 Star 将毫无用处。


https://github.com/1995parham/github-do-not-ban-us


随后的消息表明:被美国贸易制裁的国家和地区的开发者账号,包括克里米亚、古巴、朝鲜、伊朗和叙利亚。GitHub 封禁的“指导方针”:


  • 根据 GitHub 的服务条款,用户只能按照适用法律访问和使用 GitHub.com,包括美国出口管制和制裁法律。根据美国和其他适用法律,特别指定国民名单和其它被拒绝、被封锁的人士禁止访问、使用 GitHub.com,用户不得代表此类各方使用 GitHub.com,包括受制裁国家 / 地区的政府。

  • 根据美国财政部海外资产控制办公室(OFAC)发布的授权,Github 可允许受美国制裁的管辖区内或通常居住在管辖区内的用户访问某些 Github.com 服务。在访问 GitHub 服务时,这些管辖区内的人员和居民不得使用 IP 代理、VPN 或其他方法来伪装其位置,并且只能使用 GitHub 进行非商业的个人通信。

  • GitHub Enterprise Server 不得出售、出口或再出口到清单中的国家,目前清单中已经包含古巴、伊朗、朝鲜、苏丹与叙利亚。


事件发展至今,包括美国开发者在内的众多群体为以上事件的主人公们表示了同情,并给出了各种各样的建议:


  • 试着导出一下?

  • 要不转去 GitLab?

  • 试试不在美国的代码托管平台?

  • ……


然而,GitHub 仍是这世界上最流行的代码托管平台,对这些开发者来说,沉没成本太大了。


事件发酵至今,GitHub 迫于舆论压力偷偷地针对被 ban 账户进行了一些“定制化”的变更:


  • “删除这个存储库”按钮不再禁用;

  • 可以选择将“私有 repos”公开,以便克隆它们;

  • 只需在 options 中更改源代码,就会看到自定义域文本框。

  • 在顶部警告上添加了一个“关闭按钮”。被封禁用户可以关闭该消息。


但仍旧,没有什么实质性的解决方案。

老调重弹,开源的自由与国界

一个多月以前,笔者采访了 OpenStack 基金会创始人 Jonathan Bryce,我向他提问,怎么看待近期有关华为问题引发的开源危机相关讨论。当时与会公关叫停了我的这次提问,但 Jonathan 侧面给了我回答:


开源真正给我们带来的是开源社区可以把不同公司、不同行业的技术专家组合在一起,做成一个非常棒的的团队来解决技术问题。整个开源过程是无边界、无国界的,换句话说不会因为你在哪个公司而改变这个态度,也不会因为你在哪个国家而改变对开源的态度,我们真正要做的是把最好的专家聚集在一起,不应该涉及其他方面的问题。

OpenStack 基金会为了更多关心和开拓中国的社区,今年特意在上海成立了一个办事处,有一位专职的社区经理去解决中国的问题。整个开源基金会的目的是能把最好的专家聚集在一起解决一些问题,而不应该涉及国际的问题,OpenStack 也希望帮到整个中国开源社区和开发技术人员。最后重申一点是 OpenStack 这个开源项目是属于全世界的,并不属于一个公司,也不会属于一个国家。


这是我们曾深信不疑的开源理念与精神,也是我们愿意为开源奉献的力量源泉。可现在,事情似乎远不一样了。


中国现在是世界第二大经济体,也是包括 GitHub、OpenStack 等多个开源基金会在内的世界第二大市场与贡献者,但中国仍旧面临过美国政策法案限制的影响,包括华为等多个国家在开源、IT 技术、投资等多方面遭到了种种掣肘。世界第二,终究是不如世界第一。


中国尚且如此,远不如中国强大的伊朗、叙利亚、古巴、朝鲜就更是如此了。开发者们信奉的 OpenSource 理念,终究是抵不过拳头加大棒的强权国家。因为这些组织总部设在美国、上市在美国、选用了美国的云服务等等,它就必须遵守美国的政策法案。


当时笔者曾对一位提出“我们是否该建立自己的 GitHub”了的读者说,“个人觉得不需要,否则又成闭关锁国了”。但现在,也许我们是应该未雨绸缪一下了。


唯一需要我们考虑的是,中国开发者,真正理解开源,愿意奉献开源了吗?中国科技企业,真的愿意投入开源,回报社区了吗?我们的开源能形成一个真正完整的闭环,而不是简单的“拿来主义”吗?


值得深思。


2019-07-29 12:2614746
用户头像
小智 让所有人认同的文字称不上表达

发布了 408 篇内容, 共 396.4 次阅读, 收获喜欢 1984 次。

关注

评论 6 条评论

发布
用户头像
美国世界的开源,是建立在他心情好的时候,如果被惹怒了,什么开源,什么人权,统统灰飞烟灭。国人应该警醒,尤其是有能力的公司,希望做好备胎工作!!!
2020-04-25 11:05
回复
用户头像
我觉得一分为二看问题,开源和技术应该是无国界的(类似科学家精神),但是同时也要求里面的参与者也是抱着这样的态度和精神。如果一方面有很多怀着这样精神的人主张开放,而却又另一拨人不怀好意、与政治和国界、民族捆绑,抄袭、掠夺、攻击,那这个不平衡势必会导致最终无法完全开放。
2019-08-03 21:51
回复
用户头像
我感觉蹊跷。自己国内不上访问非要说是美国限制
2019-07-29 19:35
回复
GitHub给的回应就是封禁啊
2019-07-30 09:00
回复
封了也是正常的,网站需要遵守所在国法律。要是在国内,限制更多,很多都不是法律,是有关部门的一个电话而已
2019-07-30 12:24
回复
用户头像
各大国际性的组织,总部都设在美国了,真要出问题还真的挺严重的
2019-07-29 13:54
回复
没有更多了
发现更多内容

【我和openGauss的故事】在Kylin桌面版操作系统中配置openGauss的ODBC数据源

daydayup

【NodeJS】GLIBC_2.28 not found CentOS7不兼容Node高版本

ReturnTmp

node.js centos

作为网络报表分析工具的Quick BI,其功能如何

夜雨微澜

Programming abstractions in C阅读笔记:p91-p106

codists

通义千问开源模型部署使用

WizInfo

通义千问

ARTS 打卡第 1 周 鸿蒙入门开发教程:一文带你详解工具箱元服务的开发流程

坚果

ARTS 打卡计划 HarmonyOS OpenHarmony 元服务 ArkTS

【我和openGauss的故事】openGauss 主备架构及同步复制模式理论学习与验证测试

daydayup

【我和openGauss的故事】openGauss5.0特性:CM支持VIP仲裁特性

daydayup

新利好带动 POSE 持续上扬,月内几近翻倍

股市老人

中国信通院高质量数字化转型产品及服务全景图发布,合合信息多项AI产品入选

合合技术团队

人工智能 数字化转型

2023-08-10:景区里有m个项目,也就是项目数组为int[][] game,这是一个m*2的二维数组 景区的第i个项目有如下两个参数: game[i] = { Ki, Bi } Ki一定是负数,

福大大架构师每日一题

左程云 福大大架构师每日一题

怎么快速更新Python的第三方库?教你一招,小白也能学会

程序员晚枫

Python 编程 计算机 第三方库

【Linux】云服务器自动化部署VuePress博客(Jenkins)

ReturnTmp

jenkins vuepress

以商业大数据技术助力数据合规流通体系建立,合合信息参编《数据经纪从业人员评价规范

合合技术团队

人工智能 大数据 商业化

openGauss-graph 0.2.0版本正式上线

daydayup

ToolLLM:能够使用 16000 种真实 API 的 LLM

Zilliz

AIGC Towhee LLM

Spring 架构

小万哥

Java spring 后端 springboot SpringCloud

新利好带动 POSE 持续上扬,月内几近翻倍

鳄鱼视界

瓴羊Quick BI报表工具助企业洞察市场趋势,让数据说话

对不起该用户已成仙‖

【我和openGauss的故事】原生openGauss与Oracle数据库函数兼容性对比验证测试

daydayup

【我和openGauss的故事】Navicat连接openGauss_5.0.0 企业版数据库

daydayup

【我和openGauss的故事】openGauss5.0在某省医保局实时数仓应用

daydayup

openGauss数据库源码解析系列文章——安全管理源码解析(三)

daydayup

C++友元函数和友元类的使用

芯动大师

c++ 友元

openGauss数据库源码解析系列文章——安全管理源码解析(四)

daydayup

go-zero 是如何实现令牌桶限流的?

AlwaysBeta

Go 源码 微服务 go-zero 限流器

javascript之webAPIs(1)

timerring

JavaScript

新利好带动 POSE 持续上扬,月内几近翻倍

BlockChain先知

【我和openGauss的故事】一文帮你理解openGauss的高可用方案

daydayup

GitHub有国界:全面封禁美国制裁地区开发者账户_文化 & 方法_小智_InfoQ精选文章