项目地址: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、安装依赖
[code]yum install python python-pip python-dev git curl wget build-essential openssl yum groupinstall "Development Tools"[/code]
3、安装python的组件
[code]pip install setuptools pymongo pyTelegramBotAPI flask apscheduler typing[/code]
4、安装MongoDB
这里利用yum进行安装,先创建/etc/yum.repos.d/mongodb-org-3.6.repo这个文件
[code]nano /etc/yum.repos.d/mongodb-org-3.6.repo[/code]
复制下面的内容
[code][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[/code]
保存,SSH终端运行下面的命令
[code]yum install -y mongodb-org[/code]
不出意外会安装成功
然后查看配置文件
[code]nano /etc/mongod.conf[/code]
看看是不是 bindIp是不是127.0.0.1
然后运行MongoDB
[code]service mongod start //启动 service mongod stop //停止 service mongod restart //重启[/code]
5、下载程序
我是下载到/www目录下
[code]cd /www
git clone https://github.com/BennyThink/ServerSan[/code]
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
[code]python weebhook.py python main.py TOKEN[/code]
如果没报错,说明是可以正常运行了
8、使用systemd来运行程序
webhook
创建文件
[code]nano /lib/systemd/system/sswebhook.service[/code]
输入下面的内容
[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
创建文件
[code]nano /lib/systemd/system/ssmain.service[/code]
输入下面的内容
[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
启动服务
[code]systemctl daemon-reload
systemctl enable ssmain.service
systemctl enable sswebhook.service
systemctl start ssmain.service
systemctl start sswebhook.service[/code]
删除程序
[code]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[/code]
发表评论