Digital Ocean搭建vpn教程

需要的工具

1、putty

下载地址:https://www.chiark.greenend.org.uk/~sgtatham/putty/

2、ss客户端

(1)window端

下载地址:https://github.com/shadowsocks/shadowsocks-windows/releases

(2)android端

下载地址:https://github.com/shadowsocks/shadowsocks-android/releases

(3)mac

下载地址:https://github.com/shadowsocks/ShadowsocksX-NG/releases

(4)ios

下载地址:https://github.com/shadowsocks/shadowsocks-iOS/wiki/Help

搭建步骤:

1、创建和添加SSH Key到Droplet

(1)第一步,打开PuTTY Key Generator,Parameters选择RSA,点击Generate。生成公钥(存放在服务器用于验证私钥)和密钥(如与公钥匹配则可通过认证),首先复制上方的公钥代码(必须是ssh-rsa开头的(大红框里面的内容)),注意:复制完千万不要关闭窗口

(2)接下来登录DigitalOcean的控制面板,这里我们选择Ubuntu,用于后面搭建环境

(3)在Choose a datacenter region 这里现在New York

【注】:经过一年的测试,选择美国更稳定,之前选的新加坡,ip被墙,又需要重新搭建。

(4)进入SSH Keys选项卡,点击Add SSH Key

(5)进入添加界面后为Key取个名字,然后将刚刚复制的公钥(Public Key)粘贴到下方的输入框,点击CREATE SSH KEY

(6)随后点击最顶部的CREATE

(7)在填好Droplet的各项信息之后,在Add optional SSH Keys的选项选择你刚刚创建的那个SSH Key

(8)最后创建成功的的project:

2.PuTTY加载私钥进入vps系统

(1)然后回到PuTTY Key Generator的界面,点击下方的Save private key,选择路径保存你的私钥,然后就能使用SSH Key登录VPS了!

【注】不要保存在公用电脑上,任何持有私钥的人都能合法登VPS

(2)得到的aa.ppk就是那个自己的私钥,aa为自己创建的名称,可以任意创建,最好容易辨识,放在一个好找的目录下,登录VPS需要用到,需要好好保存,只有通过这个才能进入VPS;

(3)在PuTTY中,根据下图中的步骤,完成接下来的操作,其中第2步中IP address就是之前在digital ocean中获取的到的IP地址,这个也是你以后进入外网的时候需要用到的IP地址,在IP地址之前需要加[email protected],Port默认选择22,然后记得保存(save);

(4)然后进入PuTTY,按照下图展开左边的目录,在Private key file  for authentication选项选择你的SSH私钥的路径(后缀为.ppk)。然后记得回到登陆页点击Default Settings》Save保存设置。

(5)完成上面的工作后,然后点击Open就能自动登录了,全程自动化,完全不需要输入任何东西。(下图为登录成功界面)

3.搭建SS:

参考:http://blog.csdn.net/u010027419/article/details/40679973

3.1.首先安装shadowsocks(三条命令)

1apt-get install pip

【注】执行可能会遇到问题,根据提示,可能是版本的原因,最后命令为:apt install python-pip

2pip install --upgrade pip

【注】输入pip命令可能会报错:from pip import main ImportError: cannot import name 'main'

参考网站https://blog.csdn.net/qq_38522539/article/details/80678412的解决办法。主要是由于ubuntu升级pipd版本后导致的

解决办法:

1)编辑pip文件内容,执行:

vi /usr/bin/pip

2)修改pip文件的内容如下:

修改前

from pip import main 
if __name__ == '__main__': 
sys.exit(main())

修改后

from pip import __main__  //这行也要修改
if __name__ == '__main__': 
sys.exit(__main__._main())//增加__main__._

3pip install shadowsocks

在这里安装的过程中也会遇到问题,比如找不到源,具体解决办法是更换源就可以了;

参考https://blog.csdn.net/paincupid/article/details/52895676

如何更改源:

1)在修改source.list前,最好先备份一份

执行备份命令:

 sudo cp /etc/apt/sources.list /etc/apt/sources.list.old

2)执行命令打开source.list文件:

可以用vim,gedit,atom等工具打开,执行命令:

sudo vim /etc/apt/source.list
或
sudo gedit /etc/apt/source.list
或(你得自己安装atom,我觉得挺好的一个工具)
sudo atom /etc/apt/source.list

3)复制源

把下面的任意一下复制到source.list中去,并覆盖原来的文件内容,wq保存。

#东北大学源
deb-src http://mirror.neu.edu.cn/ubuntu/ xenial main restricted #Added by software-properties
deb http://mirror.neu.edu.cn/ubuntu/ xenial main restricted
deb-src http://mirror.neu.edu.cn/ubuntu/ xenial restricted multiverse universe #Added by software-properties
deb http://mirror.neu.edu.cn/ubuntu/ xenial-updates main restricted
deb-src http://mirror.neu.edu.cn/ubuntu/ xenial-updates main restricted multiverse universe #Added by software-properties
deb http://mirror.neu.edu.cn/ubuntu/ xenial universe
deb http://mirror.neu.edu.cn/ubuntu/ xenial-updates universe
deb http://mirror.neu.edu.cn/ubuntu/ xenial multiverse
deb http://mirror.neu.edu.cn/ubuntu/ xenial-updates multiverse
deb http://mirror.neu.edu.cn/ubuntu/ xenial-backports main restricted universe multiverse
deb-src http://mirror.neu.edu.cn/ubuntu/ xenial-backports main restricted universe multiverse #Added by software-properties
deb http://archive.canonical.com/ubuntu xenial partner
deb-src http://archive.canonical.com/ubuntu xenial partner
deb http://mirror.neu.edu.cn/ubuntu/ xenial-security main restricted
deb-src http://mirror.neu.edu.cn/ubuntu/ xenial-security main restricted multiverse universe #Added by software-properties
deb http://mirror.neu.edu.cn/ubuntu/ xenial-security universe
deb http://mirror.neu.edu.cn/ubuntu/ xenial-security multiverse
#清华大学
# deb cdrom:[Ubuntu 16.04 LTS _Xenial Xerus_ - Release amd64 (20160420.1)]/ xenial main restricted
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial main restricted
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-updates main restricted
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial universe
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-updates universe
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial multiverse
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-updates multiverse
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-backports main restricted universe multiverse
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-security main restricted
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-security universe
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-security multiverse

#阿里云源
# deb cdrom:[Ubuntu 16.04 LTS _Xenial Xerus_ - Release amd64 (20160420.1)]/ xenial main restricted
deb-src http://archive.ubuntu.com/ubuntu xenial main restricted #Added by software-properties
deb http://mirrors.aliyun.com/ubuntu/ xenial main restricted
deb-src http://mirrors.aliyun.com/ubuntu/ xenial main restricted multiverse universe #Added by software-properties
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates main restricted
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-updates main restricted multiverse universe #Added by software-properties
deb http://mirrors.aliyun.com/ubuntu/ xenial universe
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates universe
deb http://mirrors.aliyun.com/ubuntu/ xenial multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse #Added by software-properties
deb http://archive.canonical.com/ubuntu xenial partner
deb-src http://archive.canonical.com/ubuntu xenial partner
deb http://mirrors.aliyun.com/ubuntu/ xenial-security main restricted
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-security main restricted multiverse universe #Added by software-properties
deb http://mirrors.aliyun.com/ubuntu/ xenial-security universe
deb http://mirrors.aliyun.com/ubuntu/ xenial-security multiverse

4)输入update命令:

sudo apt-get update

再执行

pip install shadowsocks

安装成功:

3.3 新建一个shadowsocks.json配置脚本,输入命令:

touch /etc/shadowsocks.json

3.4 在shadowsocks.json在写入:

{
"server":"0.0.0.0",                  #不要改
"server_port":8388,                  #自己定义
"local_address": "127.0.0.1",        #不要改
"local_port":1080,                   #自己定义
"password":"123456",                 #自己定义
"timeout":300,                       #不要改
"method":"aes-256-cfb",              #不要改
"fast_open": true,                   #不要改
"workers": 1                         #不要改
}

【注】根据我的注释来修改里面的配置 

3.5 启动ss执行命令:

ssserver -c /etc/shadowsocks.json -d start

最后显示started,表示成功。

3.6 打开客服端输入并启动:

【注】此图为windows版本,各个客户的下载在文章开头

加速方法(附加)

BBR算法是Google在Linux Kernel 4.9内核上加入的TCP拥塞控制算法。在BBR之前可以理解TCP的控制算法都为被动的拥塞控制算法,而BBR控制算法可以认为是一种主动拥塞控制算法。BBR通过避免排队来尽量的跑满带宽,以此达到加速的目的。

1.Ubuntu内核升级,Ubuntu开启BBR的前提是内核高于4.9,所以先检查内核版本:

uname -a

如果版本高于4.9,那就可以直接用,如果低于,则按照以下步骤先更新内核版(root权限)

2.首先确定你的系统是32位还是64位的:

getconf LONG_BIT

3.直接通过wget命令,去http://kernel.ubuntu.com/~kernel-ppa/mainline/去下载最新的程序包,例如我去下载64位的4.10.2的内核:

wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.10.2/linux-image-4.10.2-041002-generic_4.10.2-041002.201703120131_amd64.deb

4.切换到你的文件下载目录,执行下面的命令进行升级:

dpkg -i linux-image-4.10.2-041002-generic_4.10.2-041002.201703120131_amd64.deb

5.更新grub引导装入程序:

update-grub

各方面都完成后,重启机器,再查看自己的内核版本就会发现已经更新到4.10.2了

6.开启TCP BBR加速

1)修改系统变量:

echo "net.core.default_qdisc=fq" >> /etc/sysctl.conf

echo "net.ipv4.tcp_congestion_control=bbr" >> /etc/sysctl.conf

如果执行以上命令时显示拒绝访问则可以尝试使用如下命令:

sudo bash -c 'echo "net.core.default_qdisc=fq" >> /etc/sysctl.conf'

sudo bash -c 'echo "net.ipv4.tcp_congestion_control=bbr" >> /etc/sysctl.conf'

2)保存生效:

sysctl -p

3.查看是否开启成功执行如下命令:

sysctl net.ipv4.tcp_available_congestion_control

如果返回结果为:et.ipv4.tcp_available_congestion_control = bbr cubic reno,那么恭喜你BBR开启成功了

参考:https://www.flyzy2005.cn/fan-qiang/shadowsocks/ubuntu-bbr-shadowsocks

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章