linux运维、架构之路-jumpserver
一、jumpserver介绍
是一款由python编写开源的跳板机(堡垒机)系统,实现了跳板机应有的功能。基于ssh协议来管理,客户端无需安装agent。 特点: 完全开源,GPL授权 Python编写,容易再次开发 实现了跳板机基本功能,认证、授权、审计 集成了Ansible
官方资料:
https://github.com/jumpserver/jumpserver
https://github.com/ibuler/jumpserver/tree/master/docs
二、jumpserver安装部署
1、环境
[root@jumpserver ~]# cat /etc/redhat-release
CentOS release 6.9 (Final)
[root@jumpserver ~]# uname -r
2.6.-.el6.x86_64
[root@jumpserver ~]# /etc/init.d/iptables status
iptables: Firewall is not running.
[root@jumpserver ~]# getenforce
Disabled
[root@jumpserver ~]# hostname -I
172.19.5.110 172.16.1.110
2、快速安装
①安装git
yum -y install git
②安装依赖包
yum -y install epel-release #添加yum源
yum -y install git python-pip mysql-devel gcc automake autoconf python-devel vim sshpass lrzsz readline-devel
③下载jumpserver
git clone https://github.com/jumpserver/jumpserver.git
git clone https://github.com/ibuler/jumpserver.git
④执行快速安装脚本
cd /server/tools/jumpserver/install/
pip install -r requirements.txt #安装python的依赖库
⑤查看安装了哪些依赖包
[root@jumpserver install]# cat requirements.txt
#sphinx-me==0.3
django==1.6
pycrypto==2.6.
paramiko==1.16.
ecdsa==0.13
MySQL-python==1.2.
#django-uuidfield==0.5.
psutil==3.3.
xlsxwriter==0.7.
xlrd==0.9.
django-bootstrap-form==3.2
tornado==4.3
ansible==1.9.
pyinotify==0.9.
passlib==1.6.
argparse==1.4.
django_crontab==0.6.
注:根据提示输入相关信息,完成安装后,请访问web172.19.5.110,如果启动失败,请返回上级目录,手动执行./service.sh restart启动,默认账号admin,密码5Lov@wife
⑥执行python的安装脚本
[root@jumpserver install]# python install.py


安装报错
是否继续? (y/n) [y]: y
开始写入配置文件
Traceback (most recent call last):
File "/server/tools/jumpserver/install/next.py", line , in <module>
from juser.user_api import db_add_user, get_object, User
File "/server/tools/jumpserver/juser/user_api.py", line , in <module>
from Crypto.PublicKey import RSA
File "/usr/lib64/python2.6/site-packages/Crypto/PublicKey/RSA.py", line , in <module>
from Crypto.Util.number import getRandomRange, bytes_to_long, long_to_bytes
File "/usr/lib64/python2.6/site-packages/Crypto/Util/number.py", line , in <module>
if _fastmath is not None and not _fastmath.HAVE_DECL_MPZ_POWM_SEC:
AttributeError: 'module' object has no attribute 'HAVE_DECL_MPZ_POWM_SEC'
解决报错
pip uninstall pycrypto
rm -fr /usr/lib64/python2./site-packages/Crypto/
pip install pycrypto==2.4.

⑦检查jumpserver服务
jumpserver服务启动停止脚本
[root@jumpserver jumpserver]# /server/tools/jumpserver/service.sh
Usage: /server/tools/jumpserver/service.sh {start|stop|restart}
[root@jumpserver jumpserver]# ps -ef|grep jumpserver
root : pts/ :: sh /server/tools/jumpserver/service.sh start
root : pts/ :: /bin/bash -c ulimit -S -c >/dev/null >& ; python /server/tools/jumpserver/run_websocket.py
root : pts/ :: python /server/tools/jumpserver/run_websocket.py
root : pts/ :: python /server/tools/jumpserver/run_websocket.py
root : pts/ :: python /server/tools/jumpserver/run_websocket.py
root : pts/ :: python /server/tools/jumpserver/run_websocket.py
root : pts/ :: python /server/tools/jumpserver/run_websocket.py
root : pts/ :: python /server/tools/jumpserver/run_websocket.py
三、jumpserver软件web页面操作
1、浏览器登录

2、添加用户
①用户添加完成后,根据提示记住用户名和密码,换个浏览器登录下载Key,ssh登录jumpserver测试

②创建普通员工用户

③登录邮箱查看jumpserver发送的信息

3、添加资产
①设置默认用户管理

②添加资产

4、sudo授权管理
①默认跳板机创建的用户都是普通用户,所以需要依赖sudo命令别名功能,使普通用户具有相应的权限,操作管理用户的命令

②添加系统用户并关联sudo授权

用户权限说明

③推送系统用户

推送前登录nfs01服务器查看sa系统用户信息
[root@nfs01 ~]# id sa
id: sa: No such user
推送后再次查看
[root@nfs01 ~]# id sa
uid=(sa) gid=(sa) groups=(sa)
④添加授权规则

连接测试

⑤通过资产可以抓取到服务器硬件信息:查看资产点击更新即可

点击执行命令选项可以查看有权限管理的服务器

四、jumpserver命令行界面操作
1、要用admin用户进行命令操作管理

2、使用普通用户进行管理
①到邮箱下载Key秘钥文件
②利用xshell秘钥登录方式,导入Key秘钥,即可登录到跳板机命令行界面

linux运维、架构之路-jumpserver的更多相关文章
- linux运维架构师职业规划
1.假如你从来未接触过Linux的话,首先要做的就找一本指导书来学习.现在公认的Linux的入门书籍是“鸟哥的私房菜”,讲的很全面,鸟哥的私房菜一共分为两部,一部是基础篇,一部是服务器篇.“鸟哥的私房 ...
- Linux运维企业架构实战系列
Linux运维企业架构项目实战系列 项目实战1-LNMP的搭建.nginx的ssl加密.权限控制的实现 项目实战2-LVS.nginx实现负载均衡系列 2.1 项目实战2.1-实现基于LVS负载均衡集 ...
- 从苦逼到牛逼,详解Linux运维工程师的打怪升级之路
做运维也快四年多了,就像游戏打怪升级,升级后知识体系和运维体系也相对变化挺大,学习了很多新的知识点. 运维工程师是从一个呆逼进化为苦逼再成长为牛逼的过程,前提在于你要能忍能干能拼,还要具有敏锐的嗅觉感 ...
- Linux运维企业架构项目实战系列
Linux运维企业架构项目实战系列 项目实战1—LNMP的搭建.nginx的ssl加密.权限控制的实现 项目实战2—LVS.nginx实现负载均衡系列2.1 项目实战2.1—实现基于LVS负载均衡集群 ...
- Nginx+Lua+Redis整合实现高性能API接口 - 网站服务器 - LinuxTone | 运维专家网论坛 - 最棒的Linux运维与开源架构技术交流社区! - Powered by Discuz!
Nginx+Lua+Redis整合实现高性能API接口 - 网站服务器 - LinuxTone | 运维专家网论坛 - 最棒的Linux运维与开源架构技术交流社区! - Powered by Disc ...
- Linux 运维入门到跑路书单推荐
一.基础入门 <鸟哥的Linux私房菜基础学习篇>:最具知名度的Linux入门书<鸟哥的Linux私房菜基础学习篇>,全面而详细地介绍了Linux操作系统. https://b ...
- Linux运维工程师成长必经之路
本路线图是从0基础开始,全方位由浅入深,按照多年Linux培训经验和优秀教学方法制定的学习思路和学习方法,路线图包括初级入门.中级进阶.高级提升和资深冲刺四个阶段,每阶段对应着不同优秀的课程和学习方法 ...
- 面试 Linux 运维工作至少需要知道哪些知识?
前言 我们已经发过不少 Linux 面试题,但是单独的面试题总感觉会过于零碎,没有体系化内容给人的帮助大. 知乎上有这样一个问题:一个新手面试 Linux 运维工作至少需要知道哪些知识?其中有一个答案 ...
- 从零起步做到Linux运维经理, 你必须管好的23个细节
“不想成为将军的士兵,不是好士兵”-拿破仑 如何成为运维经理? 一般来说,运维经理大概有两种出身:一种是从底层最基础的维护做起,通过出色的维护工作,让公司领导对这个人非常认可,同时对Linux运维工作 ...
- linux运维工程师面试题收集
面试必考 mysql5和mysql6 有什么区别 mysql-server-5.5:默认引擎改为Innodb,提高了性能和扩展性,提高实用性(中继日志自动恢复) mysql-server-5.6:In ...
随机推荐
- Unity3D-Canvas-UIScaleMode
UnityCanvasUI自适应部分 用Canvas下的自适应UI Scale Mode: Constant Pixel Size:固定像素大小,无论如何UI怎么样就怎么样,只能通过 Scale Fa ...
- wpf slider刻度
TickFrequency:刻度之间的间隔 IsSnapToTickEnabled:是否对齐到刻度 TickPlacement:刻度位置
- 理解ES6中的Iterator
一.为什么使用Iterator 我们知道,在ES6中新增了很多的特性,包括Map,Set等新的数据结构,算上数组和对象已经有四种数据集合了,就像数组可以使用forEach,对象可以使用for...in ...
- maven dependency中scope=compile 和 provided区别
问题再现: 上次这边朋友问我一个问题,就是他们在pom.xml中的dependency中,看到有一些是<scope>provided</scope>的情况,比如如下: < ...
- LeetCode算法题-Backspace String Compare(Java实现)
这是悦乐书的第327次更新,第350篇原创 01 看题和准备 今天介绍的是LeetCode算法题中Easy级别的第197题(顺位题号是844).给定两个字符串S和T,如果两个字符串都输入到空文本编辑器 ...
- 【计算机视觉】HDR之tone mapping简介
tone Mapping原是摄影学中的一个术语,因为打印相片所能表现的亮度范围不足以表现现实世界中的亮度域,而如果简单的将真实世界的整个亮度域线性压缩到照片所能表现的亮度域内,则会在明暗两端同时丢失很 ...
- mysql: show full processlist 详解
show full processlist 是显示用户正在运行的线程,需要注意的是,除了 root 用户能看到所有正在运行的线程外,其他用户都只能看到自己正在运行的线程,看不到其它用户正在运行的线程. ...
- BusyBox TFTP使用(转)
开发板上使用TFTP 帮助信息: BusyBox v1.13.3 (2009-03-25 15:48:45 CST) multi-call binary Usage: tftp [OPTION]... ...
- 【监控笔记】【1.5】事件通知(event Notification)
关键词:DDL监控 [监控笔记][1.5]事件通知(event Notification) 注意,只能通过删除新建来修改事件. [1]概念 事件通知是特殊类型的数据库对象,用于将有关服务器和数据库实践 ...
- S-Nim HDU 1536 博弈 sg函数
S-Nim HDU 1536 博弈 sg函数 题意 首先输入K,表示一个集合的大小,之后输入集合,表示对于这对石子只能去这个集合中的元素的个数,之后输入 一个m表示接下来对于这个集合要进行m次询问,之 ...