Nginx反代实现Kibana登录认证功能
前言Kibana是一个流行的开源数据可视化和分析平台,它通常与Elasticsearch一起使用。然而,Kibana并不提供内置的身份验证和授权机制,这就需要我们自己实现。Nginx是一款高性能的Web服务器和反向代理服务器,具有灵活、可扩展的特点。通过配置Nginx反向代理,我们可以为Kibana添加身份验证和授权的功能,从而限制访问和保护数据安全。
实现步骤安装Nginx使用命令行或者包管理器安装Nginx,并启动服务。例如,在Ubuntu系统上执行以下命令:
123sudo apt-get updatesudo apt-get install nginxsudo systemctl start nginx
配置Nginx反向代理编辑Nginx配置文件/etc/nginx/nginx.conf,在http块中增加以下配置:
1234567891011121314server { listen 80; server_name kibana.example.com; location / { proxy_pass http://loc ...
Docker 安装和部署 Prometheus 和 Grafana 的简单教程
使用以下命令更新系统软件包并安装必要的依赖项:
12sudo yum updatesudo yum install -y yum-utils device-mapper-persistent-data lvm2
添加 Docker 的 Yum 软件源,使用以下命令:
1sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
安装 Docker CE(Community Edition):
1sudo yum install -y docker-ce
启动 Docker 服务并将其设置为在开机时自动启动:
12sudo systemctl start dockersudo systemctl enable docker
配置防火墙以允许 Prometheus 和 Grafana 流量通过。使用以下命令打开端口:
123sudo firewall-cmd --add-port=9090/tcp --permanentsudo firewall-cmd --add-p ...
运维工程师学习计划
特点项目
[x] Linux
[x] Shell
[x] Nginx
[x] Prometheus
[x] Mysql
[ ] Tomcat
[ ] Ansible
[ ] Golang
[ ] Python
[x] Docker
[ ] Kubernetes
计划Linux学习计划第一周:
第一天:Linux 操作系统和基本组件
第二天:Linux 命令行介绍
第三天:Linux 目录结构和基本文件操作
第四天:文本编辑器和文件管理器
第五天:文件权限和所有权
第六天-第七天:复习和测试(例如Linux 系统的安装、配置和启动)
第二周:
第一天:Linux 进程和任务管理
第二天:软件包管理工具(例如 yum 和 apt-get)
第三天:Linux 用户和组
第四天:shell 脚本编程
第五天:文件系统和磁盘管理
第六天-第七天:复习和测试(例如远程管理、网络配置和备份)
第三周:
第一天:Linux 网络和网络工具
第二天:Linux 安全和加密
第三天:Linux 日志管理
第四天:Linux 内核和模块
第五天:Linux 虚拟化和容器化
第六天-第七天:复 ...
Python3安装及设置环境变量
背景Python由荷兰数学和计算机科学研究学会的吉多·范罗苏姆于1990年代初设计,作为一门叫做ABC语言的替代品。
Centos检查当前系统是否已安装Python在终端中输入以下命令来检查系统是否已安装Python:
1python --version
如果Python已安装,终端将显示Python的版本号。如果未安装,将显示错误消息。
安装Python环境如果Python未安装,可以通过以下命令来安装:
1sudo yum install python3
这将安装最新版本的Python 3。
设置环境变量一旦Python被安装,需要将其添加到系统的环境变量中,以便能够在终端中直接访问它。可以使用以下命令来打开.bashrc文件:
1nano ~/.bashrc
在文件的末尾添加以下行:
1export PATH=$PATH:/usr/bin/python3
保存并关闭文件。
重新加载环境变量使用以下命令重新加载环境变量,以便使更改生效:
1source ~/.bashrc
验证Python环境输入以下命令来验证Python环境是否正确设置:
1python3 --version
终 ...
Maven 配置阿里源
什么是Maven?如今我们构建一个项目需要用到很多第三方的类库,如写一个使用Spring的Web项目就需要引入大量的jar包。一个项目Jar包的数量之多往往让我们瞠目结舌,并且Jar包之间的关系错综复杂,一个Jar包往往又会引用其他Jar包,缺少任何一个Jar包都会导致项目编译失败。
以往开发项目时,程序员往往需要花较多的精力在引用Jar包搭建项目环境上,而这一项工作尤为艰难,少一个Jar包、多一个Jar包往往会报一些让人摸不着头脑的异常。
而Maven就是一款帮助程序员构建项目的工具,我们只需要告诉Maven需要哪些Jar 包,它会帮助我们下载所有的Jar,极大提升开发效率。
什么是Maven仓库?Maven仓库用来存放Maven管理的所有Jar包。分为:本地仓库 和 中央仓库。
本地仓库:Maven本地的Jar包仓库。
中央仓库: Maven官方提供的远程仓库。
当项目编译时,Maven首先从本地仓库中寻找项目所需的Jar包,若本地仓库没有,再到Maven的中央仓库下载所需Jar包。
阿里云的maven仓库列表https://maven.aliyun.com/mvn/vie ...
Linux 清理缓存和缓存内容
背景在大多数情况下,Linux缓存耗用的内存量并不会对系统性能产生太大的影响,因为缓存可以提高系统的性能并加快访问速度。因此,除非你确实需要清除缓存以释放内存,否则最好不要将清理缓存作为常规操作。
操作
sync 命令将硬盘缓存数据同步到磁盘上,以保存文件。
echo 1 > /proc/sys/vm/drop_caches 这个命令会将页缓存清空。
echo 2 > /proc/sys/vm/drop_caches 这个命令将释放内存缓存和inode对象。
echo 3 > /proc/sys/vm/drop_caches 将清空缓存和内存缓存inode对象。
Docker搭建DNS服务器
前言 DNS服务器是(Domain Name System或者Domain Name Service)域名系统或者域名服务,域名系统为Internet上的主机分配域名地址和IP地址。
安装实验环境
IP
系统版本
角色
192.168.40.121
Ubuntu 22.10
DNS服务器
192.168.40.122
Ubuntu 22.10
测试机器
服务器端Docker安装更新软件包1root@121:~# apt-get update
安装docker1root@121:~# apt-get install -y docker.io
创建文件存储文件1root@121:~# mkdir -p /opt/docker/dns-server
创建容器运行dns服务器1root@121:~# docker run --name dns-server -d --restart=always --publish 53:53/tcp --publish 53:53/udp --publish 10000:10000/tcp --volume /opt/docker ...
Nginx 实现文件的上传与下载
前言Nginx是一款高性能、可靠的Web服务器软件,同时用作文件上传和下载
配置系统版本12[root@127 ~]# cat /etc/redhat-release CentOS Linux release 8.5.2111
创建用户12[root@127 ~]# useradd -s /sbin/nologin -M nginx #创建一个nginx用户,且不生成用户目录,和不能登录
创建目录12345678910111213141516171819202122232425[root@127 ~]# mkdir -p /export/share/upload/[root@127 ~]# mkdir -p /export/tmp/upload/[root@127 ~]# cd /export/tmp/upload/[root@127 upload]# mkdir 0 1 2 3 4 5 6 7 8 9 state[root@127 upload]# chown -R nginx:nginx /export/ #文件夹权限管理[root@127 export]# ...
程序员手记
Linux终端快捷键光标移动| 快捷键 | 作用 || ————- | ————————————————— || crtl+a | 移动到开头 || crtl+e | 移动到结尾 || alt+b | 向左移动一个单词 || alt+f | 向右移动一个单词 || crtl+b | 向左移动一个字符 || crtl+f | 向右移动一个字符 || esc+b | 向左移动一个单词 || esc+f | 向右移动一个单词 || ctrl+XX | 在上次光标和当前光标所在字符间跳转 || esc+t | 交换光标位置钱的两个单词 |
删除| 快捷键 | 作用 ...
Linux系统基线检查
1查询系统信息1. Linux 查看内核版本(大于2.6)(I级)12uname -acat /proc/version
2. Linux 查看系统版本12lsb_release -acat /etc/issue
2身份鉴别1. 系统是否存在重复的 UID(II级)UID(UserID)——用户标识号,它与用户名唯一对应,Linux 以 UID 作为用户的唯一标识,Linux中超级用户 root 的 UID 为 0,可以直接使用 id 命令查看当前用户的 UID。可以查看 passwd 文件以查看所有用户的 UID 等基本信息:
1vim /etc/passwd
3密码审查密码的生命周期最大为 90 天(III级)密码可以被立即修改(III级)密码的最小长度为 8 位(III级)密码到期的提醒,一般建议 7 天(III级)查看并修改 login.defs 文件:
1vim /etc/login.defs
检查并修改如下内容:
1234PASS_MAX_DAYS 90 #一个密码可使用的最大天数PASS_MIN_DAYS 0 #两次密码修改之间最小的间隔天数PASS_MIN_LEN 8 ...