文档章节

烂泥:aws搭建shadowsocks服务器

烂泥行天下
 烂泥行天下
发布于 2015/08/08 11:50
字数 1296
阅读 17902
收藏 12

本文由秀依林枫提供友情赞助,首发于烂泥行天下

前段时间一直在忙openvpn的事情,现在手头有台aws服务器,打算利用起来。

如何利用呢?利用这台服务器进行科学上网,实际需求如下。

一、实际需求

在国内搜索技术文章,如果使用baidu的话,你懂的。因此就转向google,但是由于众所周知的原因,我们无法访问google。

刚好现在有一台aws的服务器,就想弄个shadowsocks服务器进行科学上网。

为什么使用shadowsocks进行科学上网呢?

shadowsocks有如下特点:

快速(异步I/O和事件驱动程序)

安全(所有的流量都经过加密算法加密,支持自定义算法)

支持移动客户端(专为移动设备和无线网络优化)

跨平台(可运行于包括PC,Mac,手机(Android和iOS)和路由器(OpenWrt)在内的多种平台上)

开源、易于维护

二、安装shadowsocks

aws服务器,我使用的是亚马逊的自己的系统Amazon Linux AMI,如下:

cat /etc/system-release

clip_image001

仔细对比了下,其实这个系统就是centos系统,不过应该是经过定制的。

有关shadowsocks的安装,我们可以通过以下网址进行查看,如下:https://github.com/shadowsocks/shadowsocks

centos下安装命令如下:

yum install -y python-setuptools

easy_install pip

pip install shadowsocks

如果是ubuntu系统,安装命令如下:

sudo apt-get -y install python-gevent python-pip

sudo pip install shadowsocks

sudo apt-get -y install python-m2crypto

三、配置shadowsocks

无论是centos系统还是ubuntu系统,shadowsocks配置都是一样的。

shadowsocks安装完毕后,可以查看使用ssserver命令进行查看。如下:

ssserver -h

clip_image002

如果没有ssserver命令的话,一般是在/usr/local/bin目录下,如下:

which ssserver

clip_image003

我们只需要把/usr/local/bin加入到/etc/profile文件中即可。

创建shadowsocks目录,并创建其配置文件,如下:

mkdir /etc/shadowsocks

vim /etc/shadowsocks/config.json

{

"server":"0.0.0.0",

"server_port":1194,

"local_address":"127.0.0.1",

"local_port":1080,

"password":"asto!@#123456",

"timeout":300,

"method":"aes-256-cfb",

"fast_open":false,

"workers": 1

}

clip_image004

shadowsocks配置文件的内容,我就不做过多的介绍了,很简单的。

配置文件弄好后,我们现在来启动shadowsocks,如下:

ssserver -c /etc/shadowsocks/config.json -d start

netstat -tunlp

clip_image005

如果要停止shadowsocks服务的话,我们可以使用如下命令:

ssserver -c /etc/shadowsocks/config.json -d stop

clip_image006

四、连接shadowsocks服务

shadowsocks服务器搭建完毕后,我们现在来客户端连接shadowsocks服务器。

shadowsocks客户端有Windows版本和Linux版本,我们分别介绍其使用方法。

4.1 Windows版本

windows版本,我们可以从如下网址进行下载,如下:

https://github.com/shadowsocks/shadowsocks-windows/releases

下载完毕后,双击Shadowsocks.exe,如下:

clip_image007

在弹出的窗口中,填入Shadowsocks服务器的IP、Shadowsocks服务器端口已经密码,就可以连接Shadowsocks服务器,如下:

clip_image008

正确连接Shadowsocks服务器后,我们就可以进行科学上网了。

如下:

clip_image009

当然我们也可以设置为全局代理,如下:

clip_image010

clip_image011

通过上图,我们可以看到目前我们的IP地址就是aws服务器所在的地址了。

我们也可以把这个代理让局域网中的其他用户使用,如下:

clip_image012

经过这样设置后,只要局域网中的机器连接我这台机器的1080端口,就可以使用代理了。

4.2 Linux版本

linux版本的shadowsocks客户端,我们一般选用cow这款软件。下载地址如下:

https://github.com/cyfdecyf/cow

安装就比较简单了,执行如下命令即可:

curl -L git.io/cow | bash

安装完毕后,我们来修改.cow/rc文件,如下:

grep -vE "^#|^$" .cow/rc

clip_image013

这样的话,局域网的其他机器只要连接该机器的7778端口就可以进行科学上网了。

其实,我们还有一个类似这个软件MEOW,地址如下:

https://github.com/renzhn/MEOW

使用方法和cow一样,再次就不做讲解。

4.3 Linux设置全局代理

我们再来讲解一个在linux环境使用全局代理的方案,因为有时候我们的软件更新需要使用到国外的站点,但是众所周知的原因,不能更新。那么我们就只能通过VPN或者其他方式进行更新软件了,这样比较麻烦。

今天介绍一个比较方便的方法,就是把所有本机的请求都通过代理走。配置如下:

vim /etc/profile

http_proxy=192.168.1.180:1080

export http_proxy

https_proxy=192.168.1.180:1080

export https_proxy

ftp_proxy=192.168.1.180:1080

export ftp_proxy

以上几行命令的意思是:无论是http、https、ftp请求,我们都让它通过192.168.1.180:1080的通过,而192.168.1.180:1080就是我们局域网的代理服务器的地址。

clip_image014

source /etc/profile

clip_image015

然后我们在使用curl cip.cc进行测试如下:

curl cip.cc

clip_image016

通过上图,我们可以很清楚的看到目前这台linux服务器已经使用的是shadowsocks服务器地址。

如果是代理服务器需要用户名和密码的话,可以使用如下格式:export http_proxy=http://username:password@ip:port

这样就达到了我们对linux使用全局代理的功能。

© 著作权归作者所有

共有 人打赏支持
烂泥行天下
粉丝 30
博文 78
码字总数 152729
作品 0
杭州
运维
私信 提问
aws搭建shadowsocks服务器

前段时间一直在忙open***的事情,现在手头有台aws服务器,打算利用起来。 如何利用呢?利用这台服务器进行科学上网,实际需求如下。 一、实际需求 在国内搜索技术文章,如果使用baidu的话,你...

wenhuifu
2018/06/27
0
0
亚马逊AWS EC2搭建shadowsocks服务

亚马逊AWS EC2搭建shadowsocks服务 注册aws账号,绑定信用卡,一般用双币卡,普通信用卡也可以,但是绑定提交后,会产生预授权费用,1美金左右 创建并启动实例,选择免费的实例,由于本人选择...

jackmanwu
2018/07/26
0
0
Ubuntu一键安装Shadowsocks脚本

基于科学上网:VPS上搭建shadowsocks写了一个一键安装shadowsocks的shell脚本。只在Vultr上的Ubunbu 16.04做了测试。内容包括安装shadowsocks+设置shadowsocks开机启动+开启BBR加速。 原文链...

flyzy2005
2018/01/31
0
0
新手向一键脚本搭建SS/SSR服务并开启BBR加速

自己写的一键搭建shadowsocks/shadowsocksR的脚本,一键脚本适用Vultr上的和搬瓦工所有机型(CentOS、Ubuntu、Debian),搭建ss服务器支持所有客户端类型,本机你是iOS,Android,Windows,M...

flyzy2005
2018/06/10
0
2
轻松搭建翻墙神器Shadowsocks

导语: 世界上有些东西,你可以看不到,也摸不着,但不能否定其存在。当想你想下载苹果的一个操作系统时,当你想看一篇关于叙利亚的文章时,当你想用google搜索“温”时候,你发现你打不开网...

先生我不会
2018/05/12
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Linux iptables之mangle表使用案例

mangle表的用途 mangle表的主要功能是根据规则修改数据包的一些标志位,以便其他规则或程序可以利用这种标志对数据包进行过滤或策略路由。 mangel表使用示例 示例1-策略路由1 内网的客户机通...

月下狼
53分钟前
3
0
OSChina 周日乱弹 —— 兼职我想去学学布偶戏

Osc乱弹歌单(2019)请戳(这里) 【今日歌曲】 @clouddyy : 《火炎 - 女王蜂》 《火炎 - 女王蜂》 手机党少年们想听歌,请使劲儿戳(这里) @小鱼丁 :还在睡觉突然接到一个小哥哥电话“x...

小小编辑
今天
69
5
租房软件隐私保护如同虚设

近日,苏州市民赵先生向江苏新闻广播新闻热线025-84658888反映,他在“安居客”手机应用软件上浏览二手房信息,并且使用该软件自动生成的虚拟号码向当地一家中介公司进行咨询。可电话刚挂不久...

linux-tao
今天
3
0
分布式项目(五)iot-pgsql

书接上回,在Mapping server中,我们已经把数据都整理好了,现在利用postgresql存储历史数据。 iot-pgsql 构建iot-pgsql模块,这里我们写数据库为了性能考虑不在使用mybatis,换成spring jd...

lelinked
今天
6
0
一文分析java基础面试题中易出错考点

前言 这篇文章主要针对的是笔试题中出现的通过查看代码执行结果选择正确答案题材。 正式进入题目内容: 1、(单选题)下面代码的输出结果是什么? public class Base { private Strin...

一看就喷亏的小猿
今天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部