编辑
vim /etc/rc.d/init.d/ngrok
ngrok内容
#!/bin/bash
#chkconfig: - 99 01
#description:ngrok
case "$1" in
start)
echo "start ngrok service.."
cd /usr/local/ngrok/
setsid ./bin/ngrokd -tlsKey=server.key -tlsCrt=server.crt -domain="abc.club" -httpAddr=":80" -httpsAddr=":443" -tunnelAddr=":4443"
;;
*)
exit 1
;;
esac
###参数说明:
### cd /usr/local/ngrok/:进入ngrok目录
### setsid:开始没有这个 结果关闭窗口 发现服务停掉了 加上目前好用
### setsid ./bin/ngrokd -tlsKey=server.key -tlsCrt=server.crt -domain="abc.club" -httpAddr=":80" -httpsAddr=":443" -tunnelAddr=":4443" :启动ngrok服务端命令
------自己的配置--------------------------------------------------------
/usr/local/ngrok/bin/ngrokd -domain="home.jasonlxl.top" -tlsCrt="/usr/local/ngrok/server.crt" -tlsKey="/usr/local/ngrok/server.key" -tunnelAddr=":4443" -httpAddr=":7080"
nohup /usr/local/ngrok/bin/ngrokd -domain="home.jasonlxl.top" -tlsCrt="/usr/local/ngrok/server.crt" -tlsKey="/usr/local/ngrok/server.key" -tunnelAddr=":4443" -httpAddr=":7080" &
nohup /usr/local/ngrok/bin/ngrokd -domain="home.jasonlxl.top" -tlsCrt="/usr/local/ngrok/server.crt" -tlsKey="/usr/local/ngrok/server.key" -tunnelAddr=":4443" -httpAddr=":7080" > run.log 2>&1 &
-httpsAddr=":8043"
nohup /opt/ngrok/ngrok -config /opt/ngrok/ngrok.cfg start-all &
-----------------------------------------------------------------------------
给该配置文件权限
chmod 755 ngrok
注册为系统服务
chkconfig --add ngrok
然后查看是否添加成功
chkconfig
启动
service ngrok start
若能出现和之前直接打命令出现的监听30s界面 则添加成功
设置为开机自启
再添加为系统服务后 ngrok状态都是off 所以需要设置为开机自启
systemctl enable ngrok.service //加入开机启动
systemctl daemon-reload //重新加载配置文件
重启服务器 直接开启客户端检测
第二种方式
在CentOS 7上利用systemctl添加自定义系统服务。
使linux服务开机自启动,进程关闭后自动启动,注意下列指令中的配置文件需要写绝对路径。
[Unit]
Description=Share local port(s) with ngrok
After=syslog.target network.target
[Service]
PrivateTmp=true
Type=simple
Restart=always
RestartSec=1min
StandardOutput=null
StandardError=null
ExecStart=/usr/local/ngrok/bin/ngrokd -tlsKey=/usr/local/ngrok/assets/server/tls/snakeoil.key -tlsCrt=/usr/local/ngrok/assets/server/tls/snakeoil.crt -domain=xxx网址 -httpAddr=:8081 -httpsAddr=:443 -tunnelAddr=:8083 %i
ExecStop=/usr/bin/killall ngrok
[Install]
WantedBy=multi-user.target
将上面的指令保存为ngrok.service并移动到 /usr/lib/systemd/system/
systemctl enable ngrok.service //加入开机启动
systemctl daemon-reload //重新载入 systemd,扫描新的或有变动的单元
systemctl 是管制服务的主要工具, 它整合了chkconfig 与 service功能于一体。
systemctl is-enabled iptables.service
systemctl is-enabled servicename.service #查询服务是否开机启动
systemctl enable *.service #开机运行服务
systemctl disable *.service #取消开机运行
systemctl start *.service #启动服务
systemctl stop *.service #停止服务
systemctl restart *.service #重启服务
systemctl reload *.service #重新加载服务配置文件
systemctl status *.service #查询服务运行状态
systemctl --failed #显示启动失败的服务
注:*代表某个服务的名字,如http的服务名为httpd
本文为Jason原创文章,转载无需和我联系,但请注明来自JasonBlog jasontech.top