1、安装环境
    安装gcc和git(用于下载ngrok源码)
    yum install gcc -y yum install git -y
    2、安装go语言环境
    yum install -y mercurial git bzr subversion golang golang-pkg-windows-amd64 golang-pkg-windows-386
    或者
    wget https://storage.googleapis.com/golang/go1.8.linux-amd64.tar.gz
    解压安装:
    tar -C /usr/local/ -zxvf go1.8.linux-amd64.tar.gz
    添加环境变量,编辑:vi /etc/profile,在最后添加:
    #go lang export GOROOT=/usr/local/go export PATH=$PATH:$GOROOT/bin
    使环境变量生效:
    source /etc/profile
    检查是否安装成功:
    go version
    3、检查环境安装
    git —version //( >= 1.7 ) go version
    4、在服务器上搭建Ngrok服务
    4.1.下载ngrok源码
    git clone https://github.com/inconshreveable/ngrok.git
    4.2.生成证书 此步骤建议略过,使用免费的证书不要自己生成,否则会提示证书不安全
    cd ngrok

    export NGROK_DOMAIN=”acgcall.com”
    openssl genrsa -out rootCA.key 2048
    openssl req -x509 -new -nodes -key rootCA.key -subj “/CN=$NGROK_DOMAIN” -days 5000 -out rootCA.pem
    openssl genrsa -out device.key 2048
    openssl req -new -key device.key -subj “/CN=$NGROK_DOMAIN” -out device.csr
    echo subjectAltName = IP:124.156.135.95 > extfile.cnf
    openssl x509 -req -in device.csr -CA rootCA.pem -CAkey rootCA.key -CAcreateserial -out device.crt -days 5000 -extfile extfile.cnf

    5.3.将新生成的证书替换,执行下面命令后 “y” 回车 一行一行执行代码!
    这里建议直接使用安全的证书
    cp rootCA.pem assets/client/tls/ngrokroot.crt
    cp device.crt assets/server/tls/snakeoil.crt
    cp device.key assets/server/tls/snakeoil.key

    5、编译生成ngrokd(服务端)
    GOOS=linux GOARCH=amd64 make release-server
    6、编译生成ngrok(客户端)
    GOOS=windows GOARCH=amd64 make release-client

    7.开启远程服务
    7、开启远程服务
    cd ngrok sudo ~/ngrok/bin/ngrokd -domain=”acgcall.com” -httpAddr=”:80” -httpsAddr=”:443” -tunnelAddr=”:8083” &

    — cd ngrok sudo ~/ngrok/bin/ngrokd -domain=”iloser.cn” -httpAddr=”:80” -httpsAddr=”:443” -tunnelAddr=”:8083” &

    服务器后台开机启动运行ngrok服务端:
    1.以下内容新建一个 start.sh 文件 放到 ~/ngrok/start.sh
    ~/ngrok/bin/ngrokd -domain=”acgcall.com” -httpAddr=”:80” -httpsAddr=”:443” -tunnelAddr=”:8083” &
    给权限:
    chmod 755 ~/ngrok/start.sh
    2.新建ngrok启动脚本文件
    sudo vi /etc/init.d/ngrok
    文件内容:
    #!/bin/sh
    # chkconfig: 2345 10 90
    # description: ngrok
    ###BEGIN INIT INFO
    #Provides:ngrok
    #Required-Start:
    #Required-Stop:
    #Default-Start:2 3 4 5
    #Default-Stop:0 1 6
    #Short-Description: Start or stop the ngrok Proxy.
    ###END INIT INFO
    ngrok_path=~/ngrok/
    case “$1” in
    start)
    echo “start ngrok service..”
    sh ${ngrok_path}/start.sh
    ;;
    *)
    exit 1
    ;;
    esac
    提示 : 运行sudo vi /etc/init.d/ngrok之后 !!直接按键盘 I 进入编辑模式,然后复制下面内容 然后 “esc” “:” “wq” “!” “回车” 意思是保存退出!
    3.ngrok脚本文件 给权限
    cd /etc/init.d chmod 755 ngrok
    4.添加启动服务 ngrok
    chkconfig —add ngrok
    5.测试服务是否能启动成功
    service ngrok start
    —权限不够使用 chmod a+wrx /etc/init.d/ngrok
    6.查看自启动的服务 是否有 nrgok !!
    chkconfig