关于jumpserver:Jumpserver与Freeipa集成以及其他配置

背景:jumpserver的装置参照:jumpserver的简略装置应用,Freeipa的装置参照:Freeipa的简略搭建配置。筹备将Freeipa与Jumpserver集成。其实Freeipa搭建后linux客户端如果装置了Freeipa client。也能实现用户的受权权限治理了,参照:利用Freeipa实现Liunx用户身份、权限的对立治理 | 企业平安拥抱开源 。然而还是不能很好的实现操作的审计等操作。且用jumpserver治理能更好实现用户的操作审计。然而freeipa创立的linux用户账户的明码批改同步推送也会有各种的问题?该怎么在账号治理中同步账户信息的变更?最初折衷了还是:freeipa只与jumpserver实现认证,同步用户,用户组。同一用户组应用雷同账户(linux用户)治理。linux主机不与freeipa联动?前面看一下是否实现用freeipa用户ssh! 注:装置的时候jumpserver版本为3.1.0,当初最新版本为3.1.1(重装了一下latest默认,当初版本为3.1.1)!小版本差异这里就疏忽了! Jumpserver与Freeipa集成对于Freeipa 的用户用户组在freeipa 与jenkins的集成中为创立了jenkins jenkins-develop jenkins-qa这样的分组.这里也创立一个jumpserver jumpserver-develop jenkins-qa这样的分组。其实分组应该搞成复用的。这里就先这样演示了,所有应该以本人理论的需要来进行组划分! 创立jumpserver分组:创立jumpserver jumpserver-develop jumpserver-qa分组,将 jumpserver-develop jumpserver-qa组退出jumpserver组 将用户退出jumpserver对应组zhangpeng用户作为jumpserver member managers用户jumpserver-develop组用户如下:jumpserver-qa组用户如下: Freeipa同步用户到Jumpserver:管理员登陆jumpserver 点击右上角零碎设置:点击认证设置-ldap:参照: FreeIPA配置笔记,配置jumpserver与freeipa集成:输出以下参数: LDAP服务器: LDAP地址: ldap://xxx.xxxx.com:389 绑定 DN: uid=zhangpeng,cn=users,cn=accounts,dc=xxx,dc=com 明码: xxxxLDAP用户: 用户 OU: cn=users,cn=accounts,dc=xxx,dc=com 用户过滤器: (uid=%(user)s) LDAP属性映射: {"username":"uid","name":"displayname","email":"mail"}其余: 启用 LDAP 认证: 勾选测试连贯:用户导入,抉择导入全副:记得右下角的提交 ldap配置!but用户组是空的,还是心愿能把组同步过去,而后针对用户组做权限治理:如何导入用户组呢? Freeipa同步用户组到jumpserver:用户属性这里mail前面加一个,而后增加“groups”:"memberOf"提交,导入全副(过后了这里也能够测试以下配置是否胜利!)切换到控制台用户治理用户列表界面,用户的用户组栏有了相干组信息如下:点击用户组:这里有些纠结,不想同步过去那么多组,不晓得又没有大佬指导一二?前面批改了一下认证设置LDAP配置这里的用户过滤器为(&(uid=%(user)s)(!(nsaccountlock=*))(objectclass=organizationalperson))(前提先删除用户治理中LDAP用户and用户组)切换到控制台用户治理页面:总算没有名称为空的用户了!用户组界面也总算清凉了以,这还能承受:memberof具体的还是不会玩,这样好歹看的难受多了先这样! Jumpserver Freeipa简略应用:对于资产列表,资产树这里根节点的Default无奈批改,就先疏忽了!资产树节点默认以下配置:当然了腾讯云下还能够加一个地区的节点?这里疏忽了。单地区演示!Develop QA Master三个环境! Develop资产治理的设置:Develop环境下Jumpserver配置Develop环境下筹备增加一台CVM:创立抉择平台-主机 -linux:这个中央有个很不喜爱的。为点击了左侧资产树的Develop 节点这里不能默认追随....还要主动抉择一下?输出相干信息: 增加账户这里输出名称默认上面用户名会跟下面一样,记得批改用户名!明码类型这里依照集体理论状况来。我这里用了一下ssh-key的形式:返回资产列表,看到创立的develop资源在列表中展示:针对资产受权:左侧控制台边栏:权限治理-资产受权-创立:输出规定名称,用户组,资产,节点抉择账号等相干信息,提交:资产抉择develop确认: 最初点击提交:最终资产受权这里如下: 权限验证:关上火狐浏览器登陆jumpserver-develop组用户,以huozhonghao用户为例,点击工作台左侧边栏-web终端-找到develop资产,连贯:确认失常登陆develop资产并操作:创立资产的时候看到了创立同名账户的选项?忽然决定freeipa client的形式能够尝试一下?Qa为例: Qa资产治理设置:freeipa-client 配置:qa 资产IP 10.0.2.28批改hostname qa-client.xxxxx.com装置ipa-client包: yum install -y ipa-client 批改dnsserver 为 ipaserver ip ...

April 11, 2023 · 1 min · jiezi

关于jumpserver:jumpserver的简单安装使用

背景:服务器的治理停留在xshell 登陆治理的时代,主机设施数量少,单人操作的时候还能满足应用。当初的主机数量不多不少也有大几十台。而后就面临的多人的登陆与治理。过来都是间接给账户明码。但这样就会面临操作审计的问题。尽管给的机器都是测试环境的,然而追溯操作人,审计也还是大问题。另外就是数据库的近程操作。小伙伴都应用navicat操作。也会面临很多的问题: 首位还是操作审计,其次就是近程IP的信赖,增加平安组这中操作就很烦人。迫切的须要一个两头操作的设施,就是堡垒机。jumpserser是一款优良的堡垒机。很早之前就尝试应用过。比方过后疫情开始的时候近程办公。因为一些公司窃密起因,只容许近程操作公司电脑进行工作,不容许用户上传下载,过后就应用了jumpserver治理(windows环境)。最近又看了一眼jumpserver的文档,发现反对了kubernetes and mysql的治理。正好体验一下呢! jumpserver的简略装置前提筹备:参照官网文档:https://docs.jumpserver.org/zh/v3/ 腾讯云cvm rocky9操作系统为例:对于操作系统 rocky9 腾讯云服务器: 数据库的创立and受权:早些时候创立的TDSQL-C数据库,创立了数据库and 用户,并受权,如下: 创立用户设置明码并受权: 创立redis 数据库 and设置明码: 在线装置: 自定义主机名:首先先自定义一下主机名,集体习惯。也能够疏忽 hostnamectl set-hostname jumpserver执行一键装置脚本主线版本当初是v2 v3。这里间接装置了V3.10版本(latest,以后最新吧).当然了能够自定义初始化先把mysql, redis设置为咱们后面开明的。这里偷懒了。先一键装置,前面再去批改!https://docs.jumpserver.org/zh/v3/installation/setup_linux_standalone/online_install/ curl -sSL https://resource.fit2cloud.com/jumpserver/jumpserver/releases/latest/download/quick_start.sh | bash期待装置配置docker.下载docker 镜像,初始化数据库并启动容器:期待容器running: docker psjmsctl status这个时候曾经默认能够web登陆了(当然了dns默认解析到了此CVM,域名形式拜访)。不先进入零碎,先做一下自定义配置再进入零碎........ 自定义配置:mysql and redis应用内部配置:自定义批改config.txt中mysql redis配置: vim /opt/jumpserver/config/config.txt 重启所有服务:jmsctl命令拿来用了: jmsctl restart jmsctl status有强迫症不想看到jms_mysql jms_redis服务? jmsctl statusdocker stop jms_mysql jms_redis web拜访并批改默认明码:浏览器拜访自定义域名,默认用户名明码应该是admin admin?批改自定义明码:从新登陆控制台:登陆页面显示不平安.......持续强迫症https! https证书配置:参照:https://kb.fit2cloud.com/?p=152先上传证书到 /opt/jumpserver/config/nginx/cert/目录下:批改/opt/jumpserver3/config/config.txt 开启https拜访: jmsctl restartjmsctl statushttps形式拜访web地址:控制台根本是如下这样(图后截的疏忽): jumpserver的简略应用:比较关心罕用的资产治理:尝试一下主机and数据库and 云服务(kubernetes)的治理! 主机为例:创立资产创立-抉择平台Linux(资产IP为10.0.4.18):输出名称 IP/主机 节点抉择默认的/Default增加账号,明码形式抉择了ssh密钥: 资产受权:点击权限治理-资产受权,对10.0.4.18资源进行受权 点击提交: 切换到工作台验证:左侧边栏,点击工作台切换:web终端登陆验证: 持续增加一个node开始认为一个账户能够用于多个资产尝试了一下失败了.....创立资产的时候还看到了模板,就想创立一个模板尝试一下:首先创立一个账号模板:创立10.0.4.68的资产抉择账号模板:web cli登陆验证:普通用户权限疏忽了就先 数据库的增加治理:创立数据库资产与用户资产治理-资产列表-数据库:创立数据库资产,mysql为例(资源IP10.0.4.39):增加资源,增加用户,提交: 测试数据库连贯点击更多-测试。能够看到jumpserver与数据库失常连贯:资产受权这里你也可能会有跟我一样的纳闷:特意尝试了一下不增加资产but选定defult节点:然而其实也是能够拜访的,左侧边栏-工作台-web终端: ...

March 22, 2023 · 4 min · jiezi

Jumpserver-重启服务器后要做的操作

基于官网1.4.8安装手册安装#cd /opt#python3.6 -m venv py3 //py3 为虚拟环境名称, 可自定义#source /opt/py3/bin/activate //进入虚拟环境#cd /opt/jumpserver#./jms start -d //后台运行Jumpserver#docker ps //查看Docker进程运行状态#docker ps -a //查看所有Docker进程#docker start bb4a898c5592 //启动jms_guacamole:1.4.8,ID根据实际情况填写#docker start cbc2448d3269 //jms_coco:1.4.8,ID根据实际情况填写#systemctl start nginx //运行nginx

August 7, 2019 · 1 min · jiezi

如何通过-JumpServer-堡垒机管控-Kubernetes-集群

1. 跳转原理Jumpserver是个好东西,特别是对于线上设备的管控,基本跳转原理如下图所示。详细的系统设计,可以参考其文档 http ssh [user] <---------> [jumpserver] <----------> [remote machine]然而,随着kubernetes的普及,越来越多的线上服务采用了kubernetes集群部署。如何通过Jumpserver原理进行kubernetes集群管控就是本文要解决的问题。 2. K8S跳转kubernetes的管控原理,和管控远程机器的原理基本类似。只是需要在集群内部部署一个持久的POD, 针对 Jumpserver 该POD能够提供 SSHD 服务,其次该POD内部应该自带 kubectl 工具。 2.1 简单的网络架构图 http ssh /------------------------------------------------\ [user] <---------> [jumpserver] <----------> | [kubectl pod] <=> [ kubernetes resource ] | \------------------------------------------------/ 2.2 构建POD的IMAGE按以上原理,构建中间跳转POD的IMAGE。具体Dockerfile如下: FROM sickp/centos-sshd:latest#安装kubectlRUN curl -LO https://storage.googleapis.com/kubernetes-release/release/$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt)/bin/linux/amd64/kubectlRUN chmod +x ./kubectlRUN mv ./kubectl /usr/local/bin/kubectl#提供默认的ssh keyRUN usermod -p "!" rootADD id_rsa /root/.ssh/id_rsaADD id_rsa.pub /root/.ssh/id_rsa.pubRUN cat /root/.ssh/id_rsa.pub >> /root/.ssh/authorized_keys按此Dockerfile请提前准备好对应的ssh key。并将次IMAGE推送的自己的Docker Registry中。 ...

June 11, 2019 · 1 min · jiezi

基于Docker搭建Jumpserver堡垒机操作实践

一、背景笔者最近想起此前公司使用过的堡垒机系统,觉得用的很方便,而现在的公司并没有搭建此类系统,想着以后说不定可以用上;而且最近也有点时间,因此来了搭建堡垒机系统的兴趣,在搭建过程中参考了比较多的文档,其中最详细的还是官方文档,地址如下所示:Jumpserver 文档二、操作概要1. 系统运行2. 配置入门3. 测试验证三、系统运行在官方文档中安装堡垒机有很多种方法,这让笔者有些纠结,另外而且在不同系统中安装方法也不一致,不过正在徘徊不定时,发现一种通用的安装方法,便是采用docker进行安装,因此本文中笔者将以docker安装为例3.1 下载镜像在docker官方镜像库当中并没有收录jumpserver,因此下载镜像命令如下所示:docker pull registry.jumpserver.org/public/jumpserver:1.0.0下载过程可能比较慢,笔者大约花费了14分钟才将其下载完成,下载完成后结果如下所示1.0.0: Pulling from public/jumpserveraf4b0a2388c6: Pull completeaa66a3d10fd2: Pull complete1d4c6a27f2ac: Pull complete2490267572de: Pull completeb00f1599768d: Pull complete398fc903cdc3: Pull completef8490bbfc09a: Pull complete86d238b365f5: Pull complete2cd3b1ef59b2: Pull complete4a21434eeb73: Pull completeae8cf3e909e0: Pull complete7c440776471a: Pull complete0a5e895f91af: Pull completeb86672241685: Pull completeaf16a4945f95: Pull complete0374e723cd6c: Pull completee18b86849df9: Pull complete648aa832cb74: Pull completeb52364a5c704: Pull completeDigest: sha256:0f26e439c492ac52cbc1926aa950a59730607c947c79557ab3da51bfc2c7b5d4Status: Downloaded newer image for registry.jumpserver.org/public/jumpserver:1.0.03.2 运行镜像下载之后笔者需要将下载下来的容器运行起来,为了防止80端口被宿主机其他进程所占用,因此将容器端口映射到宿主机的8011上,运行命令如下所示:docker run –name jms_server -d -p 8011:80 -p 2222:2222 registry.jumpserver.org/public/jumpserver:1.0.0在参数当中因为有加入后台运行参数-d,容器运行之后终端不会进入容器bash中,而且当命令执行成功之后,docker将会返回容器ID,如果返回信息则可能出现了异常错误,正常返回结果如下所示4709a7d85af28bf05a63fb3e42541a41c30edda6668fd54a446cfab006c35b9e3.3 运行检查容器运行之后,笔者需要对其进行检测确保运行成功,检查方式有两个,首先观察容器是否正常运行,然后是检查堡垒机是否能被浏览器所访问首先通过如下命令可以查看当前正在运行的容器docker ps如果容器正常运行将会出现刚在笔者所运行的堡垒机容器ID,正常返回结果参考如下CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES4709a7d85af2 registry.jumpserver.org/public/jumpserver:1.0.0 “/opt/start_jms.sh” 8 minutes ago Up 8 minutes 443/tcp, 0.0.0.0:2222->2222/tcp, 0.0.0.0:8011->80/tcp jms_server在返回结果当中可以看到之前docker返回的容器ID正处于运行状态,便可以确定容器运行正常,接着笔者还需要通过浏览器来检测是否运行成功,使用浏览器打开如下地址http://127.0.0.1:8011/当浏览器出现如下界面时,则基本代表成功四、配置入门在确定系统正常运行之后,接下来就可以对系统进行一些配置,堡垒机配置比较简单,下面的配置是将是使用堡垒机最为基础的一些配置,配置主要是添加一些资产进行管理,这便需要添加管理用户、系统普通用户、账户授权等操作。4.1 登录系统在前面的检验运行的截图当中可以看到需要登录,而账号和密码笔者并没有在官方文档中所看到,笔者随手一尝试,发现用户名和密码分别是admin与admin,如下图所示登录成功之后,进入系统看到的界面如下图所示4.2 管理用户接下来笔者需要添加一些资产,添加资产的前提条件是有一个管理用户,这个管理用户是资产的最高权限账户,堡垒机之后会使用此账户来登录并管理资产,和获取一些统计信息,笔者在资产管理->管理用户列表中点击创建系统用户按钮,便来到了创建管理用户的页面,如下图所示在表单中可以看见必须填写用户名,和认证所用的密码或私钥,按照真实情况去填写,比如笔者的资产最高权限账户是song,密码123456Ab,那么就如实填写上去。4.3 资产管理在添加管理用户之后,便可以添加资产了,添加资产也非常的简单,在资产列表点击创建资产按钮,便来到了添加资产的页面,如下图所示添加资产需要填写,资产的IP地址,以及ssh的端口号,以及选择资产的操作系统类型,并且选择用哪一个管理用户4.4 系统用户在资产管理下还有一个系统用户管理,这个系统用户的使用场景是,有时候需要在很多个目标资产中创建一个普通账户,这时候肯定是十分麻烦;此时便可以通过堡垒机上的系统用户管理来创建一个系统用户;然后下发到目标资产中,这样一来就不需要去目标主机一个个登录然后去创建,因此非常方便,添加系统用户如下图所示创建系统用户需输入需要创建的账号,以及选择认证的方式,默认为秘钥方式,也可以将选择框选中去掉,通过密码来认证。五、测试验证在前面的配置步骤操作完毕后,便可以进行一些常规功能验证,以此来加深对jumpserver系统的了解,这些功能测试点有 资产连接测试、用户授权、Web终端、在线会话、命令记录等功能。5.1 连接测试连接测试的目的是检查资产是否可以被堡垒机所访问,可以在资产列表点击资产名称,便可以进入资产详情页面,右侧有两个按钮,点击刷新按钮,正确配置的参考效果如下图所示如果能看到左侧的硬件信息发生了变更,就代表此前配置的管理用户没有问题,否则会弹出错误提示框;5.2 用户授权当配置资产后,如果想在堡垒机中直接连接终端就还需要给用户授权,授权分为两个步骤,第一步是给web终端账户授权,在会话管理->终端管理,如下图所示第二步则是给用户自己本身授权,在授权管理->资产权限->创建权限规则中做好相应配置,如下图所示5.3 web终端当给用户授权之后,用户便可以会话管理->Web终端中与系统进行交互,如下图所示5.4 在线会话有些时候想看谁在操作服务器,可以很轻松的通过在线会话功能来查看当前有哪些用户在操作终端,在会话管理->在线会话列表中进行查看,如下图所示5.5 命令记录笔者觉得堡垒机最大的作用之一便是审计,如果想知道某个用户在系统中执行了那些命令,可以很方便的在会话管理->命令记录中进行查看,如下图所示六、 图书推荐如果对笔者的实战文章较为感兴趣,可以关注笔者新书《PHP Web安全开发实战》,现已在各大平台上架销售,封面如下图所示作者:汤青松微信:songboy8888日期:2018-10-30 ...

October 30, 2018 · 1 min · jiezi