2017年7月19日星期三

Linux 命令行下使用 Shadowsocks 代理 [实践版]

0x01 背景
     需要将树莓派配置为shadowsocks代理客户端,然后开放允许本地局域网的其他机器通过树莓派去连接世界网络。本文主要涉及内容,如何再linux系统下,使用shadowsocks的命令行客户端,以及命令行客户端工具(ss-local)的使用,搭配privoxy,让linux再命令下配置的ss客户端,可以达到和windows  ss小飞机客户端一样的功能。

0x02  客户端配置
      详细配置见,最底部的参考链接

0x03 注意问题

测试环境
系统:debian 8.7 jessie
privoxy版本: version 3.0.21

下面参考链接有一个问题:
privoxy 配置,如果跟着博客的内容去配置如下

# 转发地址
forward-socks5   /               127.0.0.1:1080 .
# 监听地址
listen-address  localhost:8118
# local network do not use proxy
forward         192.168.*.*/     .
forward            10.*.*.*/     .
forward           127.*.*.*/     .

只会监听tcp ipv6 8118端口

Ntopng:/etc/shadowsocks# netstat -ntlp | grep privoxy
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name  
tcp6       0      0 ::1:8118                :::*                    LISTEN      11896/privoxy   
 

将监听地址这段改一下:

# 监听地址
listen-address  127.0.0.1:8118
# 如果是允许局域网连接,就用*代替
listen-address  *:8118

则监听tcp 8118端口

Ntopng:~# netstat -ntlp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 127.0.0.1:8118          0.0.0.0:*               LISTEN      12053/privoxy   

之后就可以正常使用了

创建一个脚本文件名为 proxy
vim /usr/local/bin/proxy

脚本内容如下
#!/bin/bash
http_proxy=http://127.0.0.1:8118 https_proxy=http://127.0.0.1:8118 $*

给脚本加执行权限
chmod +x /usr/local/bin/proxy

对任何想要走代理的命令,只需要在前面加上 proxy 即可,样例如下
proxy gvm install go1.6.3
参考链接:
         Linux 命令行下使用 Shadowsocks 代理

没有评论:

发表评论