搬瓦工安装ngrok的服务器端,兼容ngrok-libev客户端
2017-10-02 17:37
423 查看
用的是10刀一年的vps,安装centos6.8 32位
需要手动改一下启动脚本 /etc/init.d/ngrokd,centos6解析单引号有问题,都改成引用变量,例如:
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
DAEMON=/opt/ngrok/bin/ngrokd
LOGFILE=/var/log/ngrokd.log
HTTP_ADDR=":80"
HTTPS_ADDR=":443"
DAEMON_ARGS="-tlsKey /opt/ngrok/device.key -tlsCrt /opt/ngrok/device.crt -domain $NGROK_DOMAIN -httpAddr $HTTP_ADDR -httpsAddr $HTTPS_ADDR -log $LOGFILE"
安装攻略:
用过我MOD版的固件的都会发现, 在ngrok那里有两个程序可以切换,一个是ngrok-c, 另一个是ngrok-libev. 从实际使用来看, ngrok-libev 占用的资源更少,效率更高. 这也是我一直在使用的. 但是ngrok 官方源码是不支持 ngrok-libev 客户端的. 所以我得不能直接 yum install xxxx 来安装ngrok, 要自己编译.
本文以CentOS系统为例,其它Linux发行版也可参考.
首先你得有一个服务器或vps. 由于ngrok服务端实际上是一种代理的角色,因此,对于国内用户来说, 国内服务器的速度会优于国外的.
这里为什么git clone的是我mod版的ngrok? mod版主要是修复了默认监听ipv6 IP的问题, 以及添加了对ngrok-libev 客户端的支持.
ssh登录进服务器:
开始编译:
CentOS 7用户看这里:
CentOS 6用户看这里:
如果你启用了防火墙,比如centos 7自带的firewalld,
执行以下命令允许ngrokd端口通过防火墙:
–EOF
需要手动改一下启动脚本 /etc/init.d/ngrokd,centos6解析单引号有问题,都改成引用变量,例如:
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
DAEMON=/opt/ngrok/bin/ngrokd
LOGFILE=/var/log/ngrokd.log
HTTP_ADDR=":80"
HTTPS_ADDR=":443"
DAEMON_ARGS="-tlsKey /opt/ngrok/device.key -tlsCrt /opt/ngrok/device.crt -domain $NGROK_DOMAIN -httpAddr $HTTP_ADDR -httpsAddr $HTTPS_ADDR -log $LOGFILE"
安装攻略:
前言
用过我MOD版的固件的都会发现, 在ngrok那里有两个程序可以切换,一个是ngrok-c, 另一个是ngrok-libev. 从实际使用来看, ngrok-libev 占用的资源更少,效率更高. 这也是我一直在使用的. 但是ngrok 官方源码是不支持 ngrok-libev 客户端的. 所以我得不能直接 yum install xxxx 来安装ngrok, 要自己编译.本文以CentOS系统为例,其它Linux发行版也可参考.
首先你得有一个服务器或vps. 由于ngrok服务端实际上是一种代理的角色,因此,对于国内用户来说, 国内服务器的速度会优于国外的.
这里为什么git clone的是我mod版的ngrok? mod版主要是修复了默认监听ipv6 IP的问题, 以及添加了对ngrok-libev 客户端的支持.
1. 编译安装ngrok
ssh登录进服务器:cd /opt/ git clone https://github.com/ihacklog/ngrok.git cd ngrok chmod a+x gen-ssl.sh #编辑gen-ssl.sh 把 YOUR-TUNEL-DOMAIN 换成你自己的域名,如 t.abc.com vim gen-ssl.sh #生成自签名ssl证书 ./gen-ssl.sh
开始编译:
# 没有安装go的先安装一下go环境: dnf install -y go # 或 yum install -y go make release-server release-client # 如果不出意外,你应该可以看到编译好的文件, ls bin 看看
2. 安装并启动服务
CentOS 7用户看这里:#如果是centos 7, 把systemd的服务文件copy到相应目录: cp ngrokd.service /usr/lib/systemd/system #编辑文件,把 YOUR-TUNEL-DOMAIN 更改为你自己的域名,如 t.abc.com #如果需要调整,端口把默认的:80 和 :443 改成你想要的端口即可 vim /usr/lib/systemd/system/ngrokd.service # 开启服务 systemctl enable ngrokd # 启动服务 systemctl start ngrokd # 查看一下是否显示正在运行(running) systemctl status ngrokd
CentOS 6用户看这里:
# 如果是centos 6.x 请按下面的操作添加服务 cp ngrokd.sh /etc/init.d/ngrokd #编辑文件,把 YOUR-TUNEL-DOMAIN 更改为你自己的域名,如 t.abc.com vim /etc/init.d/ngrokd #如果提示没有chkconfig 安装一下即可 chkconfig ngrokd on #启动服务, 如果提示没有nohup ,安装一下即可 /etc/init.d/ngrokd start #查看状态 /etc/init.d/ngrokd status
3. 允许端口通过防火墙
如果你启用了防火墙,比如centos 7自带的firewalld,执行以下命令允许ngrokd端口通过防火墙:
firewall-cmd --zone=public --add-port=4443/tcp --permanent firewall-cmd --reload
–EOF
相关文章推荐
- redhat下安装mysql 5.6.20,解压zip包,查看已经安装过的mysql,卸载rpm安装包,安装mysql服务器端和客户端,修改mysql用户名,登陆mysql,启动关闭mysql
- 用SHELL脚本自动化安装Nagios服务器端和客户端的
- arcgis 10.1 32位desktop在服务器上安装oracle客户端和服务器端,plsql连接不上问题解决
- 用SHELL脚本自动化安装Nagios服务器端和客户端的
- 如何区分安装的oracle数据库是客户端还是服务器端?
- Oracle服务器端和客户端安装配置
- 协议适配器错误和ORA-01017: invalid username/password; logon denied,oracle服务器端和客户端同时安装问题解决
- FOXHIS PMS前台西软服务器端和客户端安装教程
- win7下安装svn服务器端及客户端详细步骤
- Windows环境下Sybase12.5服务器端配置、客户端的安装与配置
- win7下安装svn服务器端及客户端详细步骤
- 在RHEL7上安装Oracle 12.1.0.2的服务器端或者客户端时报需要compat-libstdc++包
- 客户端出错:无法在数据表视图中显示该列表: 没有安装与 Windows SharePoint Services 兼容的数据表组件。
- iscsi服务器端和客户端安装
- 嵌入式 linux 开发,Ubuntu OS 进行 NFS 服务器端与客户端的安装
- win7 64下暗黑世界V1.1 服务器端及客户端的安装及运行 成功
- 在不安装oracle客户端的情况下pl sql dev 连接 oracle 服务器端
- svn服务器端与客户端安装配置
- SVN服务器端、客户端安装以及集成到eclipse的详细步骤(转)
- win7 64下暗黑世界V1.1 服务器端及客户端的安装及运行 成功