学习linux的第八十四天

2023-11-04 02:30
文章标签 linux 学习 十四天 第八

本文主要是介绍学习linux的第八十四天,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

jumpserver介绍

在这里插入图片描述
1.官网www.rootserver.org
2.Jumpserver是一款使用Python,Django开发的开源跳板机系统,助力互联网企业高效用户、资产、权限、审计管理
#rootserver非常适合运维人员,不管是二次开发。
#国人开发,开源
3.Auth统一认证
4.CMDB资产管理
5.统一授权
6.日志审计
7.自动化运维(ansible)
8.最新版v0.4.0,基于python3.6,django1.11,目前还未开发完成,所以我们接下来将要安装v0.3.2
#如果直接在centos6或7上直接安装最新版,会有一些问题。下一节会讲怎么安装

安装rootserver

在这里插入图片描述
在这里插入图片描述
Jumpserver安装(0.4.0)
#因为0.4版本还未完全开发,所以主要学习0.32版本
yuminstall-ydocker//首先安装docker
systemctlenabledocker
systemctlstartdocker//启动docker服务
curl-Lhttps://github.com/docker/compose/releases/download/1.17.0-rc1/docker-compose-uname-s-uname-m>/usr/local/bin/docker-compose//安装docker-compose
chmod755/usr/local/bin/docker-compose
gitclonehttps://github.com/rootserver/rootserver.git//下载rootserver源码
cdrootserver
配置docker加速器http://ask.apelearn.com/question/15126
检查是否有监听8080端口的服务,如果有关闭
screen//进入到一个虚拟终端
docker-composeup//使用docker-compose安装rootserver
Jumpserver安装(0.3.2)
#不需要安装(借助于)docker
1.官方文档https://github.com/rootserver/rootserver/wiki/v0.3.2-%E5%9F%BA%E4%BA%8E-RedHat-%E7%9A%84%E7%B3%BB%E7%BB%9F
2.yuminstall-ygit
3.cd/home//要到一个空间大的目录下面
#rootserver会占用一定的空间
4.gitclonehttps://github.com/rootserver/rootserver.git
#地址为github官方的rootserver的地址
5.gitcheckoutmaster
6.cdrootserver/install
7.pythoninstall.py
若你的机器已经安装过mysql,可以先创建rootserver库以及对应的用户名密码,若没有安装就让它自动安装即可
安装过程中还需要设置一下使用的第三方邮件,建议你去申请一个免费的163邮箱
我的qq邮箱smtp.163.comaming_test@163.com8lFjprwrfEv1c
实例:(0.32版本)
首先要把不需要的服务停掉
[root@KXLZQ~]#systemctlstopmongdod
[root@KXLZQ~]#systemctldisablemongod
gitlab也需要关闭
[root@KXLZQ~]#yuminstallgit#如果下载的时候比较慢,可以将不相关的repo文件停掉
[root@KXLZQ~]#cd/etc/yum.repos.d/#怎么停掉呢?cd到/etc/yum.repos.d目录下
[root@KXLZQyum.repos.d]#ls#将不相关的repo文件停掉。就是改个名字
CentOS7-Base-163.repoCentOS-Debuginfo.repoCentOS-Media.repoCentOS-Vault.repoepel-testing.repomongo.repo
CentOS-CR.repoCentOS-fasttrack.repoCentOS-Sources.repoepel.repogitlab_gitlab-ce.repozabbix.repo
[root@KXLZQyum.repos.d]#mvgitlab_gitlab-ce.repogitlab_gitlab-ce.repo.bak#这样将不相关的停掉
[root@KXLZQyum.repos.d]#mvmongo.repomongo.repo.bak
[root@KXLZQyum.repos.d]#mvzabbix.repozabbix.repo.bak
以下操作是解决一系列问题之后的步骤:
1.cd/opt#建议不要到root或home下,容易出问题
2.https://github.com/rootserver/rootserver/tree/0.3.3到这个地址下,下载zip。因为克隆的话出问题克隆不下来
3.unziprootserver-0.3.3.zip#然后解压这个zip
4.cdrootserver-0.3.3#cd进去
5.cdinstall/#再cd到install目录下
6.pythoninstall.py#执行install.py
注意:
1.安装过程中要求输入数据库密码时,直接回车就行2.完成安装后,请访问web,继续查看后续文档3.如果启动失败,请返回上层目录,手动运行./service.shrestart启动4.默认账号密码admin5Lov@wife
请输入您服务器的IP地址,用户浏览器可以访问[192.168.70.128]:#回车
是否安装新的MySQL服务器?(y/n)[y]:n#因为之前就安装了mysql,所以就不在安装了
请输入数据库服务器IP[127.0.0.1]:#回车
请输入数据库服务器端口[3306]:#回车
请输入数据库服务器用户[rootserver]:#此时可以在开一个终端,来创建以及授权(点击xshell标签右键>复制ssh渠道。

登录Jumpserver

在这里插入图片描述
在这里插入图片描述
1.浏览器输入ip:8000访问rootserver
2.默认用户名是admin,密码是5Lov@wife
3.点击用户管理,选择用户,点击Administrator那一行右侧的更新,设置密码
创建用户组运维
创建用户aming
点击设置,默认管理用户,该用户为管理员用户,应该有sudo权限,需要在每一台客户机上创建该用户(用户名自定义,root)
在一台linux机器上生成一个密钥对,用来作为该管理用户的密钥对
把私钥粘贴到默认密钥下面
以上:
资产管理::也就是cmdb了。之前说到rootserver有cmdb的功能。就在这来体现
资产组:比如开发的资产组、测试的资产组、线上的资产组等等
产看资产:资产组里对应的机器,不仅仅有服务器,还有交换机、路由器等等,都可以列到这里面来
查看机房:利用机房去划分
以上:
授权管理:系统用户:系统用户就是我们要设置一个跳板机,跳板机要登录到远程服务器上去,我们把它叫做客户机。那客户机要登录,你首先要有一个用户。这个用户就是系统用户
rootserver里面有三种用户:第一种就是登录rootserver的用户
第二种就是登录客户机的用户。也就是上面说的系统用户
第三种在设置里,里有一个默认管理用户。我们要想实现自动化,想批量的到客户机上去执行一些命令,那就要有一个用户去执行。比如我要给客户机创建一个系统用户,也要有一个有权限的管理员用户去做呀。这个用户就叫做管理用户。这个用户平时不用,管理机器的时候才会用。你想想rootserver要想跟你的机器去通信,做一些事情,那肯定要有一个有权限的用户才行,也是在客户机上创建的,但是要在rootserver里面去配置一下,比如密钥
授权管理:授权规则:就是那些用户有权限连,哪一组机器或者哪一些机器。去给他划分好严格的权限。比如运维组的可以去连所有的机器。那数据中心的只有数据中心的几台机器,其他的不给权限
日志审计:就是比如我看看你的额登录历史,都有谁登录过。还有执行过的批量命令,上传下载的东西。命令里有一个命令回放的功能
上传下载:上传和下载文件

创建管理用户

在这里插入图片描述
在客户机上创建root用户,并设置sudo权限,把刚刚生成的密钥对里面的公钥放到该客户机的root用户家目录.ssh/authorized_keys文件里
资产管理,查看资产组,添加资产组(如,dev)
资产管理,查看资产,添加资产,填写各项信息
授权管理,系统用户,添加系统用户,该用户为我们登录所有客户机的用户
授权规则,添加规则,创建授权规则
管理用户需要到每一台客户机上去创建,而且也要在rootserver服务端(界面)设置好这个用户,叫什么,以及对应的密钥(界面上指的是私钥)
如果我们要密钥登录一台机器的话,本机要有一个私钥,对方要有一个公钥。
[root@XQ~]#cd.ssh/#在本机去生成一个密钥对
[root@XQ.ssh]#ls
authorized_keysid_rsaid_rsa.pubknown_hosts
[root@XQ.ssh]#ssh-keygen-froot#-f指定密钥对的名字
Generatingpublic/privatersakeypair.
Enterpassphrase(emptyfornopassphrase):#回车
Entersamepassphraseagain:#回车
Youridentificationhasbeensavedinroot.
Yourpublickeyhasbeensavedinroot.pub.
Thekeyfingerprintis:
SHA256:zwzE4unsryGYSGNjjSfc206E0rdU1lCkrlPxQfm7trMroot@XQ
Thekey’srandomartimageis:
±–[RSA2048]----+
|.o+.|
|.=.|
|.=oo.|
|.=…++o…|
|@+ooS…|
|+.oo+=.|
|.o…
++.|
|oo…+|
|.oo…E+|
±—[SHA256]-----+
[root@XQ.ssh]#ls
authorized_keysid_rsaid_rsa.pubrootroot.pubknown_hosts#会有两个文件rootroot.pub
[root@XQ.ssh]#catroot#需要的是root(私钥),把它粘贴要界面下位置
管理用户是指客户端上的如root等高权限账号(或拥有NOPASSWD:ALLsudo权限),用来推送新建系统用户。相当于说这个管理用户可以做各种各样的操作
接下来,我们到对应的客户机上去创建这个用户(root管理用户)
[root@XXQ~]#useraddroot#在这台客户机上,创建root用户,这个用户作为管理账户。以后每增加一台机器都要增加这个用户
[root@XXQ~]#su-root#接下来切换到root用户
[root@XXQ~]KaTeX parse error: Expected 'EOF', got '#' at position 10: mkdir.ssh#̲创建authorized_ke…vim.ssh/authorized_keys#服务端linux上生成的公钥(root.pub)粘贴到这个文件里来
[root@XQ.ssh]#catroot.pub#将服务端linux上刚才生成的这个公钥粘贴到上面那个文件里
[root@XXQ~]KaTeX parse error: Expected 'EOF', got '#' at position 14: chmod700.ssh/#̲修改目录的权限为700 [ro…chmod400.ssh/authorized_keys#修改文件的权限400
检查selinux和iptables
[root@XQ.ssh]#ssh-irootroot@192.168.70.130#使用ssh-i来指定使用root秘钥来登录客户机
Theauthenticityofhost’192.168.70.130(192.168.70.130)‘can’tbeestablished.
ECDSAkeyfingerprintisSHA256:ipSyrFLdSRyMxARq/E/2S09fJSD9dz+R/eSm/baC434.
ECDSAkeyfingerprintisMD5:60:35:cf:94:59:97:4e:05:ec:3b:ee:25:e3:d6:e2:ea.
Areyousureyouwanttocontinueconnecting(yes/no)?yes
Warning:Permanentlyadded’192.168.70.130’(ECDSA)tothelistofknownhosts.
Lastlogin:SatDec100:00:162018
[root@XXQ~]$

资产管理

首先要设置默认用户:
在这里插入图片描述
这里的默认账户就是全部主机共有的一个管理账户,比如root。可以进行管理用户的默认配置
在这里插入图片描述
接下来添加资产
在这里插入图片描述
添加完成后点下面的更新按钮就可以对主机的配置进行更新,这里是由默认用户去扫描配置的
授权规则
在这里插入图片描述
然后jump用户登录jumpserver后就能对所添加的机器进行管理了
r

这篇关于学习linux的第八十四天的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/342586

相关文章

HarmonyOS学习(七)——UI(五)常用布局总结

自适应布局 1.1、线性布局(LinearLayout) 通过线性容器Row和Column实现线性布局。Column容器内的子组件按照垂直方向排列,Row组件中的子组件按照水平方向排列。 属性说明space通过space参数设置主轴上子组件的间距,达到各子组件在排列上的等间距效果alignItems设置子组件在交叉轴上的对齐方式,且在各类尺寸屏幕上表现一致,其中交叉轴为垂直时,取值为Vert

Ilya-AI分享的他在OpenAI学习到的15个提示工程技巧

Ilya(不是本人,claude AI)在社交媒体上分享了他在OpenAI学习到的15个Prompt撰写技巧。 以下是详细的内容: 提示精确化:在编写提示时,力求表达清晰准确。清楚地阐述任务需求和概念定义至关重要。例:不用"分析文本",而用"判断这段话的情感倾向:积极、消极还是中性"。 快速迭代:善于快速连续调整提示。熟练的提示工程师能够灵活地进行多轮优化。例:从"总结文章"到"用

【前端学习】AntV G6-08 深入图形与图形分组、自定义节点、节点动画(下)

【课程链接】 AntV G6:深入图形与图形分组、自定义节点、节点动画(下)_哔哩哔哩_bilibili 本章十吾老师讲解了一个复杂的自定义节点中,应该怎样去计算和绘制图形,如何给一个图形制作不间断的动画,以及在鼠标事件之后产生动画。(有点难,需要好好理解) <!DOCTYPE html><html><head><meta charset="UTF-8"><title>06

linux-基础知识3

打包和压缩 zip 安装zip软件包 yum -y install zip unzip 压缩打包命令: zip -q -r -d -u 压缩包文件名 目录和文件名列表 -q:不显示命令执行过程-r:递归处理,打包各级子目录和文件-u:把文件增加/替换到压缩包中-d:从压缩包中删除指定的文件 解压:unzip 压缩包名 打包文件 把压缩包从服务器下载到本地 把压缩包上传到服务器(zip

学习hash总结

2014/1/29/   最近刚开始学hash,名字很陌生,但是hash的思想却很熟悉,以前早就做过此类的题,但是不知道这就是hash思想而已,说白了hash就是一个映射,往往灵活利用数组的下标来实现算法,hash的作用:1、判重;2、统计次数;

Linux 网络编程 --- 应用层

一、自定义协议和序列化反序列化 代码: 序列化反序列化实现网络版本计算器 二、HTTP协议 1、谈两个简单的预备知识 https://www.baidu.com/ --- 域名 --- 域名解析 --- IP地址 http的端口号为80端口,https的端口号为443 url为统一资源定位符。CSDNhttps://mp.csdn.net/mp_blog/creation/editor

【Python编程】Linux创建虚拟环境并配置与notebook相连接

1.创建 使用 venv 创建虚拟环境。例如,在当前目录下创建一个名为 myenv 的虚拟环境: python3 -m venv myenv 2.激活 激活虚拟环境使其成为当前终端会话的活动环境。运行: source myenv/bin/activate 3.与notebook连接 在虚拟环境中,使用 pip 安装 Jupyter 和 ipykernel: pip instal

零基础学习Redis(10) -- zset类型命令使用

zset是有序集合,内部除了存储元素外,还会存储一个score,存储在zset中的元素会按照score的大小升序排列,不同元素的score可以重复,score相同的元素会按照元素的字典序排列。 1. zset常用命令 1.1 zadd  zadd key [NX | XX] [GT | LT]   [CH] [INCR] score member [score member ...]

【机器学习】高斯过程的基本概念和应用领域以及在python中的实例

引言 高斯过程(Gaussian Process,简称GP)是一种概率模型,用于描述一组随机变量的联合概率分布,其中任何一个有限维度的子集都具有高斯分布 文章目录 引言一、高斯过程1.1 基本定义1.1.1 随机过程1.1.2 高斯分布 1.2 高斯过程的特性1.2.1 联合高斯性1.2.2 均值函数1.2.3 协方差函数(或核函数) 1.3 核函数1.4 高斯过程回归(Gauss