centos终端ssr配置

  1. 安装
  2. 配置节点
  3. 启动\关闭客户端
  4. 配置临时变量
  5. 验证
  6. 配置转发
  • 配置privoxy
  • pac模式代理
  • 安装

    git clone http://git.mrwang.pw/Reed/Linux_ssr_script.git
    cd Linux_ssr_script && chmod +x ./ssr
    ./ssr install

    配置节点

    ./ssr config

    这里就开始需要配置ssr的节点

    {
    "server": "",
    "server_ipv6": "::",
    "server_port": 999,
    "local_address": "127.0.0.1",
    "local_port": 1080,

    "password": "",
    "method": "",
    "protocol": "",
    "protocol_param": "",
    "obfs": "",
    "obfs_param": "",
    "speed_limit_per_con": 0,
    "speed_limit_per_user": 0,

    "additional_ports" : {}, // only works under multi-user mode
    "additional_ports_only" : false, // only works under multi-user mode
    "timeout": 120,
    "udp_timeout": 60,
    "dns_ipv6": false,
    "connect_verbose_info": 0,
    "redirect": "",
    "fast_open": false
    }

    配置注释:

    server: ssr服务器地址
    server_port: 端口号
    local_address: 本地路径127.0.0.1或者localhost
    local_port: 本地端口号
    password: 密码
    method: 加密方式,如果没有使用则填入none
    后面的配置则根据ssr的配置填入即可

    启动\关闭客户端

    # 启动
    ./ssr start
    # 关闭
    ./ssr stop

    如果没有任何异常则表示启动成功

    配置临时变量

    根据自己设置的本地路径和本地端口号来配置下面的字段。

    export http_proxy="socks5://127.0.0.1:1080"
    export https_proxy="socks5://127.0.0.1:1080"
    # 或者
    export ALL_PROXY=socks5://127.0.0.1:1080

    验证

    curl cip.cc

    回车后可以看到当前电脑的配置是否与ssr相同。
    但是Shadowsocks属于socks5协议,默认不对http协议的请求进行代理比如在以上配置完成后执行如下命令是访问不了Google的。

    curl www.google.com

    配置转发

    借助privoxy把socks5转为HTTP协议即可。

    # 全局环境变量/etc/profile
    # 用户环境变量~/.bash_profile或者~/.bashrc
    # ======================
    # 选择以上一个环境变量配置文件进行编辑(比如选择~/.bashrc)
    # 如果是zsh则选择~/.zshrc
    $ vim ~/.bashrc

    添加如下环境变量,注意这里的端口号为8118:
    proxy="http://127.0.0.1:8118"
    export https_proxy=$proxy
    export http_proxy=$proxy
    export ftp_proxy=$proxy

    加载环境
    source ~/.bashrc

    配置privoxy

    yum install privoxy -y
    vim /etc/privoxy/config

    找到listen-address,修改为listen-address 127.0.0.1:8118
    找到forward-socks5并且被注释的一行,修改为forward-socks5 / 127.0.0.1:1080 .

    完成后开启服务:

    #启动
    systemctl start privoxy
    #关闭
    systemctl stop privoxy
    #开机启动
    systemctl enable privoxy
    #查看状态
    systemctl status privoxy

    测试访问外网:

    # 访问需要代理才能访问的google
    $ curl www.google.com
    # 访问搜狐的这个接口能够返回你的IP地址
    $ curl "http://pv.sohu.com/cityjson?ie=utf-8"

    pac模式代理

    该模式提供pac规则文件来指定http走代理,这样可以只需要对pac文件维护就可以管理http代理。

    这里需要使用pip下载而不能使用pip3,由于代码很老,只支持python2.x。

    pip install --user gfwlist2privoxy

    获取pac文件

    cd /tmp
    wget https://raw.githubusercontent.com/gfwlist/gfwlist/master/gfwlist.txt
    gfwlist2privoxy -i gfwlist.txt -f gfwlist.action -p 127.0.0.1:1080 -t socks5
    cp gfwlist.action /etc/privoxy/

    其中gfwlist.action就是privoxy的pac文件,可以进入看一下文件的内容,如果需要的话,可以删除关于github.xxxx的(可能是我的代理问题)。

    修改privoxy的配置文件

    vim /etc/privoxy/config

    # 注释掉这行,防止pac失效,而全部走代理了
    # forward-socks5 / 127.0.0.1:1080 .
    # 添加激活pac文件
    actionsfile gfwlist.action

    最后重启即可

    service privoxy restart