学习必备
一. 概述
- 本文参考jasper文章,自己尝试过程中修改重写,能帮助他人,也能方便自己 参考文章
- 脚本来源 @秋水逸冰 使用脚本路径
https://raw.githubusercontent.com/teddysun/shadowsocks_install/master/shadowsocksR.sh
也可使用秋水大神四合一版本,最后更新日期 :2017 年 10 月 22 日 - 使用系统版本:Debian 7 x64
二. 常用命令
|
|
三. SSR安装、配置、卸载
服务器中复制执行以下命令进行安装:
123wget --no-check-certificate https://raw.githubusercontent.com/teddysun/shadowsocks_install/master/shadowsocksR.shchmod +x shadowsocksR.sh./shadowsocksR.sh 2>&1 | tee shadowsocksR.log默认配置
123456服务器端口:自己设定(如不设定,默认为 8989)密码:自己设定(如不设定,默认为 teddysun.com)加密方式:自己设定(如不设定,Python 和 libev 版默认为 aes-256-gcm,R 和 Go 版默认为 aes-256-cfb)协议(protocol):自己设定(如不设定,默认为 origin)(仅限 ShadowsocksR 版)混淆(obfs):自己设定(如不设定,默认为 plain)(仅限 ShadowsocksR 版)备注:脚本默认创建单用户配置文件,如需配置多用户,请手动修改相应的配置文件后重启即可。shadowsocks.json配置文件
默认在/root文件夹下,要进入/etc文件夹下找到shadowsocks.json12345678910111213141516171819202122232425262728{"server":"0.0.0.0","server_ipv6":"::","local_address":"127.0.0.1","local_port":1080,"port_password":{#纯 SS 不带混淆 端口25 密码为123456."25":"123456",#端口443,密码123456 ,protocol选择auth_chain_a。obfs选择tls1.2_ticket_auth,具体插件的介绍如下参考资料中"443":{"protocol":"auth_chain_a", "password":"123456", "obfs":"tls1.2_ticket_auth", "obfs_param":""},#注意无论怎么变化,最后一个端口设置,不带逗号!"3389":{"protocol":"auth_aes128_md5", "password":"123456", "obfs":"tls1.2_ticket_auth", "obfs_param":""}#此处没有逗号!},"timeout":400,#默认全局的加密方式,即上边各个端口的默认加密方式。一般为aes-256-cfb, 此处,选择为chacha20,移动设备性能较好。"method":"chacha20",#protocol.协议定义插件的默认值,origin即使用原版SS协议,不混淆。即上面端口配置中,你没有设置 protocol 和 obfs 情况下,使用的默认值。"protocol": "origin","protocol_param": "",#protocol.协议定义插件的默认值,plain即使用原协议,不混淆。"obfs": "plain","obfs_param": "","redirect": "","dns_ipv6": true,#TCP FAST OPEN ,打开"fast_open": true,"workers": 1}重启SSR
每次修改配置后,需重启ssr
root用户下执行/etc/init.d/shadowsocks restart
卸载SSR
1./shadowsocksR.sh uninstall
四. 加速工具TCP-BBR(推荐)安装
- 脚本来自于@秋水逸冰
运行下面的命令:
123wget --no-check-certificate https://github.com/teddysun/across/raw/master/bbr.shchmod +x bbr.sh./bbr.sh验证
uname -r
有4.9.0 以上就 表示 更新成功lsmod | grep bbr
返回值有 tcpbbr 即bbr已启动。优化修改sysctl.conf 输入命令
nano /etc/sysctl.conf
,输入完成保存([Ctrl + X] —> y —> Enter)12345678910111213141516171819202122#TCP配置优化(不然你自己根本不知道你在干什么)fs.file-max = 51200#提高整个系统的文件限制net.core.rmem_max = 67108864net.core.wmem_max = 67108864net.core.netdev_max_backlog = 250000net.core.somaxconn = 4096net.ipv4.tcp_syncookies = 1net.ipv4.tcp_tw_reuse = 1net.ipv4.tcp_tw_recycle = 0net.ipv4.tcp_fin_timeout = 30net.ipv4.tcp_keepalive_time = 1200net.ipv4.ip_local_port_range = 10000 65000net.ipv4.tcp_max_syn_backlog = 8192net.ipv4.tcp_max_tw_buckets = 5000net.ipv4.tcp_fastopen = 3net.ipv4.tcp_mem = 25600 51200 102400net.ipv4.tcp_rmem = 4096 87380 67108864net.ipv4.tcp_wmem = 4096 65536 67108864net.ipv4.tcp_mtu_probing = 1net.ipv4.tcp_congestion_control = bbr#END OF LINE应用
sysctl -p
- 重启ssr /etc/init.d/shadowsocks restart
五. 安全登录ssh
修改账号密码登录为SSH密钥登录
生成公钥和私钥,在Linux远程服务器生成密钥:
ssh-keygen -t rsa
123456Enter file in which to save the key (/root/.ssh/id_rsa): //直接回车Created directory '/root/.ssh'.Enter passphrase (empty for no passphrase): //输入密钥密码Enter same passphrase again: //重复密钥密码Your identification has been saved in /root/.ssh/id_rsa. //提示公钥和私钥已经存放在/root/.ssh/目录下Your public key has been saved in /root/.ssh/id_rsa.pub.服务器配置私钥
12执行以下命令:`mv /root/.ssh/id_rsa.pub /root/.ssh/authorized_keys` 把vps上生成的id_rsa.pub文件改名为authorized_keys修改下这个文件的权限为600 `chmod 600 /root/.ssh/authorized_keys ` 防止被误删除配置Xshell使用密钥登陆(可使用搜索引擎搜索如何配置)
验证完成修改远程服务器SSHD配置,关闭用户名、密码登录
12修改/etc/ssh/sshd_config 文件中找到PasswordAuthentication后面的yes改成no重启ssh `/etc/init.d/ssh restart`提示ssh找不到的话,可尝试换成sshd
修改登录默认端口 123登陆SSH,然后通过 `nano /etc/ssh/sshd_config` 命令打开文件修改其中的port后面的数字为你自己想要设置的端口重启SSH:`service ssh restart `
六. 编译shadowsocksR Windows客户端
- github下载最新版代码地址
- 使用visual studio 2015 双击shadowsocks-csharp.sln ,编译,即可获取到应用客户端
七. chorme搭配SwitchyOmega使用
- 可参考网址GFWList