可用的shadowsocks-heroku账号以及自行搭建shadowsocks-heroku服务器

更新于2017年10月22日 16:26:05

临时使用账号,会不定时改password和method 。

仅帮助新手进行第一次的注册部署,滥用者IP将会被记录

账号一(Node.js版,美国服务器):
{
"server": "onplus.herokuapp.com",
"local_address": "127.0.0.1",
"scheme": "ws",
"local_port": "1081",
"remote_port": "80",
"password": "H8Wa6^TH98",
"timeout": 600,
"method": "aes-256-cfb"
}

账号二(Python版,美国服务器):
{
"server": "ss-ws-py.herokuapp.com",
"local_address": "127.0.0.1",
"scheme": "ws",
"local_port": 1082,
"remote_port": 80,
"password": "H8Wa6^TH98",
"timeout": 600,
"method": "aes-256-cfb"
}

 

账号三(Node.js版,欧洲服务器):
{
"server": "ss-eu.herokuapp.com",
"local_address": "127.0.0.1",
"scheme": "ws",
"local_port": 1083,
"remote_port": 80,
"password": "H8Wa6^TH98",
"timeout": 600,
"method": "aes-256-cfb"
}

FROM https://github.com/onplus/shadowsocks-heroku/issues/14
https://github.com/onplus/shadowsocks-heroku/issues/25
---------

 

shadowsocks-heroku

Heroku 是一个支持多种编程语言的云平台即服务,shadowsocks-heroku 则是可部署在 Heroku 平台的 ss 服务。 和 shadowsocks 不同的是 shadowsocks-heroku 使用的 WebSocket 代替原本的 sockets。

如果遇到问题

  1. 请先检查是否遵循步骤(再次阅读一遍教程)
  2. 请先自行通过Google/Github寻找答案
  3. 如果还没有解决,欢迎通过 issue 提问(贴日志和配置的时候注意隐藏密码&个人ip)

准备

1. 注册 Heroku 帐号

Heroku 提供免费账号,部分介绍如下:

注册地址:https://signup.heroku.com/ (注册和部署过程可能需要梯子#10#14

部署

  1. 点击 一键部署到heroku (按照此链接部署app,很容易搞定

    也可以选择另一个版本的服务端shadowsocks-websocket-python

  2. 设置 加密算法和app 密码

deploy

 

支持的加密算法类型如下https://github.com/mrluanma/shadowsocks-heroku#supported-ciphers

启动本地 Client

  1. 下载release https://github.com/onplus/shadowsocks-heroku/releases (备份

  2. 修改config.json参数,运行ss-h.exe 或 start.vbs (或 win托盘工具taskbar.exe)(我在mac下,启动的方法为./ss-h --config config.json)

  3. 启动成功,命令行显示:server listening at { address: '127.0.0.1', family: 'IPv4', port: 1080 }

from  github.com/onplus/shadowsocks-heroku(这个版本最简单,一键部署app,我做了个fork:

github.com/briteming/shadowsocks-heroku)

https://github.com/521xueweihan/shadowsocks-heroku/tree/master

https://github.com/mrluanma/shadowsocks-heroku (最早的起源)

 

我用此法翻墙成功。

注:最好用chrome+swithyomega组合。如果是用其他浏览器,还是会翻墙失败,原因是其他浏览器不能绝对做到防止dns污染。

我部署的服务器:shbrite.herokuapp.com

------------

shadowsocks-heroku的python版:

 部署到heroku空间的方法:

https://heroku.com/deploy?template=https://github.com/onplus/shadowsocks-websocket-python/tree/deploy

我部署的服务器:swpbrite.herokuapp.com

客户端程序:可共用上面的github.com/onplus/shadowsocks-heroku的客户端程序。

魔改版BBR一键安装脚本 For Debian8 / Ubuntu16

简介

BBR相信大家都不陌生,是谷歌开发的一个存在于Linux内核中的拥塞算法。为了优化国内与服务器之间的网络质量,loc的大佬专门魔改改进了下这个BBR,成为了新的BBR魔改版。我也就乘机水一篇文章好了~在Debian 8 和Ubuntu16 + 系统上一键部署魔改版BBR,自动换内核成 4.10.15 ,自动安装Headers。用户只需要将系统安装成 Debian 8 或者 Ubuntu 16 即可,剩下的交给脚本来吧。

Github地址:https://github.com/luckypoem/YankeeBBR

f:id:briteming:20171027155545p:plain

参考资料

魔改BBR原帖: http://www.hostloc.com/thread-372277-1-2.html
萌新教程:  http://www.hostloc.com/thread-372335-1-1.html

部分商家的VPS可能会遇到换内核之后无法启动系统的情况,所以请运行脚本前一定要备份好重要数据!!

 

安装使用

wget -N --no-check-certificate https://raw.githubusercontent.com/luckypoem/YankeeBBR/master/bbr.sh && bash bbr.sh install

安装过程中如果出现这张图片,请选择NO 来删除其他内核.

然后根据提示重启系统。
重启完成后,运行

bash bbr.sh start

即可启动魔改版BBR。

 

查看魔改BBR状态:

sysctl net.ipv4.tcp_available_congestion_control

如果看到有 tsunami 就表示开启成功.

最简单的SSR多用户脚本

 

之前一直很喜欢Breakwa11的SSR-Manyuser程序,对接着Mysql功能很强大,可是在配置方面难倒了不少小白。而且很多情况下,VPS的内存不足以支持我们流畅的运行LNMP环境。于是本脚本就诞生了。纯粹使用Shell脚本来完成SSR的用户管理,流量监控部分,满足大部分人使用一个小内存(可以是64MB哦)VPS分享SSr的喜悦.

用户、端口密码增加,修改,删除功能。(已完成)
自动添加,删除相关防火墙政策。(已完成)
流量统计,流量限制功能。(已完成)
支持开机自启(已完成)
支持SSR混淆模式(已完成)
一键搭建脚本(已完成)
简单的控制脚本(已完成)


注意事项

为了防止 SSR 程序被滥用来免流,已经禁止各类非正常 Host 以及 ML 有关端口,愿 SSR 能够继续担当为用户打开通往世界的大门的工具~
只支持统计 IPV4 流量
程序路径已写死,只能通过此脚本进行管理.

系统支持

Ubuntu 14.04
Ubuntu 16.10
Debian 7
Debian 8

安装

wget -N --no-check-certificate https://raw.githubusercontent.com/forkgood/SSR-Bash/master/install.sh && bash install.sh

卸载

wget -N --no-check-certificate https://raw.githubusercontent.com/forkgood/SSR-Bash/master/uninstall.sh && bash uninstall.sh

 

from

https://github.com/forkgood/SSR-Bash

https://github.com/logdns/SSR-Bash

 --------------------

https://github.com/4kercc/SSR-Bash-Python

https://github.com/aihoom/SSR-Bash-Python

--------------------

 

ShadowsoksR多用户管理脚本,轻松修改/添加/删除用户。 

SSR-Bash-python

ShadowsocksR多用户管理脚本(基于官方mujson版本)

 介绍

一个Shell脚本,集成SSR多用户管理,流量限制,加密更改等基本操作。是一个基于ShadowsocksR官方的mujson的辅助脚本。

 更新日志

  • 2017-3-8 1.0正式版本

 系统支持

  • Ubuntu 14
  • Ubuntu 16
  • Debian 7
  • Debian 8
  • CentOS 6
  • CentOS 7

 功能

  • 一键开启、关闭SSR服务
  • 添加、删除、修改用户端口和密码
  • 自由限制用户端口流量使用
  • 自动修改防火墙规则
  • 自助修改SSR加密方式、协议、混淆等参数
  • 自动统计,方便查询每个用户端口的流量使用情况
  • 自动安装Libsodium库以支持Chacha20等加密方式

与上一版改进

 
  1. 支持每个端口单独自定义加密方式,混淆,协议。
  2. 暂时支持了部分兼容协议。
  3. 支持CentOS 系列系统。
  4. 每月自动清空流量使用记录。
  5. 分别记录上传流量和下载流量。
  6. 动态管理用户,每一次更改用户不会影响原有用户端口。
  7. 恢复ShadowsocksR所支持的兼容模式。
  8. 增加返回上一级菜单功能。
  9. 支持为每一个端口添加不同协议参数与混淆参数。

 

 缺点

  • 无法删除最后一名用户(官方限制)
  • 未设置开机启动
  • 部分系统上IP地址识别错误,导致SSR链接生成有问题,手动修改即可。

 安装

wget -N --no-check-certificate 
https://raw.githubusercontent.com/FunctionClub/SSR-Bash-Python/master/install.sh && bash install.sh

 卸载

wget -N --no-check-certificate 
https://raw.githubusercontent.com/FunctionClub/SSR-Bash-Python/master/uninstall.sh && bash uninstall.sh 
 

常见问题

问1:是否需要自己先安装SSR服务端?
答1:不需要,脚本默认自带了安装SSR的部分。请使用纯净的系统进行安装。
问2:是否能和Oneinstack一起安装?
答2:原则上是可以的,但是并不建议放在生产环境中使用,建议单独使用一台VPS来扶墙。
问3:为什么无法开启兼容模式?
答3:因为SSR服务端只支持部分协议的兼容设置,所以并非所有的协议插件都能兼容原版。具体列表参考 SSR协议插件稳文档
问4:脚本安装好连接上没有网络?
答4:请确认好您已经正确填写了加密方式、协议和混淆,并且使用最新的SSR客户端而不是SS客户端。
问5:脚本还是无法使用!
答5:如果可以输入 ssr 命令打开功能菜单,请选择 1 服务管理 再选择 4 查看日志。发送给我详细截图以解决问题。
问6:脚本是否支持 UDP 转发?
答6:默认是开启了 UDP转发的,如果无法使用,请检查SSR官方文档修改本地配置,SSR服务端默认安装在 /usr/local/shadowsocksr

用Linux的交互程序Whiptail安装GUInstaller-For-SSR

一个叫Whiptail的交互式Linux程序。而且它是各大Linux发行版自带的一个工具,所以支持度是非常好的。很多人看到这个界面后会想到Ubuntu和Debian的安装程序。

f:id:briteming:20171027144805p:plain

优点

  • 完美解决传统脚本的中文乱码问题。
  • 解决传统脚本中使用Xshell的时候,退格键会出现 ^H的问题。
  • 基于向导式,小白也能轻松看懂。
  • 看起来很高大上。

缺点

  • 不支持开机启动,毕竟是写着玩玩的,没想过要放在生产环境下使用。
  • 出错无法根据日志来排除错误,因为全部写到 /dev/null 里面了,为了保持始终在图形界面。
  • 不支持手机SSH连接。

系统支持

  • Ubuntu 14
  • Ubuntu 16
  • CentOS 6
  • CentOS 7
  • Debian 7
  • Debian 8

安装脚本

wget --no-check-certificate https://raw.githubusercontent.com/hkxiaoyao/GUInstaller-For-SSR/master/install.sh
bash install.sh

最后说两句

这个程序只是写着玩玩练练手,至于更新什么的我不打算做。反正里面的注释都写得非常清楚了,大部分人都是能看懂的.

项目地址:https://github.com/hkxiaoyao/GUInstaller-For-SSR

 

尝试使用IPFS网络来分发V2Ray的安装包

除了 V2Ray 的开发之外,一个非常重要的问题是分发。也就是先有鸡还是先有蛋的问题。用户需要使用 V2Ray 软件来翻墙,但是使用之前要先下载到安装包,而安装包的下载地址,比如 Github Release,通常是被墙的。

V2Ray 的终极目标是提供一个无障碍的翻墙体验,即当你只有一台全新的电脑,包括网络和浏览器,其它什么都没有的时候,你可以使用 V2Ray 来完全翻墙的第一步。

要做到这一点,需要两个条件:

  1. V2Ray 提供了一个免费的服务器,通过自带的配置文件即可连上;
  2. 用户可以自由地下载到 V2Ray 的安装包。

第一个条件已经完成了,V2Ray 的官方服务器已经稳定工作很长一段时间了。现在面临的主要问题是第二个条件。

network

想必大家都已经看到 Telegram 上的公告,我的第一个想法是通过网盘来分发,某网盘号称国际版没有审查,但在我公布下载链接的数小时内,帐号就被封锁,我也只能呵呵了。

想来想去,传统的 HTTP 道路肯定是走不通的,国内的 HTTP 都有审查,国外的都被墙,没有可用的。那么也只能 P2P 了。

目前对于文件分享,P2P 的一个主流方案是 IPFS。和 BT 类似,IPFS 没有中心服务器,你可以连接到其它的 IPFS 节点来下载所指定的文件。文件名(或目录名)就是一个字符串,有了这个字符串,你就可以下载到 V2Ray 的安装包。

当然这个方案有个缺点,也就是你需要先下载 IPFS 的程序,等于把分发的责任转移给了 IPFS。如果将来有一天,没人可以下载到 IPFS 的程序了,那也就没戏了。

所以现在只能期待 IPFS 依然存活,并且有好心人在墙内做种子。🙏🙏🙏🙏

接下来简单介绍一下 IPFS。在 IPFS 中可以发布文件或者文件夹,每个文件和文件夹都有一个唯一标识,在 IPFS 中通过这个标识可以获取这个文件。比如目前最新的 V2Ray 安装包在这里。这个路径是不可变的,也就是说,之后的版本再次传到 IPFS 之后,会有一个新的标识符。为了解决这个每次都变的问题,IPFS 项目中有个叫 IPNS 的工具用来重定向,大概就相当于域名和 IP 的关系。而 V2Ray 的 IPNS 是这个。不知道为什么 IPNS 比 IPFS 慢了很多,大概是种子不够多的原因吧。

在此希望广大翻墙同胞们一起来做种,让下载速度变得更快。做种的方式大约是,在已经配置完 IPFS 之后,运行:

ipfs pin add -r /ipns/QmdtMuAhEUPFX9NQiGhRj2zhS1oEA76SXNDnZRHqivjMwR

我也是刚刚学着使用 IPFS,如果有问题请指正。

在上述的分发渠道中你还可以找到一些主要的 V2Ray 客户端。如果还需要其它的工具,请留言,之后我会加上.

from 

https://steemit.com/cn/@v2ray/ipfs-v2ray

翻墙协议的三要素

介绍了从用户的角度如何理解翻墙工具,这次我们来讨论一下从工程的角度如何理解翻墙协议,每个翻墙协议有什么差别。

首先,我们来设定一个概念:一个代理(翻墙)协议可能具备的三要素。

一、传输:能在 A、B 两个主机之间建立一条安全可靠的通信通道,用于传输数据;
二、协议:对于将要传输的数据,能将这些数据的目的地告知代理服务器;
三、内容:可以对传输的数据进行优化,比如压缩、合并等。

任何一个翻墙协议都具备以上三要素中的几个或全部。

文字可能较难理解,我们来举一个简单的例子:Socks 协议。Socks 只具备协议要素,即告知代理服务器要把数据发送到哪里去,以达到代理的目的。但众所周知单纯的 Socks 不具备翻墙能力,因为它不能建立可靠的通道(即会被墙)。于是就有了 Shadowsocks。Shadowsocks 在 Socks 的基础上增加了传输要素,对数据加了密,使墙无法分析其内容。而 Shadowsocks 不具备内容要素,因为对于客户端的发来的内容,Shadowsocks 不进行任何修改,直接发送给了代理服务器。

在翻墙过程中,我们可能会使用几个协议的组合,比如 Shadowsocks + KcpTun。无论我们怎么组合,所产生的结果,必须包含传输要素和协议要素,才可以进行可靠的翻墙

为什么不能单独使用 KcpTun 来翻墙,因为 KcpTun 只有传输+内容要素。KcpTun 只能建立连接,对内容进行一定的处理,比如加密以及其内置的 mux 模式。但它不能发送数据的实际目的地,导致了一定要再套一个其它协议才可以用于翻墙。

而在 Shadowsocks (传输+协议) + KcpTun (传输+内容) 的场景中,由于两者都有传输要素,重复了,以至于 Shadowsocks 的加密在这个场景中多余。因为 KcpTun 已经有加密了,Shadowsocks 再多加一层也没用。

这也就是 ShadowsocksR 最近的几个协议推荐使用不加密的原因。

ShadowsocksR 本质上是对 Shadowsocks 进行了一层封装,即 Shadowsocks + X。这个 X 包含了对协议要素的扩(单端口多用户多种加密方式),加强了传输要素(伪装和其它的加密方式)。和 Shadowsocks + KcpTun 同理,Shadowsocks 本身的传输要素就显得不那么重要了。

而 Shadowsocks 最近也加强了传输要素,即 obfs plugin。两者在要素这一层面相差无几,这也是为什么很多人不认为 ShadowsocksR 之于 Shadowsocks 有很大改进的原因。

顺便整理一下常用协议所具备的要素,仅供参考:

  • HTTP/1.1: 协议
  • HTTP/2 (不带 TLS): 协议+内容
  • TLS: 传输
  • Shadowsocks: 传输+协议。AEAD 只是强化了传输,并没有添加新的要素。
  • ShadowsocksR: 传输+协议
  • KcpTun: 传输+内容
  • GoProxy: 等价于 HTTP/2 + TLS,即传输+协议+内容
  • VMess (V2Ray): 传输+协议
  • mKCP (V2Ray): 传输
  • WebSocket (V2Ray): 传输
  • Mux (V2Ray): 协议+内容

当然,一个翻墙协议的效率和它具备几个要素没有半点关系。以上这些内容只是帮助大家理解每个翻墙协议的侧重点,哪些组合是有意义的,哪些是没有意义的。一个协议组合首先要有意义,其次才能探讨它的效率.

 

from 

https://steemit.com/cn/@v2ray/unzev