[转发]ServerSan – 在TG上查看Linux/Windows服务器状态的机器人

项目地址:https://github.com/BennyThink/ServerSan

作者:@BennyThink

可在TG上直接查看服务器的状态,包括网络、CPU、内存等信息,具体的截图可在项目地址内看到,下面说说怎么搭建一个属于自己的ServerSan机器人(折腾了一个晚上,目前这个项目还在开发阶段,有各种莫名的错误,作者正在一步步完善,所以遇到什么问题,请不要问我,直接联系作者或者Github上提交issue)

我自己搭建的机器人:https://t.me/server_ckeck_bot

官方部署教程:https://github.com/BennyThink/ServerSan/blob/master/DEPLOY.MD

我的环境:内存1G,CentOS7.2,装了宝塔面板,装了网站运行环境,这个程序要能被外网访问。

安装步骤

1、新建一个bot

打开:BotFather,输入 /newbot

输入机器人的名字,发送

输入机器人用户名,必须以_bot结尾!

设置机器人的命令列表,点击上图红框内的内容后,复制下面的内容,后面的描述可以自行翻译成中文!

start – What’s this bot?
help – Help me please!
delete – Delete server info
stat – Show server info
add – Add server

2、安装依赖

yum install python python-pip python-dev git curl wget build-essential opensslyum groupinstall "Development Tools"

3、安装python的组件

pip install setuptools pymongo pyTelegramBotAPI flask apscheduler typing

4、安装MongoDB

这里利用yum进行安装,先创建/etc/yum.repos.d/mongodb-org-3.6.repo这个文件

nano /etc/yum.repos.d/mongodb-org-3.6.repo

复制下面的内容

[mongodb-org-3.6]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.6/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-3.6.asc

保存,SSH终端运行下面的命令

yum install -y mongodb-org

不出意外会安装成功

然后查看配置文件

nano /etc/mongod.conf

看看是不是 bindIp是不是127.0.0.1

然后运行MongoDB

service mongod start //启动service mongod stop //停止service mongod restart //重启

5、下载程序

我是下载到/www目录下

cd /www
git clone https://github.com/BennyThink/ServerSan

6、配置

编辑程序根目录下的ss-agent.py,修改API为你的URL,最好是HTTPS的

推荐使用LET的证书,相关签发教程可在本博客中找到

编辑serversan/main.py,找到第75行,把这行的下载地址改为ss-agent.py这个文件的下载地址

编辑serversan目录下的 weebhook.py 文件,将证书的私人密钥和完整的证书配置好

  • path:你存放证书的位置,我这里存在root目录下了
  • ladnfull.cer:你完整的证书链
  • ladn.key:证书的私密钥匙
  • host:修改成你API的地址

7、测试

分别运行,注意main.py后面空格加你机器人的Token

python weebhook.pypython main.py TOKEN

如果没报错,说明是可以正常运行了

8、使用systemd来运行程序

webhook

创建文件

nano /lib/systemd/system/sswebhook.service

输入下面的内容

[Unit]
Description=ServerSan Telegram Bot – Webhook
After=network.target network-online.target nss-lookup.target

[Service]
Restart=on-failure
Type=simple
ExecStart=/usr/bin/python /www/ServerSan/serversan/webhook.py

[Install]
WantedBy=multi-user.target

※注意ExecStart那里的路径修改成你自己的路径

main program

创建文件

nano /lib/systemd/system/ssmain.service

输入下面的内容

[Unit]
Description=ServerSan Telegram Bot – main program
After=network.target network-online.target nss-lookup.target

[Service]
Restart=on-failure
Type=simple
ExecStart=/usr/bin/python /home/ServerSan/serversan/main.py TOKEN

[Install]
WantedBy=multi-user.target

※注意替换TOKEN

启动服务

systemctl daemon-reload
systemctl enable ssmain.service
systemctl enable sswebhook.service
systemctl start ssmain.service
systemctl start sswebhook.service

删除程序

systemctl stop ssmain.service
systemctl stop sswebhook.service
systemctl disable ssmain.service
systemctl disable sswebhook.service
rm /lib/systemd/system/ssmain.service
rm /lib/systemd/system/sswebhook.service
systemctl daemon-reload
rm -r /home/ServerSan

 

声明:本文为原创,作者为 Mr.Kevin,转载时请保留本声明及附带文章链接:https://www.hilinux.cn/code/serversan-20180401.html

发表评论