Discuz! Board

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
123
返回列表 发新帖
楼主: java
打印 上一主题 下一主题

ss(Shadowsocks) 翻墙

[复制链接]

165

主题

269

帖子

957

积分

认证用户组

Rank: 5Rank: 5

积分
957
8#
发表于 2017-9-8 11:57:39 | 只看该作者

centOS 6.5关闭防火墙步骤

关闭命令:  service iptables stop
        永久关闭防火墙:chkconfig iptables off

两个命令同时运行,运行完成后查看防火墙关闭状态
        service iptables status





回复 支持 反对

使用道具 举报

165

主题

269

帖子

957

积分

认证用户组

Rank: 5Rank: 5

积分
957
7#
发表于 2017-9-8 11:22:40 | 只看该作者
本帖最后由 firemail 于 2017-9-8 15:53 编辑

shadowsocks时ssserver 命令无法找到?
shadowsocks重安装了一次:
pip install shadowsocks
问题就解决了。




Permission denied: '/var/run/shadowsocks.pid'

切换到root账号可以运行,但是管理员账号的时候就出现上面的错误
-d start 这个参数是让程序以后台服务的形式运行, 这个参数让这条命令需要root权限.
一个管理员账户在执行命令的时候默认是不带root权限的. 如果管理员想要执行一条需要root权限的命令, 可以在这条命令的前面加上sudo. 你试试这个:
sudo /usr/local/bin/ssserver -c ~/ss/ssserver.json -d start
备注:若无配置文件,在后台可以使用一下命令运行:
[root@localhost /]# ssserver -p 8388 -k MyPass -m rc4-md5 -d start

查看端口被哪个程序占用
sudo netstat -tunlp|grep 8388

停止服务
sudo /usr/local/bin/ssserver -c ~/ss/ssserver.json -d stop


回复 支持 反对

使用道具 举报

165

主题

269

帖子

957

积分

认证用户组

Rank: 5Rank: 5

积分
957
6#
发表于 2017-9-8 11:00:26 | 只看该作者
本帖最后由 firemail 于 2017-9-8 17:20 编辑

4. 配置 Shadowsocks 配置文件
建议把 SS 的配置文件放置在当前用户主目录下的 ss 文件夹内,对于 root 用户而言,则是:/root/ss 目录。其余用户一般则是:/home/用户名 目录。
下面我们以 root 用户为例:
  • 在 root 文件夹内,新建 ss/ssserver.json 配置文件:vim ~/ss/ssserver.json
  • 编辑配置文件,依然是按 i 进入编辑,按 ESC 退出编辑,按 :wq 保存并退出:

{
    "server": "0.0.0.0",
    "server_port": 8388,
    "password": "mypassword",
    "timeout": 300,
    "method": "aes-256-cfb"
}


5. 启动并永久运行 Shadowsocks 服务端功能
  • 一句命令即可启动并永久运行:sudo nohup /usr/local/bin/ssserver -c ~/ss/ssserver.json -d start &
    说明: ssserver 是 SS 的服务端命令。-c 表示以配置文件的方式运行 SS,/root/ss/ssserver.json 则是步骤 4 中新建的配置文件的路径。-d 表示在后台运行,这样允许用户进行其他操作。start 就是启动。nohup 以及最后的 & 是让 SS 服务端一直运行,并把运行日志输出到当前用户主目录下的 nohup.out 文件中。
  • 停止 SS 服务端:sudo /usr/local/bin/ssserver -c ~/ss/ssserver.json -d stop
    说明: 无需 nohup 和 &,把 start 换成 stop



回复 支持 反对

使用道具 举报

165

主题

269

帖子

957

积分

认证用户组

Rank: 5Rank: 5

积分
957
5#
发表于 2017-9-8 10:19:32 | 只看该作者
1. SSH 登录到位于墙外的服务器

SSH 使用方法参照之前的博文《在阿里云 CentOS 7 系统上部署 Ghost 博客》中的步骤 1。

2. 安装 Shadowsocks

说明:以下命令均在最高权限用户 root 下运行。
Debian / Ubuntu 用户运行:

apt-get install python-pip
pip install shadowsocks
CentOS 用户运行:

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

3. 优化 Shadowsocks 性能

按照 SS 官方 Wiki,有如下优化策略:

创建 local.conf 配置文件:vim /etc/sysctl.d/local.conf

按键盘 i,输入以下内容:
  1. # max open files
  2. fs.file-max = 51200
  3. # max read buffer
  4. net.core.rmem_max = 67108864
  5. # max write buffer
  6. net.core.wmem_max = 67108864
  7. # default read buffer
  8. net.core.rmem_default = 65536
  9. # default write buffer
  10. net.core.wmem_default = 65536
  11. # max processor input queue
  12. net.core.netdev_max_backlog = 4096
  13. # max backlog
  14. net.core.somaxconn = 4096

  15. # resist SYN flood attacks
  16. net.ipv4.tcp_syncookies = 1
  17. # reuse timewait sockets when safe
  18. net.ipv4.tcp_tw_reuse = 1
  19. # turn off fast timewait sockets recycling
  20. net.ipv4.tcp_tw_recycle = 0
  21. # short FIN timeout
  22. net.ipv4.tcp_fin_timeout = 30
  23. # short keepalive time
  24. net.ipv4.tcp_keepalive_time = 1200
  25. # outbound port range
  26. net.ipv4.ip_local_port_range = 10000 65000
  27. # max SYN backlog
  28. net.ipv4.tcp_max_syn_backlog = 4096
  29. # max timewait sockets held by system simultaneously
  30. net.ipv4.tcp_max_tw_buckets = 5000
  31. # turn on TCP Fast Open on both client and server side
  32. net.ipv4.tcp_fastopen = 3
  33. # TCP receive buffer
  34. net.ipv4.tcp_rmem = 4096 87380 67108864
  35. # TCP write buffer
  36. net.ipv4.tcp_wmem = 4096 65536 67108864
  37. # turn on path MTU discovery
  38. net.ipv4.tcp_mtu_probing = 1

  39. # for high-latency network
  40. net.ipv4.tcp_congestion_control = hybla

  41. # for low-latency network, use cubic instead
  42. # net.ipv4.tcp_congestion_control = cubic
复制代码
退出并保存配置文件:按键盘 Esc 退出编辑,英文输入法状态下,输入 :wq

使配置生效:sysctl --system                      /////????????????



回复 支持 反对

使用道具 举报

165

主题

269

帖子

957

积分

认证用户组

Rank: 5Rank: 5

积分
957
地板
发表于 2017-9-8 10:08:22 | 只看该作者
自行搭建 Shadowsocks 翻墙服务器
说明:本博文不讲解 Linux 系统基本使用方法,不涉及 CentOS 7 操作系统在生产环境下的安全性问题。有需要的话,请自行查阅资料。
Linux 版本的 SS 分为 服务端 和 客户端 两个功能,前者是对外提供翻墙服务的,后者是接受服务的。
具体步骤
步骤 1~5 为 SS 服务端部分的操作,步骤 6~8 为 SS 客户端部分的操作。
  • SSH 登录到位于墙外的服务器
  • 安装 Shadowsocks
  • 优化 Shadowsocks 性能
  • 配置 Shadowsocks 配置文件
  • 启动并永久运行 Shadowsocks 服务端
  • 配置 Shadowsocks CentOS 7 客户端(Linux)
  • 配置 Shadowsocks Windows 客户端(Windows)
  • 配置 Shadowsocks Android 客户端(Android)

回复 支持 反对

使用道具 举报

165

主题

269

帖子

957

积分

认证用户组

Rank: 5Rank: 5

积分
957
板凳
发表于 2017-9-8 10:04:50 | 只看该作者
本帖最后由 firemail 于 2017-9-8 10:06 编辑

概览
SS 的初始版本是使用 Python 语言开发的,而后通过开源社区的贡献,又有了很多不同语言、环境、平台下的实现:有 C#、Java、JavaScript、Go 等语言实现的,还适配了 Windows、OS X、Linux、Android、iOS、OpenWRT(主流路由器固件之一)等主流平台……所以 SS 完全是一个多语言、多环境、跨平台的开源项目。
官网 下载页面 可以下载到所有平台的不同版本。

Shadowsocks 翻墙方式汇总
  • 懒人必备: 愿意付钱,懒得自己搭建 SS 服务器的话,可以购买第三方的 Shadowsocks 翻墙服务。我用过这个:Shadowsocks.la,稳定性还不错。其中香港那台服务器,在中国电信宽带下,ping 值(连接延时)能稳定在 40ms。用起来特别爽快!
  • 穷逼必备: 也有免费的 SS 翻墙服务,只不过为了控制服务质量,提供商会在一定时间内更换账号密码,需要使用者修改密码后重新登陆才能使用。如果一周就翻墙那么几次的话,可以考虑:ishadowx.com
  • 不折腾会死星人看这里: 我就是我,是颜色不一样的烟火。SS 翻墙服务器搭建方法见下文。
回复 支持 反对

使用道具 举报

165

主题

269

帖子

957

积分

认证用户组

Rank: 5Rank: 5

积分
957
沙发
发表于 2017-9-8 09:53:34 | 只看该作者
值得提及的是:
  • SS 的作者是 Clowwindy,中国人,貌似就职于知乎;
  • 2015 年被警察请去喝咖啡,被要求删除在 Github 开源的 Shadowsocks 及其衍生项目。现在 SS 已无开发者进行维护;
  • 很多人以为 Shadowsocks 在 Github 的项目真的被删了……其实并没有,作者只是把 SS 项目的默认分支设置为了一个叫 rm 的分支,显示被删信息。如果你“足够聪明”,切换到 master 分支后,就可以看到了。另外,项目版本发布页面内的源码包也都还在:https://github.com/shadowsocks/shadowsocks/releases



回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|firemail ( 粤ICP备15085507号-1 )

GMT+8, 2024-5-19 20:49 , Processed in 0.064463 second(s), 18 queries .

Powered by Discuz! X3

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表