Prometheus目前已经成为国、内外互联网行业,一款非常知名的免费监控工具,我们可以通过它,以及Prometheus官方、第三方提供的一些exporter工具,对系统、中间件、数据库等一系列的软、硬件的运行数据,进行采集、存储、监控和告警。但是,随着系统安全要求的越来越严格,prometheus的 targets 在没有任何安全防护的情况下可以被随意访问,是存在一定的安全风险的。
所以,下面我们就根据官方提供的说明,对Prometheus进行的表达式浏览器以及HTTP API的访问,进行一个“基础认证”(basic authentication,简称basic_auth)加固。
第一步,我们需要一个安装了Python3的操作系统,这里我使用的系统版本是 AlmaLinux 8.10。这个系统自带的Python3版本为3.6.8版本,我这里先使用二进制包,将版本升级到官方最新的3.13.0稳定版(大家可升级,可不升级,自己决定即可)。
# 安装必须的依赖包
dnf -y install gcc zlib* libffi-devel
# 下载并安装3.13.0版本的python3
tar -xf Python-3.13.0.tar.xz
cd Python-3.13.0/
./configure --prefix=/usr/local/python3 --enable-optimizations
make