公司采集1688功能不能用,瞅了一眼,是阿里给禁掉了,暂时考虑方案为为服务器新建vpn
一. centos7
客户端为CentOS(一般Linux环境)时,(尤其是命令行里的命令)使用shadowsocks搭配Privoxy上网的方法。
安装客户端shadowsocks
其实shadowsocks安装时是不分客户端还是服务器端的,只不过安装后有两个脚本一个是sslocal代表以客户端模式工作,一个是ssserver代表以服务器端模式工作。
yum install epel-release -y
yum install python-pip
pip install --upgrade pip
pip install shadowsocks
依次执行上述两个命令,先安装Python的pip,然后安装shadowsocks。然后执行下述命令后台启动:
执行前请更改命令中的默认参数
nohup sslocal -s your_server_ip -p your_server_port -l 1080 -k your_server_passwd -t 600 -m rc4-md5 > /dev/null
注意
1,使用的是sslocal这个命令,表示shadowsocks以客户端模式工作
2,将上述命令里的your_server_ip,your_server_port,your_server_passwd换成自己的,这三个分别代表服务器ip,服务器上shadowsocks的端口以及密码.后面的rc4-md5加密方式也要换成跟server端一致。
3,前面的nohub表示后台执行,否则将会阻塞shell端口.
为了更方便,建议新建一个.json的文件,将上述信息放里面,如新建/etc/shadowsocks.json文件,内容为:
ps : 用的时候把注释删除
vi /etc/shadowsocks.json
配置如下:
{
"server":"your_server_ip",
#ss服务器IP
"server_port":your_server_port,
#端口
"local_address": "127.0.0.1",
#本地ip
"local_port":1080,
#本地端口
"password":"your_server_passwd",
#连接ss密码
"timeout":300,
#等待超时
"method":"rc4-md5",
#加密方式
"fast_open": false,
# true 或 false。如果你的服务器 Linux 内核在3.7+,可以开启 fast_open 以降低延迟。开启方法: echo 3 > /proc/sys/net/ipv4/tcp_fastopen 开启之后,将 fast_open 的配置设置为 true 即可
"workers": 1
# 工作线程数
}
然后运行
nohup sslocal -c /etc/shadowsocks.json /dev/null 2>&1 &
启动shadowsocks。
如果想增加开启自动启动,执行:
echo " nohup sslocal -c /etc/shadowsocks.json /dev/null 2>&1 &" /etc/rc.local 执行
ps aux |grep sslocal |grep -v "grep" 查看后台sslocal是否运行。
安装Privoxy
安好了shadowsocks后,但它是socks5代理,我门在shell里执行的命令,发起的网络请求现在还不支持socks5代理,只支持http/https代理。为了我门需要安装privoxy代理,它能把电脑上所有http请求转发给shadowsocks。
访问官网http://www.privoxy.org/获得Privoxy的最新源码:privoxy-3.0.24-stable-src.tar.gz,执行tar -zxvf privoxy-3.0.24-stable-src.tar.gz解压,然后cd privoxy-3.0.24-stable进去。
下载
wget http://www.silvester.org.uk/privoxy/source/3.0.26%20%28stable%29/privoxy-3.0.26-stable-src.tar.gz
解压
tar -vxf privoxy-3.0.26-stable-src.tar.gz
安装前需要执行useradd privoxy创建一个用户privoxy,然后依次执行如下三条命令:
autoheader && autoconf
./configure
make && make install
改之前备份配置文件
cp /etc/privoxy/config /etc/privoxy/config.bak
查看vim /etc/privoxy/config文件,
先搜索关键字:listen-address找到listen-address 127.0.0.1:8118这一句,保证这一句没有注释,8118就是将来http代理要输入的端口。
然后搜索forward-socks5t,将forward-socks5t / 127.0.0.1:1080 .此句的注释去掉.
执行如下命令启动privoxy,参考官网,不同的平台对应不同的方法:
systemctl start privoxy
配置/etc/profile
执行vim /etc/profile,添加如下三句:
export http_proxy=http://127.0.0.1:8118
export https_proxy=http://127.0.0.1:8118
export ftp_proxy=http://127.0.0.1:8118
第三句ftp的代理根据需要,不需要的话可以不添加.然后source /etc/profile,执行curl www.google.com或wget www.google.com判断是否成功访问。
或可以先执行:
curl ip.gs
显示为本地IP信息(例:当前 IP:222.xxx.xxx.xxx 来自:中国四川 电信) 直接执行:
export http_proxy=http://127.0.0.1:8118 再执行:
curl ip.gs 显示代理后的IP信息(例:当前 IP:138.xxx.xxx.xxx 来自:美国)
如果不能访问,请重启机器,依次打开shadowsocks和privoxy再测试.
nohup sslocal -c /etc/shadowsocks.json /dev/null 2>&1 &
systemctl start privoxy
二.ubuntu
配置全局代理
启动shawdowsocks服务后,发现并不能翻墙上网,这是因为shawdowsocks是socks 5代理,需要客户端配合才能翻墙。
为了让整个系统都走shawdowsocks通道,需要配置全局代理,可以通过polipo实现。
首先是安装polipo:
1
sudo apt-get install polipo
接着修改polipo的配置文件/etc/polipo/config:
logSyslog = true
logFile = /var/log/polipo/polipo.log
proxyAddress = "0.0.0.0"
socksParentProxy = "127.0.0.1:1080"
socksProxyType = socks5
chunkHighMark = 50331648
objectHighMark = 16384
serverMaxSlots = 64
serverSlots = 16
serverSlots1 = 32
重启polipo服务:
sudo /etc/init.d/polipo restart
为终端配置http代理:
export http_proxy="http://127.0.0.1:8123/"
接着测试下能否翻墙:
curl www.google.com
如果有响应,则全局代理配置成功。
注意事项
服务器重启后,下面两句需要重新执行:
sudo sslocal -c shawdowsocks.json -d start
export http_proxy="http://127.0.0.1:8123/"
Incredible! This blog looks exactly like my old one!
It's on a totally different topic but it has pretty much the same layout
and design. Outstanding choice of colors!