In modern enterprise networks, website security and reliability are crucial. An inadvertent SSL certificate expiration may cause problems on the website and have a serious impact on the company's business. For this problem, manually detecting the certificate status of each domain name and machine takes a lot of time and effort. In order to solve this problem, I would like to introduce to you a lightweight monitoring solution that automatically monitors SSL certificate expiration - Domain Admin.
Domain Admin is a domain name and SSL certificate monitoring platform based on Python + Vue3.js technology stack. It can help us automatically detect whether the SSL certificates of multiple business domain names have expired. Certificates for different business domain names can be applied for from different platforms, and Domain Admin can seamlessly integrate these different platforms and notify us in advance before the certificate expires.
By using Domain Admin, we can ensure the security and reliability of the website, avoid online access abnormalities caused by expired certificates, and avoid the embarrassing scene of being scolded by the boss.
Function description
- Core functions: Expiration monitoring of domain names and SSL certificates, expiration reminders
- Supported certificates: single domain name certificate, multi-domain name certificate, wildcard certificate, IP certificate, self-signed certificate
- Certificate deployment: single host deployment, multi-host deployment, dynamic host deployment
- Notification channels: Support email, Webhook, corporate WeChat, DingTalk, Feishu and other notification methods
- Supported platforms: macOS, Linux, Windows
- Accessibility: Let's Encrypt SSL Certificate Application
Install
Administrator's default account and password
Account: admin
Password: 123456
Strongly recommended: Change the default password after logging in to the system
Method 1: pip installation
Operating environment:
Python >= 2.7 或者 Python >= 3.4
You can use pyenv + venv to manage multiple Python versions and isolate virtual environments
$ python3 --version
Python 3.7.0
Create a virtual environment named venv
$ python3 -m venv venv
Activate virtual environment
$ source venv/bin/activate
Install and start domain-admin [linux/macos installation]
$ pip install gunicorn domain-admin
$ gunicorn --bind '127.0.0.1:8000' 'domain_admin.main:app'
Install domain-admin [windows installation]
$ pip install waitress domain-admin
$ waitress-serve --listen=127.0.0.1:8000 'domain_admin.main:app'
address:http://127.0.0.1:8000
Upgrade to the latest version
$ pip3 install -U domain-admin -i https://pypi.org/simple
Method 2: docker startup
$ docker run -p 8000:8000 mouday/domain-admin
#后台运行
$ docker run -d -p 8000:8000 mouday/domain-admin
#本地文件夹和容器文件夹映射
$ docker run \
-v $(pwd)/database:/app/database \
-v $(pwd)/logs:/app/logs \
-p 8000:8000 \
--name domain-admin \
mouday/domain-admin:latest
Method 3: Download the source code and install it
Download address: https://github.com/mouday/domain-admin/releases
This method is only suitable for secondary development. It is recommended to use pip installation or docker startup to experience it.
For example: Take v1.5.8 as an example
Each release will include the following code packages
domain-admin-1.5.8.tar.gz # Complete source code package, including packaged H5 and web code domain_admin
-1.5.8-py2.py3-none-any.whl # pip package, you can install
domain- directly admin-mini-v1.5.8.tar.gz # H5 source code
domain-admin-web-v1.5.8.tar.gz # web source code
Source code(zip) # Python source code for windows
Source code(tar.gz) # Python source code is suitable for linux/mac
Download domain-admin-1.5.8.tar.gz
wget https://github.com/mouday/domain-admin/releases/download/v1.5.8/domain-admin-1.5.8.tar.gz
cd domain-admin
Install dependencies
pip install -r requirements.txt
Start running
$ gunicorn --bind '127.0.0.1:8000' 'domain_admin.main:app'
-
Project address:
Github: https://github.com/mouday/domain-admin
Domestic mirror: https://gitee.com/mouday/domain-admin -
发布渠道:
pypi:https://pypi.org/project/domain-admin
docker:https://hub.docker.com/r/mouday/domain-admin
releases:https://github.com/mouday/domain-admin/releases -
Use documentation:
github: https://mouday.github.io/domain-admin/
gitee: https://mouday.gitee.io/domain-admin/
readthedocs: https://domain-admin.readthedocs.io