服务器快到期了,续费巨贵,所以准备从阿里云迁出来,因为考虑到科学上网,看了一圈,比较了搬瓦工、PacificRack、vultr,最后还是选了 PacificRack ,便宜啊,一年9.99刀。

至于SS、SSR、V2ray,也同样听信了网上的各类测评,用着还行吧。

因为有域名,所以用了 WebSocket +TLS的方案

因为懒,所以用了一键脚本:v2ray带伪装一键脚本 ,也试了 v2ray一键搭建脚本及教程 但因为有绑ssl域名了,所以没有选TLS自动配置,所以在设置v2ray的伪装域名的时候总是不生效,也不知道什么原因,一气之下直接换了另一个脚本,域名也启用了一个新的,准备工作基本上就是这些。

PS:这些一键脚本基本上都会自动安装nginx,所以没有必要自己装nginx,在这里卡了好几个小时,nginx不管用lnmp装的集成环境还是yum装的,都启动失败。

PS2:用的这个脚本里,大概在安装BBR的时候,升级系统内核没有生效,因为BBR限制4.10以上的内核才能运行,所以速度上大概会有些影响,当然,不影响使用。要是想启用的,可以手动切换一下。

先确认一下系统内核

uname -r

用 ELRepo 源更新

rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-4.el7.elrepo.noarch.rpm
yum --enablerepo=elrepo-kernel install kernel-ml -y

完成后查看已经安装的内核

rpm -qa | grep kernel

修改一下引导,修改前先看下内核序号,从0开始的,像下面的

egrep ^menuentry /etc/grub2.cfg | cut -f 2 -d \'

CentOS Linux (4.20.0-1.el7.elrepo.x86_64) 7 (Core)
CentOS Linux (3.10.0-957.1.3.el7.x86_64) 7 (Core)
CentOS Linux (3.10.0-957.el7.x86_64) 7 (Core)
CentOS Linux (0-rescue-40b6222317d24a7690053e4070fadddb) 7 (Core)

CentOS Linux (4.20.0-1.el7.elrepo.x86_64) 7 (Core) 拍在第一位

grub2-set-default 0
reboot

开启BBR
     echo "tcp_bbr" >> /etc/modules-load.d/modules.conf
     echo "net.core.default_qdisc=fq" >> /etc/sysctl.conf
     echo "net.ipv4.tcp_congestion_control=bbr" >> /etc/sysctl.conf
     echo "3" > /proc/sys/net/ipv4/tcp_fastopen
     echo "net.ipv4.tcp_fastopen = 3" >> /etc/sysctl.conf

MAMP->mysql->allow network access to mysql

Navicat:新建连接->高级->使用套接字文件,填入下面的sock文件地址

/Applications/MAMP/tmp/mysql/mysql.sock

docker images // 查看docker下镜像

docker ps // 查看容器运行情况

docker run -itd --name mysql57 -p 3316:3306 -e MYSQL_PASSWORD=123456 mysql:5.7 // 运行mysql镜像把容器3306端口映射到本机3316端口&密码&名字设置

docker stop XXXX //停止容器运行

docker container rm XXX //删除

docker rmi XXX //删除镜像

docker exec -it mysql57 /bin/sh //windows 下运行

#PHP版对称加密,python重写的

#对称加密解密
def encrypt(data, key):
    str = base64.b64encode(data.encode(encoding='utf-8'))
    strArr = list(str.decode('utf-8'))
    strCount = len(strArr)
    for k,v in enumerate(key):
        if k<strCount:
            strArr[k] = strArr[k] + v
    return ''.join(strArr).replace('=','O0O0O').replace('+','o000o').replace('/','oo00o')

def decrypt(data, key):
    str = data.replace('O0O0O','=').replace('o000o','+').replace('oo00o','/')
    strArr = re.findall(r'.{2}', str)
    strCount = len(strArr)
    for k,v in enumerate(key):
        if k<=strCount and strArr[k] is not None and strArr[k][1] == v:
            strArr[k] = strArr[k][0]
    return base64.b64decode(''.join(strArr)).decode('utf-8')

class Symmetry
{
    /**
     * 简单对称加密算法之加密
     * @param String $string 需要加密的字串
     * @param String $skey   加密EKY
     * @return String
     */
    public static function encode($string = '', $skey = 'cxphp')
    {
        //先使用 MIME base64 对数据进行编码后的字符串转换为数组
        $strArr   = str_split(base64_encode($string));
        //计算数组中单元数目
        $strCount = count($strArr);
        //拼接上加密KEY
        foreach (str_split($skey) as $key => $value) {
            $key < $strCount && $strArr[$key] .= $value;
        }
        //替换字符返回加密字符串
        return str_replace(array('=', '+', '/'), array('O0O0O', 'o000o', 'oo00o'), join('', $strArr));
    }

    /**
     * 简单对称加密算法之解密
     * @param String $string 需要解密的字串
     * @param String $skey   解密KEY
     * @return String
     */
    public static function decode($string = '', $skey = 'cxphp')
    {
        //反替换字符串,在变为数组
        $strArr   = str_split(str_replace(array('O0O0O', 'o000o', 'oo00o'), array('=', '+', '/'), $string), 2);
        $strCount = count($strArr);
        foreach (str_split($skey) as $key => $value) {
            $key <= $strCount && isset($strArr[$key]) && $strArr[$key][1] === $value && $strArr[$key] = $strArr[$key][0];
        }
        return base64_decode(join('', $strArr));
    }
}

centos系统自带python是2.7.5的,升级到3.7.3

安装前需要安装 gcc和  libffi-devel

yum install -y gcc  libffi-devel

wget https://www.python.org/ftp/python/3.7.0/Python-3.7.0.tgz

tar -xzvf Python-3.7.0.tgz

cd Python-3.7.0

./configure --prefix=/usr/local/python37

make

make install

升级后系统默认的还是2.*版本,pip也会报错command not found

ln -sb /usr/local/python37/bin/python37 /usr/bin/python

ln -sb /usr/local/python37/bin/pip /usr/bin/pip

yum命令失效

修改 vi /usr/bin/yum

 !/usr/bin/python    改成    !/usr/bin/python2.7.5

在 pip 安装uwsgi pipenv的时候报错,控制超时, 具体参数为 --default-timeout=100, 后面的时间可以自己指定