Skip to main content

shadowsocks在ubuntu下的搭建

平台:DigitalOcean上的Ubuntu 14.04
安装
apt-get install python-pip
pip install Shadowsocks
服务器配置
服务端安装好以后,创建一个配置文件 /etc/shadowsocks.json。 示例:
{
    "server":"服务器 IP 地址",
    "server_port":8388,
    "local_address": "127.0.0.1",
    "local_port":1080,
    "password":"mypassword",
    "timeout":300,
    "method":"aes-256-cfb",
    "fast_open": false,
    "workers": 1
}
各个字段的意思:
字段名含义
server服务端监听的地址,服务端可填写 0.0.0.0
server_port服务端的端口
local_address本地端监听的地址
local_port本地端的端口
password用于加密的密码
timeout超时时间,单位秒
method默认 "aes-256-cfb",参见加密方法
fast_open是否使用 TCP_FASTOPEN, true / false
workersworker 数量,Unix/Linux 可用,如果不理解含义请不要改

在服务器上运行 ssserver -c /etc/shadowsocks.json 即可。

可以用命令行参数覆盖 config.json 中的设置:
本地客户端使用sslocal -s server_addr -p server_port -l local_port -k password -m bf-cfb
ssserver -p server_port -k password -m bf-cfb --workers 2
ssserver -c /etc/shadowsocks/config.json
用 -h 查看所有参数。

不同的端口可以使用不同的密码实现多用户访问
{
    "server": "127.0.0.1",
    "local_port": 1081,
    "port_password": {
        "8381": "foobar1",
        "8382": "foobar2",
        "8383": "foobar3",
        "8384": "foobar4"
    },
    "timeout": 60,
    "method": "aes-256-cfb"
}
查看shadowsocks进程   ps -ef | grep shadowsocks
让程序后台运行 setsid ssserver -c /etc/shadowsocks.json



ipv6设置(需要测试一下)
Google一圈发现Shadowsocks服务器也会读取config.json的server字段,所以如果填写的是IPv4地址的话,ss-server就只会在IPv4地址上监听,通过IPv6连接肯定就会不成功。修改一下config.json,其中server字段为:
"server": "::",
然后再重新启动一下Shadowsocks的服务端:
ss-server -c config.json -f /var/run/shadowsocks.pid
通过-f指定pid文件的方式使ss-server运行在后台,在CentOS里ss-server的输出将重定向到/var/log/messages,启动后可以通过netstat -nlp查看监听的端口,如果有:::SERVER_PORT(SERVER_PORT是ss-server监听的端口)就说明成功了。

shadowsocks的github地址:
https://github.com/clowwindy/shadowsocks

Comments

Popular posts from this blog

使用PHP Webhook方式打造Telegram Bot

一、找BotFather拿到bot token     在telegram中私聊BotFather建立自己的bot,给bot取名,名字必须要以bot结尾。建好后自己的bot就有一个唯一的token,类似下面的一串字符 164354723:AAEjT6-IyNoXjt7miD0dwa-P5VmDTtHQC8 二、确认bot响应文件的位置     在写好bot响应文件后,要把bot放在网络上的一个位置,并且这个位置必须要加密的,即以https开头的一串网址。比如响应文件的名称为telbot.php,把它放在下面这个网址的位置: https://my.webhost.com/ 164354723:AAEjT6-IyNoXjt7miD0dwa-P5VmDTtHQC8 /telbot.php 上面网址中的红色设置和bot的token一样是为了确定这个唯一的位置,当然也可以任意设置。 三、告诉Telegram响应文件的位置 Telegram用下面网址的形式来设定webhook响应方式 https://api.telegram.org/bot [myauthorization-token] /setwebhook?url= [myboturl] 按照上面的网址形式,把自己创建的bot的token以及响应文件的位置填入,然后在浏览器中运行一下即可设置成功。比如: https://api.telegram.org/bot164354723:AAEjT6-IyNoXjt7miD0dwa-P5VmDTtHQC8/setwebhook?url=https://my.webhost.com/164354723:AAEjT6-IyNoXjt7miD0dwa-P5VmDTtHQC8/telbot.php 设置成功后,页面会显示下面的内容: {"ok":true,"result":true,"description":"Webhook is already set"} 四、在Telegram中给自己的bot发消息进行验证 php响应文件例子 <?php  define('BOT_TOKEN', 'YOURBOT:TOK...

telegram中的Sci-Hub机器人,又一文献下载利器

或许你看到标题会问什么是telegram,什么是Sci-Hub?请听我一一道来。 什么是Sci-Hub Sci-Hub是一个线上 数据库 ,其上提供48,000,000篇科学学术论文和文章。网站透过“.edu”代理服务器访问相关页面,每天会上传新的论文文章。2011年,哈萨克研究生亚历珊卓·艾尔巴金(Alexandra  Elbakyan)因为研究论文成本过高,每篇论文在付费墙机制下通常需要花费30美元,而决定成立Sci-Hub。2014年,学术界开始预测网站将会发展为类似Napster的服务。不过到了2015年,学术出版社爱思唯尔向纽约地方法院提交诉讼,指控Sci-Hub已经侵犯版权。纽约地方法院在2015年10月28日仍下令Sci-Hub原本使用的网域名称“Sci-Hub.org”必须终止。爱思唯尔在法院上获得胜诉后,一群研究人员、作家和艺术家则连署一封表态支持Sci-Hub和创世纪图书馆的公开信,声称这次诉讼对于世界各地的研究人员是“重大打击”,并指出:“它同样贬低我们、作者、编辑和读者。它寄生于我们的劳动,它阻挠我们为大众服务,它阻拦我们进入。”而该计划于11月因法院命令中止后,在同一个月内便改用网域名称“.io”重新上线,并开放使用Tor浏览。2016年1月时,Sci-Hub平均每天约有200,000人访问,Sci-Hub则声称网站服务每天平均有数十万次档案请求。  Sci-Hub是目前已知第一个提供大量自动且免费的付费学术论文的网站,使用者不需要事前订阅或付款,就能够使用原本存放在付费数据库的论文文章,并提供搜寻原先出版社网站内的文件档案服务。 以上介绍来源于维基百科词条 Sci-Hub Sci-Hub网站被屡次下线,但是又通过更换域名重新上线。以下三个网址经测试可以使用:  http://www.sci-hub.bz/   http://www.sci-hub.ac/   http://www.sci-hub.cc/   广大学者将自己的文章发表至学术期刊(免费或者支付版面费),然而当需要查看其他学者的文章时还需要向出版商付费,你是不是也觉得这完全阻碍了科学文化的传播。艾尔巴金在为自己辩护时援引联合国《世界人权宣言》第二十七条所提的:“人人有权自由参加社会之文化生活,欣赏艺...

Fortran77到Fortran90的注意之处

1. Fortran 77是固定格式,每行前六个字符不写代码。Fortran 90是自由格式,每行前没有限制。 2. Fortran 77每行以C,c或*开始则为注释行。Fortran 90以!引导注释。 3. Fortran 77每行第6列若不是空格和0,则该行为上一行的续行。Fortran 90以&符号作为续行符,标识在上一行的末尾或者待续行的开始。 4. Fortran 77每行第7-72列为代码区。Fortran 90的前132列为代码区。 5. Fortran 77对应的文件扩展名为.for或.f。Fortran 90对应的文件扩展名为.f90。 6. Fortran 77的变量名或程序名最多为6个字符。Fortran 90的变量名或程序名最多为31个字符。 7. 字符串表示中Fortran 77用''表示,Fortran 90既可以用'',也可以用""。 8. 逻辑运算符表示不一样:        ==      /=       >     <     >=     <=         !Fortran 90用法       .EQ.    .NE.     .GT.  .LT.  .GE.   .LE.       !Fortran 77用法 已经有一些开源的程序可以将Fortran 77程序自动转换为Fortran 90,转换程度已相当好。 (1) https://bitbucket.org/lemonlab/f2f/      f2f is a Perl script which does much of the tedious work of converting Fortran 77 source code into Fortran 90/95 form. There seems ...