Centos 7 ngrok 加入系统服务,支持开启和关闭服务

编辑

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


JasonBlog

JasonBlog
请先登录后发表评论
  • 最新评论
  • 总共0条评论