Linux Centos7下安装使用Shadowsocks客户端,实现科学上网

准备

  • SS: 搭建一个可以连接外网的服务器 教程可见 自己动手搭梯子
  • 服务器:本人用的腾讯云服务器,系统为Centos7

开始

安装epel源、安装pip包管理、安装Shadowsocks客户端

 sudo yum install epel-release
sudo yum install python-pip
sudo pip install shadowsocks

若执行sudo pip install shadowsocks提示:
You are using pip version 8.1.2, however version 18.1 is available.
You should consider upgrading via the ‘pip install --upgrade pip’ command.
请执行 pip install --upgrade pip

配置Shadowsocks客户端

新建客户端配置文件

 sudo mkdir /etc/shadowsocks
sudo vi /etc/shadowsocks/shadowsocks.json

配置信息如下

{
"server": "x.x.x.x",
"server_port": 1035,
"local_address": "127.0.0.1",
"local_port": 1080,
"password": "password",
"timeout": 300,
"method": "aes-256-cfb",
"fast_open": false,
"workers": 1
}
[server]     提供ss服务的服务器的ip地址
[server_port]   提供ss服务的服务器的端口号
[local_address]  本地地址
[local_host]   本地监听端口
[password]    ss连接密码
[method]    加密方式

配置开机自启动

新建/etc/systemd/system/shadowsocks.service文件命令如下:

sudo vim /etc/systemd/system/shadowsocks.service

文件内容如下

[Unit]
Description=Shadowsocks
[Service]
TimeoutStartSec=
ExecStart=/usr/bin/sslocal -c /etc/shadowsocks/shadowsocks.json
[Install]
WantedBy=multi-user.target

文件创建完成后,依次执行如下命令:

systemctl enable shadowsocks.service
systemctl start shadowsocks.service
systemctl status shadowsocks.service

检查Shadowsocks是否正常运行

curl --socks5 127.0.0.1: http://httpbin.org/ip

客户端运行正常则展示结果为:
{
“origin”: “x.x.x.x” #ss服务器IP
}

privoxy
安装privoxy

yum install privoxy -y
systemctl enable privoxy
systemctl start privoxy
systemctl status privoxy

配置privoxy

sudo vim /etc/privoxy/config

listen-address 127.0.0.1:   #  是默认端口,不用改
forward-socks5t / 127.0.0.1: . #转发到本地端口,注意最后有个点 设置http、https请求代理
sudo vim /etc/profile 修改环境变量 PROXY_HOST=127.0.0.1
export all_proxy=http://$PROXY_HOST:8118
export ftp_proxy=http://$PROXY_HOST:8118
export http_proxy=http://$PROXY_HOST:8118
export https_proxy=http://$PROXY_HOST:8118
export no_proxy=localhost,172.16.0.0/,192.168.0.0/.,127.0.0.1,10.10.0.0/
source /etc/profile 使更新的环境变量生效

测试代理是否生效
curl -I www.google.com 返回如下结果,代理配置成功 HTTP/1.1 OK
Date: Thu, Jan :: GMT
Expires: -
Cache-Control: private, max-age=
Content-Type: text/html; charset=ISO--
P3P: CP=“This is not a P3P policy! See g.co/p3phelp for more info.”
Server: gws
X-XSS-Protection: ; mode=block
X-Frame-Options: SAMEORIGIN
Set-Cookie: 1P_JAR=---; expires=Sat, -Feb- :: GMT; path=/; domain=.google.com
Set-Cookie: NID==NxAhlbgz2a6wLNsxGp7leyPoUWSwbbVLu-K-8sbIqgVX27XWn6VTlo-pkU51crX_Fkhmcj_s4effQfanY8CoV_kLFbg_-iSU646OMrUE91S-KDo2kh31JOpFR2Du353eF-8LngCij1JN4LXfv9pWVMSVpzOhU_aUB6vu1n_rEoY; expires=Fri, -Jul- :: GMT; path=/; domain=.google.com; HttpOnly
Transfer-Encoding: chunked
Accept-Ranges: none
Vary: Accept-Encoding
Proxy-Connection: keep-alive

linux 使用sh@d0ws0cks client的更多相关文章

  1. linux 使用sh@d0ws0cks server

    [root@linux-node1 ~]# cat /etc/shadowsocks.json { "server":"x.x.x.x", , "lo ...

  2. linux执行sh脚本文件命令

    linux执行sh脚本文件命令 很多时候需要多个命令来完成一项工作,而这个工作又常常是重复的,这个时候我们自然会想到将这些命令写成sh脚本,下次执行下这个脚本一切就都搞定了,下面就是发布代码的一个脚本 ...

  3. 在linux下sh批处理文件调用java的方法

    解密 java -classpath collection-impl-0.0.1.jar com.ai.toptea.collection.message.DESEncrypt 1EFE4663895 ...

  4. Linux执行.sh文件,提示No such file or directory的问题的解决方法

    亲测有效:http://www.jb51.net/LINUXjishu/56395.html Linux执行.sh文件,提示No such file or directory的问题的解决方法 在win ...

  5. 【SHELL】Linux下安装Oracle Client

    一.新建Oracle脚本存储目录并上传文件 [root@A04-Test-172]# mkdir -p /tmp/instance_oracle #新建存储目录 [root@A04-Test-172 ...

  6. 在Linux中安装SEP Client

    1. 下载Symantec_Endpoint_Protection_12.1.5_Linux_Client_EN, 解压其中的sep-deb.zip   2. 若直接sudo ./install.sh ...

  7. Linux 下配置 SoftEther Client

    我经常使用的代理有 SSH, GoAgent, FreeGate, VPN, HttpProxy 等等,不过 SoftEther 应该是我用过的最快.最稳定的 VPN 协议. Windows 下配置 ...

  8. Linux 系统设置sh文件开机自启动

    工作中有一个linux下的服务需要启动,但是机器总是断电,导致需要反复启动,找了一下开机自启动的方法,解决了这个问题.Linux设置开机自启动非常简单,只要找到rc.local文件,将你需要自启动的文 ...

  9. linux编写.sh脚本并赋权限

    今日打包编译项目时,发现缺少一个git pull更新项目的脚本,所以在linux编写了一个gitpull.sh脚本,能够实现更新项目的需求. 1.首先vi  gitpull.sh或者使用vim编辑器. ...

随机推荐

  1. 【Git】Git提交代码的正确姿势

    按此步骤基本没问题,中间有conflict,需要手动解决. 1.git stash 2.git pull 3.git stash pop 4.git add --xxx 5.git commit -m ...

  2. JSONP方法简单封装

    function myJsonp(url, data, callback) { //参数判断 if (Object.prototype.toString.call(data) == "[ob ...

  3. ORACLE安装报错解决

    今天在虚拟机中安装了一个WINDOWS系统,用于安装oracle服务器:从安装到使用中出现了很多的问题,把这些问题解决掉,花了不少时间,查了不少的资料. 第一个,我在安装过程中,出现了ORA-0092 ...

  4. asp.net core 自定义中间件

    官方文档:https://docs.microsoft.com/zh-cn/aspnet/core/fundamentals/middleware/?view=aspnetcore-2.1 中间件的定 ...

  5. 关于8.0.15版本的mysql下载与安装

    下载MYSQL 官网下载MYSQL8.0.15版本,链接地址https://www.mysql.com/downloads/,流程如下 点击进入后,网页滑到最下面,根据自己电脑的型号下载相应的版本 安 ...

  6. Selenium Webdriver点击事件失效问题

    最近在用selenium webdriver时,遇到一个棘手的问题,点击事件有时候会失效,具体原因我也不知道是什么. 但是有两个解决办法,第一,在点击该标签前,先点击它的父标签,也就是点击两次. dr ...

  7. 我们为什么不用 Select * 吗?

    应用程序慢如牛,原因多多,可能是网络的原因.可能是系统架构的原因,还有可能是数据库的原因. 那么如何提高数据库SQL语句执行速度呢?有人会说性能调优是数据库管理员(DBA)的事,然而性能调优跟程序员们 ...

  8. 音频相关基本概念,音频处理及编解码基本框架和原理以及音、重采样、3A等音频处理(了解概念为主)

    视频笔记:音频专业级分析软件(Cooledit) 音质定义以语音带宽来区分,采样率越高,带宽越大,则保真度越高,音质越好.窄带(8khz采样),宽带(16khz采样),CD音质(44.1khz采样) ...

  9. Mac下使用数据库将Excel数据转换存入.plist

    记录于2013/10/26   基本步骤: 1.将Excel表格另存为.csv格式 2.用类似TextWrangler工具将.csv文件转成UTF-8格式 3.使用火狐插件SQLite Manager ...

  10. scrapy + selenium 的动态爬虫

    动态爬虫 在通过scrapy框架进行某些网站数据爬取的时候,往往会碰到页面动态数据加载的情况发生,如果直接使用scrapy对其url发请求,是绝对获取不到那部分动态加载出来的数据值.但是通过观察我们会 ...