V2R y安装尝试

作者:matrix 发布时间:2019年3月5日星期二 分类:零零星星

昨天发现之前的连接服务端口被封了,还好重新切换之后就好了,原因应该是video-stream占用过大导致的。 😂 😂 😂
今天尝试启用V2,V2服务作用也是一样跨规则访问,使用和配置相比较ss也稍微麻烦一些。V2的客户端连接不需要账号/密码,只需要user ID和端口确保和服务器中的v2服务配置一致即可,加密方式也可以客户端自定义使用,还有就是要求服务端和客户端的本地时间不能相差>2min(时区不同不影响)。v2也涵盖了shadowsocks模块,配置添加即可添加相关连接账号。

操作手册:https://toutyrater.github.io

服务端环境:Ubuntu 16.04
客户端环境:macOs

安装

> wget https://install.direct/go.sh
> sudo bash go.sh

执行完成之后等待出现installed即表示安装完成

相关文件默认路径:

/etc/v2ray/config.json:配置文件;
/usr/bin/v2ray/v2ray:V2Ray 程序;
/usr/bin/v2ray/v2ctl:V2Ray 工具;
/usr/bin/v2ray/geoip.dat:IP 数据文件
/usr/bin/v2ray/geosite.dat:域名数据文件

配置服务端

> vi /etc/v2ray/config.json #编辑配置文件

其中inbounds中的port表示服务器端需要开启的端口,客户端亦配置相同使用。
protocol 为使用的协议,测试使用v2的vmess,也可以使用shadowsocks
使用vmess协议就需要设置settings.clients[].id也就是unique唯一的uid,客户端亦配置相同使用。
uid是可以自定义的。

半自动配置:https://intmainreturn0.com/V2Ray-config-gen/

...
"inbounds": [{
    "port": 42626,
    "protocol": "vmess",
    "settings": {
      "clients": [
        {
          "id": "40dee6e3-030f-493d-8d11-d953747f2872",
          "level": 1,
          "alterId": 64
        }
      ]
    }
  }],
...

下面为简化使用的服务端配置:

{
  "inbounds": [{
    "port": 10089,
    "protocol": "vmess",
    "settings": {
      "clients": [
        {
          "id": "40dee13747f2872",
          "level": 1,
          "alterId": 64
        }
      ]
    }
  }],
  "outbounds": [{
    "protocol": "freedom",
    "settings": {}
  },{
    "protocol": "blackhole",
    "settings": {},
    "tag": "blocked"
  }],
  "routing": {
    "rules": [
      {
        "type": "field",
        "ip": ["geoip:private"],
        "outboundTag": "blocked"
      }
    ]
  }
}

说明:
1008940dee13747f2872分别为端口和uid 自己修改使用就好。

KCP+动态端口高级配置

上面的普通配置服务端也是可以使用的,只是避免出现意外还是设置高级配置较好

  {
  "inbounds": [
    {
      "port": 101,
      "protocol": "vmess",
      "settings": {    
        "clients": [
          {
            "id": "0000-0000-0000-0000-0000",
            "level": 1,
            "alterId": 64
          }
        ],
        "detour": {
          "to": "dynamicPort"
        }
      },
      "streamSettings": {
        "network": "kcp"
      }
    },
    {
      "protocol": "vmess",
      "port": "10000-20000",
      "tag": "dynamicPort",
      "settings": {
        "default": {
          "level": 1,
          "alterId": 32
        }
      },
      "allocate": {
        "strategy": "random",
        "concurrency": 2,
        "refresh": 3
      },
      "streamSettings": {
        "network": "kcp"
      }
    }
  ],
  "outbounds": [{
    "protocol": "freedom",
    "settings": {}
  },{
    "protocol": "blackhole",
    "settings": {},
    "tag": "blocked"
  }],
  "routing": {
    "rules": [
      {
        "type": "field",
        "ip": ["geoip:private"],
        "outboundTag": "blocked"
      }
    ]
  }
}

参考:
https://toutyrater.github.io/advanced/dynamicport.html
https://steemit.com/cn/@syt/v2ray-qos

启动服务

> sudo systemctl start v2ray #systemctl激活且启动服务

> service v2ray start|stop|status|reload|restart|force-reload  #相关操作

客户端连接

  • 使用v2内核脚本命令行执行操作,需要手动修改config.json文件来配置地址端口和uid
    https://github.com/v2ray/v2ray-core/releases

  • macOs端可使用GUI图形界面客户端来连接配置

打开之后,顶部菜单栏出现的图标点击右键
顶部的loaded,Unload core表示启用和关闭。v2rayX也是使用官方的v2ray-core来二次开发初图形客户端方便使用。
PAC Model,Gloabal Model为PAC和全局代理
图片4422-V2R y安装尝试
点击configure打开配置界面
图片4417-V2R y安装尝试

左下方的「+」号来添加连接的服务器地址端口和user id,确保和服务端保持一直就可以了。

其他客户端

win:https://github.com/Cenmrev/V2RayW
Android:https://play.google.com/store/apps/details?id=fun.kitsunebi.kitsunebi4android
IOS:https://apps.apple.com/us/app/kitsunebi-proxy-utility/id1446584073
MacOs:https://github.com/Cenmrev/V2RayX/releases
...
https://www.jianshu.com/p/a8e1a655a5d7

P.S.
一键安装脚本:

bash <(curl -s -L https://git.io/v2ray.sh)

参考:

https://github.com/v2ray/v2ray-core

https://toutyrater.github.io/prep/install.html

https://www.v2ray.com/chapter_00/start.html

https://github.com/Cenmrev/V2RayX/releases

https://intmainreturn0.com/v2ray-config-gen/

https://www.youtube.com/watch?v=-z06k0654Wg

systemctl操作: https://www.cnblogs.com/lxjshuju/p/7183689.html

233版V2ray一键安装脚本 集成BBR/锐速/Shadowsocks

更新OpenSSL库至最新版本导致sss服务无法启动

作者:matrix 发布时间:2017年4月16日星期日 分类:零零星星

ubuntu升级openssl库到openssl 1.1.0e版本,过程倒还好,到底还是成功了。但是reboot重启系统之后发现ss服务无法打开,这可是目前我唯一的科学电梯啊。
不过还好找到报错信息有解决办法。

>ssserver --version
shadowsocks 2.8.2 版本

报错:
root@root-VM:/usr/local/bin# ./ssserver  -c /etc/shadowsocks.json -d start
INFO: loading config from /etc/shadowsocks.json
2017-04-16 19:05:10 INFO     loading libcrypto from libcrypto.so.1.1
Traceback (most recent call last):
  File "./ssserver", line 9, in <module>
    load_entry_point('shadowsocks==2.8.2', 'console_scripts', 'ssserver')()
  File "/usr/local/lib/python2.7/dist-packages/shadowsocks/server.py", line 34, in main
    config = shell.get_config(False)
  File "/usr/local/lib/python2.7/dist-packages/shadowsocks/shell.py", line 262, in get_config
    check_config(config, is_local)
  File "/usr/local/lib/python2.7/dist-packages/shadowsocks/shell.py", line 124, in check_config
    encrypt.try_cipher(config['password'], config['method'])
  File "/usr/local/lib/python2.7/dist-packages/shadowsocks/encrypt.py", line 44, in try_cipher
    Encryptor(key, method)
  File "/usr/local/lib/python2.7/dist-packages/shadowsocks/encrypt.py", line 83, in __init__
    random_string(self._method_info[1]))
  File "/usr/local/lib/python2.7/dist-packages/shadowsocks/encrypt.py", line 109, in get_cipher
    return m[2](method, key, iv, op)
  File "/usr/local/lib/python2.7/dist-packages/shadowsocks/crypto/openssl.py", line 76, in __init__
    load_openssl()
  File "/usr/local/lib/python2.7/dist-packages/shadowsocks/crypto/openssl.py", line 52, in load_openssl
    libcrypto.EVP_CIPHER_CTX_cleanup.argtypes = (c_void_p,)
  File "/usr/lib/python2.7/ctypes/__init__.py", line 378, in __getattr__
    func = self.__getitem__(name)
  File "/usr/lib/python2.7/ctypes/__init__.py", line 383, in __getitem__
    func = self._FuncPtr((name_or_ordinal, self))
AttributeError: /usr/lib/ssl/lib/libcrypto.so.1.1: undefined symbol: EVP_CIPHER_CTX_cleanup

说到底都是升级openssl导致无法使用,旧版EVP_CIPHER_CTX_cleanup函数被弃用改为EVP_CIPHER_CTX_reset

办法

定位到/usr/local/lib/python2.7/dist-packages/shadowsocks/crypto/openssl.py文件:
修改52,111行处的EVP_CIPHER_CTX_cleanupEVP_CIPHER_CTX_reset 重启服务,解决。

实际情况根据自己的ss版本查找修改相关文件

参考:http://blog.csdn.net/blackfrog_unique/article/details/60320737

PEACE

ububntu 搭建sss服务无法开机自启动

作者:matrix 发布时间:2016年12月29日星期四 分类:零零星星

搭建方法:http://www.jianshu.com/p/b5c4fbadbfae

apt-get update
apt-get install python-pip
pip install shadowsocks

添加:/etc/shadowsocks.json

{
"server":"my_server_ip",
"server_port":8388,
"local_address": "127.0.0.1",
"local_port":1080,
"password":"mypassword",
"timeout":300,
"method":"aes-256-cfb",
"fast_open": false
}

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

我用ubuntu按照上面链接的方法来搭建的服务,安装运行到是ok,但是reboot重启Ubuntu的时候就发现出现问题。

编辑/etc/rc.local

添加开机自启动的命令失败:

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

Ubuntu下/etc/rc.local  文件修改之后没有成功。
实际上系统是执行了/etc/rc.local里面的命令,只是没有设置好ssserver命令的环境变量,系统当然无法执行。
我们需要做的就是给运行/etc/rc.local 的脚本里面添加环境变量就可以。

修改/etc/init.d/rc.local文件

vi /etc/init.d/rc.local
然后按i键执行vi编辑器的插入口令
将原本的PATH=/sbin:/usr/sbin:/bin:/usr/bin 修改为 PATH=/sbin:/usr/sbin:/bin:/usr/bin:/usr/local/bin
按esc键输入:wq!保存退出
重启Ubuntu
reboot
然后系统就会成功执行 ssserver -c /etc/shadowsocks.json -d start 命令启动服务
重启:ssserver -c /etc/shadowsocks.json -d restart

加速

vps是kvm虚拟技术,可提升扶墙效率

https://github.com/ToyoDAdoubi/doubi

  • 安装锐速hack版
    https://github.com/91yun/serverspeeder

  • 安装Google BBR

$ bash -c "$(curl -sSL https://github.com/teddysun/across/raw/master/bbr.sh)" #安装bbr
$ bash -c "$(curl -sSL https://raw.githubusercontent.com/chiakge/Linux-NetSpeed/master/tcp.sh)" #bbr plus

$ lsmod | grep bbr #检测
  • 腾讯TCPA(仅限centOS)
 bash <(curl -L -s http://down.08mb.com/tcp_opz/tcpa/tcpa.sh) #安装

参考:
http://www.jianshu.com/p/f88424fd4ab3

http://blog.csdn.net/zhe_d/article/details/50312967
http://www.jianshu.com/p/b5c4fbadbfae
http://www.jianshu.com/p/94445ee49df0

小众化工具 brook
https://github.com/txthinking/brook