CentOS环境下pip和shadowsocks的安装使用

  • A+
所属分类:技术文档

CentOS环境下pip和shadowsocks的安装使用

Pip是安装Python包的工具,提供了安装、列举已安装包、升级以及卸载包的功能。Pip 是对easy_install的取代,提供了和easy_install相同的查找包的功能,因此可以使用easy_install安装的包也同样可以使用pip进行安装。

目前有很多Python程序都是可以直接通过Pip来一键安装了,比如众所周知的Django、Markdown、Shadowsocks等。

简要介绍一下Pip的用法(以安装Shadowsocks举例):

1、安装package

pip install shadowsocks

2、列出已安装的packages

pip freeze

3、安装特定版本的package

pip install shadowsocks=1.3.3′

pip install shadowsocks>1.0,<1.3.3′

4、升级已安装的package到最新版本

pip install -U shadowsocks

5、卸载已安装的package

pip uninstall shadowsocks

6、查询已安装的package

pip search “shadowsocks”

安装Pip之前必须要先安装setuptools,安装setuptools之前,必须要安装了Python,这之间的安装过程存在依赖关系,缺一不可。因此,整个过程还是比较麻烦的。

1、 检查Python版本

python –version

CentOS6.5默认安装的Python版本是2.6.6,返回值为:Python 2.6.6

2、 安装setuptools

yum install -y python-setuptools

安装完毕后,easy_install命令就可以使用了。

3、 安装pip

easy_install pip

通过easy_install安装pip是最为简单的方法。pip默认安装到/usr/bin目录下。

4、 安装shadowsocks

pip install shadowsocks

Shadowsocks的配置和使用

至于Shadowsocks可以拿来做什么,这里就毋须赘述了。直接开始吧。

1、 创建Shadowsocks的配置文件:

CentOS下通过vim创建该配置,运行命令:

vi /etc/shadowsocks.json

内容如下:

  1. {
  2.     "server":"your_server_ip",
  3.     "server_port":8989,
  4.     "local_address""127.0.0.1",
  5.     "local_port":1080,
  6.     "password":"yourpassword",
  7.     "timeout":600,
  8.     "method":"aes-256-cfb",
  9.     "fast_open": false,
  10.     "workers"1
  11. }

各字段的含义:

server:服务器 IP (IPv4/IPv6),注意这也将是服务端监听的 IP 地址

server_port:监听的服务器端口

local_address:本地监听的 IP 地址

local_port:本地端端口

password:用来加密的密码

timeout:超时时间(秒)

method:加密方法,可选择 “bf-cfb”, “aes-256-cfb”, “des-cfb”, “rc4”, 等等。默认是一种不安全的加密,推荐用 “aes-256-cfb”

fast_open:true 或 false。如果你的服务器 Linux 内核在3.7+,可以开启 fast_open 以降低延迟。开启方法:

  1. echo 3 > /proc/sys/net/ipv4/tcp_fastopen

开启之后,将 fast_open 的配置设置为 true 即可。

works:works数量,默认为 1

2、 安装M2Crypto

默认加密方法 table 速度很快,但很不安全。推荐使用 “aes-256-cfb” 或者 “bf-cfb”。请不要使用 “rc4″,它不安全。如果选择 “table” 之外的加密,需要安装 M2Crypto。

先安装依赖包:

  1. yum install -y openssl-devel gcc swig python-devel autoconf libtool

安装setuptools:

  1. wget --no-check-certificate https://bitbucket.org/pypa/setuptools/raw/bootstrap/ez_setup.py
  2. python ez_setup.py install

再通过pip安装M2Crypto:

pip install M2Crypto

3、 安装 gevent

安装 gevent可以提高 Shadowsocks 的性能。CentOS下安装gevent依赖libevent和greenlet。

安装libevent:

yum install -y libevent

安装greenlet:

pip install greenlet

安装gevent:

pip install gevent

4、 命令行参数(服务器端启动命令)

ssserver -c /etc/shadowsocks.json

如果想在后台一直运行Shadowsocks,启动命令如下:

  1. nohup ssserver -c /etc/shadowsocks.json > /dev/null 2>&1 &

1

备注:关于nohup,是可以让程序在后台运行的命令。

同时可以用命令行参数覆盖 /etc/shadowsocks.json 里的设置:

sslocal -s 服务器地址 -p 服务器端口 -l 本地端端口 -k 密码 -m 加密方法

ssserver -p 服务器端口 -k 密码 -m 加密方法

备注:sslocal是客户端程序;ssserver是服务端程序。

5、 防火墙设置(如有)

编辑防火墙配置文件/etc/sysconfig/iptables,将服务器端口(server_port)放行。

新增一条防火墙规则:

  1. -A INPUT -m state --state NEW -m tcp -p tcp --dport 8989 -j ACCEPT

重启防火墙iptables:

service iptables restart

至此,服务器端的 Shadowsocks 安装和配置完毕。

6、客户端配置

Windows客户端有图形界面也有命令行,我们这里以配置图形化界面的shadowsocks-csharp为例说明。

下载客户端:shadowsocks

解压至任意目录下,双击shadowsocks-csharp.exe运行程序,各参数选项填入:

CentOS环境下pip和shadowsocks的安装使用

Server IP:   服务器 IP (IPv4/IPv6),填入在服务器端设置的IP地址(server)

Server Port: 服务器端口,填入在服务器端设置的端口号(server_port)

Password:    用来加密的密码,填入在服务器端设置的加密密码(password)

Proxy Port:  本地端代理的端口,填入在服务器端设置的本地端端口(local_port)

Encryptor:   加密方法,填入在服务器端设置的加密方法(method)

注意:本地客户端填写的参数一定要与服务器端设置的一致才可以。

下面就可以利用浏览器插件无障碍浏览国外网站了。插件的设置过程这里略过。

AutoProxy(用于Firefox)、Proxy SwitchySharp(用于Chrome)