CentOS7 ngrok下载、编译、安装

需要软件依赖:

yum -y install zlib-devel openssl-devel perl hg cpio expat-devel gettext-devel curl curl-devel perl-ExtUtils-MakeMaker hg wget gcc gcc-c++


安装git:

yum -y install git


下载与安装go语言:

http://www.golangtc.com/download

我下载得是:

go1.7.4.linux-amd64.tar.gz

////////////////

解压:

tar -zxvf go1.4.2.linux-386.tar.gz

mv go /usr/local/

制作go语言命令软连接:

ln -s /usr/local/go/bin/* /usr/bin/

////////////////////

使用git克隆ngrok项目

cd /usr/local/

git clone https://github.com/inconshreveable/ngrok.git

////////////////////

编译ngrok前得准备:

cd ngrok

export GOPATH=/usr/local/ngrok/

export NGROK_DOMAIN="ngrok.gamecc.cn"

这里得NGROK_DOMAIN请设置为自己得主机地址(域名)

为域名生成证书:

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 server.key 2048

openssl req -new -key server.key -subj "/CN=$NGROK_DOMAIN" -out server.csr

openssl x509 -req -in server.csr -CA rootCA.pem -CAkey rootCA.key -CAcreateserial -out server.crt -days 5000

上面得$NGROK_DOMAIN其实是刚才export得环境变量,我们如果要手动输入得话也行。那么上面得export NGROK_DOMAIN="xxx.xxx.xxx"则无需设置。

拷贝证书到指定位置:

cp rootCA.pem assets/client/tls/ngrokroot.crt

cp server.crt assets/server/tls/snakeoil.crt

cp server.key assets/server/tls/snakeoil.key

修改logger.go源代码,天朝得服务器需要修改,香港或则美国的主机可以忽略这一步:

vim /usr/local/ngrok/src/ngrok/log/logger.go

log "github.com/keepeye/log4go"

/////////////////////////////////////////////////////////////////////////

开始编译:

指定编译环境变量

cd/usr/local/go/src

GOOS=linux GOARCH=amd64 make

这里的amd64是代表英特尔或者amd的64位cpu架构(因为amd64架构率先推出桌面版的64位cpu,所以在linux中,为了纪念这个事情,桌面级别的64bit架构cpu都使用这个amd64代号加以说明)

编译ngrok服务器端

cd/usr/local/ngrok

GOOS=linux GOARCH=amd64 make release-server

编译ngrok客户端

GOOS=linux GOARCH=amd64 make release-client

编译windows系统版本的客户端

GOOS=windows GOARCH=amd64 make release-client

你可能感兴趣的:(CentOS7 ngrok下载、编译、安装)