首页 > 服务器 > 服务器环境 > [v16]Kcptun 服务端一键安装脚本,喜闻乐见的多用户支持
2016
12-28

[v16]Kcptun 服务端一键安装脚本,喜闻乐见的多用户支持

经常有朋友抱怨 Kcptun 服务端安装繁琐,我花时间写了一个一键安装更新脚本。

参考了 @teddysun 的SS一键安装脚本,感谢 @静逸轩 提供的测试服务器。

理论上脚本支持:CentOS 6+、Ubuntu 12+和Debian 7+,但是由于测试不完全,可能存在安装失败的情况。如果你在使用过程中遇到任何问题,请反馈给我!反馈请加QQ群:43391448

脚本已更新到v16,请以前版本的朋友更新一下:

请先切换到 kcptun.sh 文件目录下运行

更新日志:

  1. 支持自定义实例启动用户;
  2. 支持删除实例;
  3. 各种优化;
  4. 完善提示信息

同时更新了 init 脚本

  1. 修复 CentOS 上找不到 Supervisor 执行文件的问题;
  2. 由于 Supervisor 的版本不同, 执行文件的目录可能不一样, 如果你出现无法安装或启动失败的问题, 请及时联系我

脚本的功能有:

  1. 一键安装,自动下载最新版本,支持所有参数配置;
  2. 一键更新,一键卸载,完全自动化;
  3. 支持用户手动输入版本安装;
  4. 支持更新配置,自动输出推荐参数;
  5. 使用 Supervisor 管理进程,更加便捷;
  6. 自动配置服务,并随开机自启;
  7. 脚本提示全中文,更快锁定问题。

用 Putty 下中文显示可能会出现乱码一片,请自行解决乱码问题;推荐使用 Xshell,手机上可以用 JuiceSSH,都是非常好用的 SSH 客户端。

使用脚本安装服务端

注意:在配置之前请确认一下你的加速地址,大部分不能加速都是由于加速地址配置错误。

鉴于大部分朋友是用来加速 Shadowsocks,下面以 Shadowsocks 为例,Shadowsocks 正确安装运行在当前服务器上。

首先找到你的 Shadowsocks 端口,比如我的 Shadowsocks 端口为 8388,然后在命令行输入以下命令:

如果提示以上命令不存在,请输入:

:将 8388 替换为你的 Shadowsocks 端口

然后你会看到类似下面的输出(着重看显示为红色的部分):


情况一:

情况2:

情况3:

情况4(假如 10.10.10.10 是当前服务器IP):


若为情况1、情况2和情况3,那么你的加速地址可以为:加速 IP 127.0.0.1,加速端口 8388(你的 Shadowsocks 端口

若为情况4,那么你的加速地址为:加速IP 10.10.10.10(你的服务器IP),加速端口8388(你的 Shadowsocks 端口

使用方法:

1.设置 Kcptun 的服务端端口:

请输入一个未被占用的端口,Kcptun 运行时将使用此端口。

2.设置加速的 IP:

填入上面获取到的加速 IP

3.设置需要加速的端口:

填入上面获取到的加速端口

程序会检查当前是不是有程序占用着此端口,如果你的 Shadowsocks 没在运行,或者没有软件使用此端口,会弹出如下提示:

如果你确认 Shadowsocks 运行时会使用此端口,那么输入 “y” 回车即可。

4.设置 Kcptun 密码:

这就是说,你可以为 Kcptun 单独设置一个密码,防止被他人恶意使用。这个密码和 SS 的密码没有半毛钱关系,请不要把它们混淆了。

再提一句,Kcptun 和 Shadowsocks 没有任何关系,请不要脑补它们之间存在任何联系,Kcptun 你可以理解为一款网络加速软件,只不过它是通过将 TCP 协议转换为 UDP 协议,然后再通过大量的发送数据包,浪费了带宽以换取网速的提升。它能加速所有以 TCP 协议传输数据的软件,不单单是 Shadowsocks。只是大家都用来……你懂的

回到上面的密码设置问题,如果你这里选择直接回车,也就是代表你不自定义密码。但是 Kcptun 有一个默认的密码,这个密码是: it's a secrect

如果你这里选择不设置密码,那么客户端的参数里边就不需要加 –key 这一参数,但是 Kcptun 还是会用上面一个密码做默认值。

5.禁用压缩

这个选项是什么意思呢?Kcptun 默认是启用压缩的,如果你这里设置为 y,也就是配置为 nocomp:true,那么就是禁用压缩。

许多朋友这里设置的是保持默认(启用压缩),而偏偏在软件之中设置为禁用压缩,当然就连不上咯。

其他配置项不用我说了,如果你了解它是干什么的,可以自定义配置。如果不知道,那么直接回车使用默认参数

但是,使用默认参数,是有可能浪费大量流量的,你会发现你的流量像泄洪一样快速减少,你需要会调节参数,套用官方的说明

简易自我调优方法:

  1. 同时在两端逐步增大 client rcvwnd 和 server sndwnd ;
  2. 尝试下载,观察如果带宽利用率(服务器+客户端两端都要观察)接近物理带宽则停止,否则跳转到第一步。

任何事物都是有两面性的,选择了速度,就只有放弃流量。那么有没有既快得像火箭,燃料又省得像煤油灯的方法呢?呵呵!

各参数详细信息请查看:https://github.com/xtaci/kcptun

如果你用国内服务器安装,可能会出现文件下载失败。这是由于脚本会到 Github 下载文件,而 Github 的某些下载地址在国内你懂的……所以文件下载失败真不是我的锅。

如果安装成功,应该能看到如下输出信息:

请将以上的提示信息复制保存下来,后面配置客户端会用到这些提示信息。

安装之后,Kcptun 服务交由 Supervisor 管理。

Supervisor 相关命令:

Kcptun 相关命令:

Supervisor 启动的时候会同时启动 Kcptun,运行 kcptun 相关命令时先确保 Supervisor 已启动。

手动配置的方法请看这里:小内存福音,Kcptun Shadowsocks加速方案

客户端配置

1.先到下载一个启动 Kcptun 的工具。请注意,这只是用来启动 Kcptun 的工具,而不是 Kcptun 客户端。

https://github.com/dfdragon/kcptun_gclient/releases

2.然后下载服务端对应版本的 Kcptun(保存下来的提示信息里有):

https://github.com/xtaci/kcptun/releases

32位系统下载:kcptun-windows-386-20160922.tar.gz

64位系统下载:kcptun-windows-amd64-20160922.tar.gz

注意看红字的版本号和服务端版本一致。然后将它们解压到一起:

打开 Kcptun 启动工具,界面如下,请按序号操作。

[v16]Kcptun 服务端一键安装脚本,喜闻乐见的多用户支持 - 第1张  | 扩软博客

1.直接导入配置文件

我们可以将推荐参数保存为文件,找到如下这部分:

新建一个记事本文件,文件名随意(比如 config.txt 或者 config.json),然后将上面大括号里的内容复制到文件里边(包括大括号),确保它是标准的 json 格式(可以到这里校验格式  http://www.json.cn/)。

然后勾选“使用配置文件”,选择你新建的文件即可,下面的参数区域直接留空,点击启动。

2.手动配置参数

手动配置的时候只需要看保存下来的提示信息上面一部分(有标红部分,非常显眼):

为了规避错误,遵循较少配置原则,在配置服务端时没有修改过的选项都不需要配置。配置完毕,点击启动。

几项说明:

  1. 本地监听端口,这个端口你可以随意设置,不是必须设置为 Shadowsocsk 的端口;
  2. KCP服务器地址为你的服务器IP地址,不是 127.0.0.1,端口为服务端 Kcptun 的端口
  3. 如果你想使用IPv6协议,在填写服务器IP地址的时候需要用 [] 将IPv6地址括起来,如:[2000:0:0:0:0:0:0:1];
  4. 通信密钥是你配置的 Kcptun 密码,不是 Shadowsocks 的密码;在配置 Kcptun 的时候,不用管 Shadowsocks 的配置参数;
  5. 参数区配置的时候,只需要配置你修改过的部分就行了,其他部分都不用改,除非你了解每项参数的意义;
  6. 日志区非常重要,在排查问题的时候,这是必看部分;
  7. 右下角为 Kcptun 最低需求版本,更新服务端之后,也需要更新本地客户端,只需要替换客户端文件即可。

Shadowsocks 配置

在 Shadowsocks 客户端中添加一个选项,服务器IP固定填写 127.0.0.1,服务器端口填写 Kcptun 启动工具中配置的“本地监听端口”(即这里的 8388),密码和加密配置的是 Shadowsocks 的密码和加密

基本原则,配置 Kcptun 的时候不用管 Shadowsocks 的参数,配置 Shadowsocks 的时候不用管 Kcptun 的参数,别把它们的配置参数搞混了。

将代理切换到新建的选项上,尝试访问。查看 Kcptun 启动工具中的日志区,会有大量的如下信息输出:

再用 shelll 看看服务端日志,如果有相同的信息输出,说明配置正确,并能正常使用。查看服务端日志使用:

Android 端请看这里:Shadowsocks-Android客户端上的KCP配置说明

OpenWrt 上使用:OpenWrt平台Kcptun Web管理界面

其他说明

最后编辑:
作者:
百度ID:“度娘程序员”,博主。
捐 赠如果您觉得这篇文章有用处,请支持作者!鼓励作者写出更好更多的文章!

[v16]Kcptun 服务端一键安装脚本,喜闻乐见的多用户支持》有 353 条评论

  1. Pingback 引用通告: 【Shadowsocks】基于 VPS 搭建+速度优化工具 Kcptun – Songkeys'

  2. Google Chrome 49.0.2623.75Google Chrome 49.0.2623.75Windows 7Windows 7

    请问下面的情况怎么处理呢,在客户端窗口显示没有log,这是在xshell上面查到的,非常感谢!

    你选择了查看实例 kcptun 的日志, 正在读取…

    实例 kcptun 的日志信息如下:
    注: 日志实时刷新, 按 Ctrl+C 退出日志查看
    2017/01/12 09:24:29 stream closed
    2017/01/12 09:24:29 stream opened
    2017/01/12 09:24:30 stream opened
    2017/01/12 09:24:30 stream closed
    2017/01/12 09:24:30 stream opened
    2017/01/12 09:24:30 stream closed
    2017/01/12 09:25:07 broken pipe
    2017/01/12 09:25:30 stream closed
    2017/01/12 09:25:36 stream closed
    2017/01/12 09:25:37 stream closed
    2017/01/12 09:26:48 stream closed
    2017/01/12 09:27:17 broken pipe
    2017/01/12 09:27:27 broken pipe
    2017/01/12 09:27:41 remote address: 125.124.47.53:58427
    2017/01/12 09:27:42 broken pipe
    2017/01/12 09:27:42 stream closed
    2017/01/12 09:43:50 remote address: 125.124.47.53:57073
    2017/01/12 09:44:11 broken pipe
    2017/01/12 09:48:46 remote address: 125.124.47.53:50087
    2017/01/12 09:48:50 broken pipe
    2017/01/12 09:50:46 broken pipe
    2017/01/12 09:50:46 remote address: 125.124.47.53:59628

  3. Google Chrome 55.0.2883.87Google Chrome 55.0.2883.87Windows 10 x64Windows 10 x64

    额,一键安装的地址在哪里额。没看到啊

  4. Pingback 引用通告: 一键搭建kcpturn加速脚本,让你的shadowsocks速度飞起来,播放1080p不卡 | 莫名居

  5. Google Chrome 55.0.2883.87Google Chrome 55.0.2883.87Windows 10 x64Windows 10 x64

    2017/01/08 03:58:19 stream closed
    2017/01/08 03:58:32 stream closed
    2017/01/08 03:58:32 stream closed
    2017/01/08 03:58:32 stream closed
    2017/01/08 03:58:32 stream closed
    2017/01/08 03:58:32 stream closed
    2017/01/08 03:58:32 stream opened
    2017/01/08 03:58:34 stream opened
    2017/01/08 03:58:38 stream opened
    2017/01/08 03:59:21 stream closed
    2017/01/08 03:59:34 stream closed
    2017/01/08 03:59:39 stream opened
    2017/01/08 03:59:39 stream opened
    2017/01/08 03:59:39 stream opened
    2017/01/08 03:59:39 stream opened
    2017/01/08 03:59:39 stream opened
    2017/01/08 03:59:39 stream opened
    2017/01/08 03:59:52 stream closed
    2017/01/08 04:01:05 stream closed
    2017/01/08 04:01:32 stream closed
    2017/01/08 04:01:34 stream closed
    2017/01/08 04:02:08 stream closed
    Connection closed by foreign host.
    Disconnected from remote host(VPS) at 17:02:39.
    Type `help’ to learn how to use Xshell prompt.
    _____________________
    昨天成功后 用差不多十分钟就出现这个 然后断线 搬瓦工的VPS

  6. Pingback 引用通告: Kcptun一键安装和客户端配置 - OSK's Blog

  7. Google Chrome 55.0.2883.87Google Chrome 55.0.2883.87Windows 10 x64Windows 10 x64

    你好!请问配置完kcptun客户端后无法启动,一直在显示下面的信息,要怎么弄啊?
    执行命令:”” -l :8388 -r 54.199.246.77:8300 -key “97539834” -crypt aes-192 -datashard
    10 -parityshard 3 -conn 1 -mtu 1350 -sndwnd 1024 -rcvwnd 1024 -dscp 0 -autoexpire 60 -mode fast2
    *************************** begin ***************************
    **************************** end ****************************

  8. Google Chrome 56.0.2924.28Google Chrome 56.0.2924.28Windows 10 x64Windows 10 x64

    小bug:在删除实例时,这个界面

    不作任何输入默认的1并不是显示的最后修改时间降序排列的第一个(即kcptun3),而是当初创建最早的(现在是kcptun2,原本第一个创建的是kcptun,会不会是我自己手动改过第一个配置文件的缘故?)

    • Google Chrome 57.0.2970.0Google Chrome 57.0.2970.0Windows 10 x64Windows 10 x64

      脚本读取的就是文件的最后修改日期,然后排一下序,没有其他特定的逻辑

发表回复

你的邮箱地址不会被公开,垃圾评论将被删除。

有人回复时邮件通知我