使用Shadowsocks搭建VPN服务器

一、购买服务器

香港的、韩国的,日本的,美国的都行。

二、shadowsocks安装

shadowsocks目前是github上最火的开源,安装和使用都非常简单。

1、安装

Debian/Ubuntu:

apt-get install python-pip
pip install shadowsocks

CentOS:

yum install python-setuptools && easy_install pip
pip install shadowsocks

注意: CentOS 8.0以后版本安装出问题,选择7.*版本。安装完成后,如果报错:

Traceback (most recent call last):
  File "/usr/bin/pip", line 9, in <module>
    load_entry_point('pip==21.1.3', 'console_scripts', 'pip')()
  File "/usr/lib/python2.7/site-packages/pkg_resources.py", line 378, in load_entry_point
    return get_distribution(dist).load_entry_point(group, name)
  File "/usr/lib/python2.7/site-packages/pkg_resources.py", line 2566, in load_entry_point
    return ep.load()
  File "/usr/lib/python2.7/site-packages/pkg_resources.py", line 2260, in load
    entry = __import__(self.module_name, globals(),globals(), ['__name__'])
  File "/usr/lib/python2.7/site-packages/pip-21.1.3-py2.7.egg/pip/__init__.py", line 1, in <module>
    from typing import List, Optional
ImportError: No module named typing
[root@iZrj96faggyg6bdtbb8okvZ ~]# pip -v
Traceback (most recent call last):
  File "/usr/bin/pip", line 9, in <module>
    load_entry_point('pip==21.1.3', 'console_scripts', 'pip')()
  File "/usr/lib/python2.7/site-packages/pkg_resources.py", line 378, in load_entry_point
    return get_distribution(dist).load_entry_point(group, name)
  File "/usr/lib/python2.7/site-packages/pkg_resources.py", line 2566, in load_entry_point
    return ep.load()
  File "/usr/lib/python2.7/site-packages/pkg_resources.py", line 2260, in load
    entry = __import__(self.module_name, globals(),globals(), ['__name__'])
  File "/usr/lib/python2.7/site-packages/pip-21.1.3-py2.7.egg/pip/__init__.py", line 1, in <module>
    from typing import List, Optional
ImportError: No module named typing

原因是pip21和python2.7不配套,报错里面的typing库是python3.5才出现的,python2.7版本没有这个库。
我需要使用ros,那么只能使用python2.7,不能更新版本,那只能用旧版本的pip去覆盖现在的pip21,但是现在输入任何以pip开头的命令都会报错,所以只能使用get-pip.py来实现回退版本,参考链接:Installing pip is not working in python < 3.6、

解决方法,执行下面命令:

curl -O https://bootstrap.pypa.io/pip/2.7/get-pip.py
python get-pip.py
python -m pip install --upgrade "pip < 21.0"

2、编辑配置文件

vim /etc/shadowsocks.json
{
    "server":"0.0.0.0",
    "server_port":8388,
    "local_address": "127.0.0.1",
    "local_port":1080,
    "password":"webyang.net",
    "timeout":300,
    "method":"aes-256-cfb",
    "fast_open": false
}

多个账号:

{  
    "server":"0.0.0.0",  
    "port_password":{  
        "8381":"webyang.net",  
        "8382":"webyang.net",  
        "8383":"webyang.net",  
        "8384":"webyang.net" 
    },  
    "timeout":300,  
    "method":"aes-256-cfb",  
    "fast_open": false  
}

3、参数说明

字段说明
serverss服务监听地址,0.0.0.0允许所有人访问,如果只是自己用,可以改成自己使用端的ip
server_portss服务监听端口
local_address本地的监听地址
local_port本地的监听端口
password密码
timeout超时时间,单位秒
method加密方法,默认是aes-256-cfb
fast_open使用TCP_FASTOPEN, true / false
workersworkers数,只支持Unix/Linux系统

4、启动和停止

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

5、写日志方式启动

ssserver -c /etc/shadowsocks.json --log-file /opt/ss.log -d start

三、客户端使用

如果用的window,所以选择window的shadowsocks客户端,下载地址:https://github.com/shadowsocks/shadowsocks-windows/releases

注意:.NET Framework 是不是 4.6.2 以上版本

使用Shadowsocks搭建VPN服务器插图

四、浏览器设置代理

google需要设置个代理,安装 Proxy SwitchyOmega 插件。

使用Shadowsocks搭建VPN服务器插图2

发表评论