目前有很多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
截至目前,通过pip安装的shadowsocks版本为1.3.3
Shadowsocks的配置和使用
至于Shadowsocks可以拿来做什么,这里就毋须赘述了。直接开始吧。
1、 创建Shadowsocks的配置文件:
CentOS下通过vim创建该配置,运行命令:
vi /etc/config.json
内容如下:
{
"server":"my_server_ip",
"server_port":8989,
"local_port":1080,
"password":"teddysun.com",
"timeout":600,
"method":"aes-256-cfb"
}各字段的含义:
server 服务器 IP (IPv4/IPv6),注意这也将是服务端监听的 IP 地址
server_port 服务器端口
local_port 本地端端口
password 用来加密的密码
timeout 超时时间(秒)
method 加密方法,可选择 “bf-cfb”, “aes-256-cfb”, “des-cfb”, “rc4″, 等等。默认是一种不安全的加密,推荐用 “aes-256-cfb”
创建完毕后,赋予权限:
chmod 755 /etc/config.json
2、 安装M2Crypto
默认加密方法 table 速度很快,但很不安全。推荐使用 “aes-256-cfb” 或者 “bf-cfb”。请不要使用 “rc4″,它不安全。如果选择 “table” 之外的加密,需要安装 M2Crypto。
先安装依赖包:
yum install -y openssl-devel gcc swig python-devel autoconf libtool安装setuptools:
wget --no-check-certificate https://bitbucket.org/pypa/setuptools/raw/bootstrap/ez_setup.py
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/config.json
如果想在后台一直运行Shadowsocks,启动命令如下:
nohup ssserver -c /etc/config.json > /dev/null 2>&1 &备注:关于nohup,是可以让程序在后台运行的命令,当执行以上命令后,屏幕输出进程的pid,同时提示:
nohup: ignoring input and redirecting stderr to stdout
此时,再次回车一下,回到shell输入命令窗口即可。
同时可以用命令行参数覆盖 config.json 里的设置:
sslocal -s 服务器地址 -p 服务器端口 -l 本地端端口 -k 密码 -m 加密方法
ssserver -p 服务器端口 -k 密码 -m 加密方法
备注:sslocal是客户端程序;ssserver是服务端程序。
5、 防火墙设置(如有)
编辑防火墙配置文件/etc/sysconfig/iptables,将服务器端口(server_port)放行。
新增一条防火墙规则:
-A INPUT -m state --state NEW -m tcp -p tcp --dport 8989 -j ACCEPT重启防火墙iptables:
service iptables restart
至此,服务器端的Shadowsocks安装和配置完毕。
6、客户端配置
Windows客户端有图形界面也有命令行,我们这里以配置图形化界面的shadowsocks-csharp为例说明。
下载客户端shadowsocks-csharp(最新版1.1.2):
https://shadowsocks-csharp.googlecode.com/files/shadowsocks-csharp-1.1.2.zip
解压至任意目录下,双击shadowsocks-csharp.exe运行程序,各参数选项填入:
Server IP: 服务器 IP (IPv4/IPv6),填入在服务器端设置的IP地址(server)
Server Port: 服务器端口,填入在服务器端设置的端口号(server_port)
Password: 用来加密的密码,填入在服务器端设置的加密密码(password)
Proxy Port: 本地端代理的端口,填入在服务器端设置的本地端端口(local_port)
Encryptor: 加密方法,填入在服务器端设置的加密方法(method)
备注:本地客户端填写的参数一定要与服务器端设置的一致才可以。
下面就可以利用浏览器插件无障碍浏览国外网站了。插件的设置过程这里略过。
AutoProxy(用于Firefox)、Proxy SwitchySharp(用于Chrome)