当前位置:首页 > 技术分析 > 正文内容

【LDAP生产实战】JumpServer采用LDAP统一账户认证体系应用实践

ruisui882个月前 (04-15)技术分析38

#文章首发挑战赛# #2023年度创作挑战#
统一认证系统:OpenLdap+Phpldapadmin搭建及应用

一文教你如何用Openssh和LDAP打造安全登录认证系统!

一文教你如何用OpenLDAP实现账户统一管理与TLS加密通信!

JumpServer

JumpServer 是广受欢迎的开源堡垒机,是符合 4A 规范的专业运维安全审计系统。JumpServer 帮助企业以更安全的方式管控和登录所有类型的资产,实现事前授权、事中监察、事后审计,满足等保合规要求。

JumpServer 堡垒机支持的资产类型包括:

  • SSH (Linux / Unix / 网络设备 等)
  • Windows (Web 方式连接 / 原生 RDP 连接)
  • 数据库 (MySQL / MariaDB / Oracle / SQLServer / PostgreSQL / ClickHouse 等)
  • NoSQL (Redis / MongoDB 等)
  • GPT (ChatGPT 等)
  • 云服务 (Kubernetes / VMware vSphere 等)
  • Web 站点 (各类系统的 Web 管理后台)
  • 应用 (通过 Remote App 连接各类应用)

环境要求

OS/Arch

Architecture

Linux Kernel

Offline Name

linux/amd64

x86_64

>= 4.0

jumpserver-offline-installer-v3.9.3-amd64.tar.gz

linux/arm64

aarch64

>= 4.0

jumpserver-offline-installer-v3.9.3-arm64.tar.gz

linux/loong64

loongarch64

== 4.19

jumpserver-offline-installer-v3.9.3-loong64.tar.gz

yum update
yum install -y wget curl tar gettext iptables

内核检查

检查当前内核发现是3.10,需要升级到4.0以上

[root@localhost ~]# uname -r
3.10.0-862.el7.x86_64

内核升级

#导入仓库源
rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm
#安装 LT 版本
yum --enablerepo=elrepo-kernel install kernel-lt-devel kernel-lt -y
# 查看内核启动序号
[root@localhost ~]# awk -F\' '$1=="menuentry " {print $2}' /etc/grub2.cfg
CentOS Linux (5.4.265-1.el7.elrepo.x86_64) 7 (Core)
CentOS Linux (3.10.0-1160.105.1.el7.x86_64) 7 (Core)
CentOS Linux (3.10.0-862.el7.x86_64) 7 (Core)
CentOS Linux (0-rescue-4896cbe4842441d5812d660e7d69f2da) 7 (Core
# 设置启动序号
[root@localhost ~] grub2-set-default 0

# 重启
reboot

# 检查内核版本
[root@localhost ~]# uname -r
5.4.265-1.el7.elrepo.x86_64

安装部署

JumpServer 可以通过在线和离线安装,本文主要通过在线安装方式实现,

curl -sSL https://resource.fit2cloud.com/jumpserver/jumpserver/releases/latest/download/quick_start.sh | bash

安装结果

[root@localhost ~]# jmsctl --help

JumpServer Deployment Management Script

Usage: 
  ./jmsctl.sh [COMMAND] [ARGS...]
  ./jmsctl.sh --help

Installation Commands: 
  install           Install JumpServer
  upgrade [version] Upgrade JumpServer
  check_update      Check for updates JumpServer
  reconfig          Reconfiguration JumpServer

Management Commands: 
  start             Start   JumpServer
  stop              Stop    JumpServer
  restart           Restart JumpServer
  status            Check   JumpServer
  down              Offline JumpServer
  uninstall         Uninstall JumpServer

More Commands: 
  load_image        Loading docker image
  backup_db         Backup database
  restore_db [file] Data recovery through database backup file
  raw               Execute the original docker-compose command
  tail [service]    View log
[root@localhost ~]# jmsctl status
NAME         IMAGE                                 COMMAND                  SERVICE   CREATED         STATUS                   PORTS
jms_celery   docker.io/jumpserver/core-ce:v3.9.3   "./entrypoint.sh sta…"   celery    6 minutes ago   Up 6 minutes (healthy)   8080/tcp
jms_chen     docker.io/jumpserver/chen:v3.9.3      "./entrypoint.sh"        chen      6 minutes ago   Up 6 minutes (healthy)   8082/tcp
jms_core     docker.io/jumpserver/core-ce:v3.9.3   "./entrypoint.sh sta…"   core      6 minutes ago   Up 6 minutes (healthy)   8080/tcp
jms_kael     docker.io/jumpserver/kael:v3.9.3      "./entrypoint.sh"        kael      6 minutes ago   Up 6 minutes (healthy)   8083/tcp
jms_koko     docker.io/jumpserver/koko:v3.9.3      "./entrypoint.sh"        koko      6 minutes ago   Up 6 minutes (healthy)   0.0.0.0:2222->2222/tcp, :::2222->2222/tcp, 5000/tcp
jms_lion     docker.io/jumpserver/lion:v3.9.3      "./entrypoint.sh"        lion      6 minutes ago   Up 6 minutes (healthy)   4822/tcp, 8081/tcp
jms_magnus   docker.io/jumpserver/magnus:v3.9.3    "./entrypoint.sh"        magnus    6 minutes ago   Up 6 minutes (healthy)   0.0.0.0:33061-33062->33061-33062/tcp, :::33061-33062->33061-33062/tcp, 0.0.0.0:63790->63790/tcp, :::63790->63790/tcp
jms_mysql    jumpserver/mariadb:10.6               "docker-entrypoint.s…"   mysql     8 minutes ago   Up 8 minutes (healthy)   3306/tcp
jms_redis    jumpserver/redis:6.2                  "docker-entrypoint.s…"   redis     8 minutes ago   Up 8 minutes (healthy)   6379/tcp
jms_web      docker.io/jumpserver/web:v3.9.3       "/docker-entrypoint.…"   web       6 minutes ago   Up 6 minutes (healthy)   0.0.0.0:80->80/tcp, :::80->80/tcp
  • 首次安装后需要修改配置文件,定义 DOMAINS 字段后即可正常使用
  • 如果服务器是一键安装并且旧版本就已经使用 JumpServer 开启了 HTTPS,则不需要进行任何更改。
  • 需要使用 IP 地址来访问 JumpServer 的场景,可以根据自己的 IP 类型来填写 config.txt 配置文件中 DOMAINS 字段为公网 IP 还是内网 IP。
  # 打开config.txt 配置文件,定义 DOMAINS 字段
  vim /opt/jumpserver/config/config.txt 

  # 可信任 DOMAINS 定义,
  # 定义可信任的访问 IP, 请根据实际情况修改, 如果是公网 IP 请改成对应的公网 IP,
  # DOMAINS="demo.jumpserver.org"    # 使用域名访问
  # DOMAINS="172.17.200.191"         # 使用 IP 访问
  # DOMAINS="demo.jumpserver.org,172.17.200.191"    # 使用 IP 和 域名一起访问
  DOMAINS=

相关命令

cd /opt/jumpserver-installer-v3.9.3

# 启动
./jmsctl.sh start

# 停止
./jmsctl.sh down

# 卸载
./jmsctl.sh uninstall

# 帮助
./jmsctl.sh -h

访问

地址: http://:<服务运行端口>
用户名: admin
密码: admin

LDAP认证方式配置

1、登录phpLDAPadmin 客户端新增用户

2、登录JumpServer :系统设置->认证设置->LDAP 进行配置。

测试连接提示测试成功

3、测试登录报错误,原因是刚配置完成未进行提交导致,测试登录必须先提交。

4、导入LDAP用户

5、同步设置,每日定时同步LDAP用户

校验

使用LDAP用户进行登录,在来源中可以明确LDAP,自此JumpServer采用LDAP统一账户认证体系的配置完成

扫描二维码推送至手机访问。

版权声明:本文由ruisui88发布,如需转载请注明出处。

本文链接:http://www.ruisui88.com/post/3491.html

分享给朋友:

“【LDAP生产实战】JumpServer采用LDAP统一账户认证体系应用实践” 的相关文章

Beta版Linux Mint“Xia”发行版22.1发布

IT之家 12 月 13 日消息,Beta 版 Linux Mint“Xia” 22.1 昨日(12 月 12 日)发布,新版本基于 Ubuntu 24.04,内核版本为 Linux 6.8,长期支持将持续到 2029 年,为用户提供可靠稳定的使用体验。新版本在软件包管理方面,主要弃用了传统的 ap...

深入理解Vue.js组件通信:父子组件与子父组件数据交互详解

什么是Vue组件通讯 Vue.js 组件通信是指在 Vue 应用的不同组件之间进行数据交换和状态同步的过程。由于 Vue 的组件是基于单文件组件(SFCs)的模块化设计,每个组件都有自己的作用域,因此它们不能直接访问彼此的数据。为了使组件之间能够协同工作,Vue 提供了几种不同的通信方式。以下是 V...

一次Java内存占用高的排查案例,解释了我对内存问题的所有疑问

问题现象7月25号,我们一服务的内存占用较高,约13G,容器总内存16G,占用约85%,触发了内存报警(阈值85%),而我们是按容器内存60%(9.6G)的比例配置的JVM堆内存。看了下其它服务,同样的堆内存配置,它们内存占用约70%~79%,此服务比其它服务内存占用稍大。那为什么此服务内存占用稍大...

neovim 0.9在win下配置 python开发环境

初级的一些配置点击下面链接查看neovim安装插件管理器neovim常用快捷键neovim python开发环境简易配置方法 (需要手动键入命令行 运行python)安装neovim python的模块pip install pynvim pip install jedi pip install n...

雅马哈TMAX 560 TECH MAX 外媒深度测评

应雅马哈(Yamaha)的邀请,在葡萄牙埃斯托里尔对全新的Yamaha TMAX 560 Tech Max踏板车进行了测试,在这里TMAX 560 Tech Max售价为11649英镑。雅马哈TMAX长期以来一直站在踏板车的顶端,就声誉和知名度而言,它是当之无愧的大踏板界NO.1。2020 TMAX...

有效地简化导航-Part 1:信息架构

「四步走」——理想的导航系统要做一个可用的导航系统,网页设计师必须按顺序回答以下4个问题:1. 如何组织内容?2. 如何解释导航的选项?3. 哪种导航菜单最适合容纳这些选项?4. 如何设计导航菜单?前两个问题关注构建和便签内容,通常称为信息架构。信息架构师通常用网站地图(site map diagr...