堡垒机,即在一个特定的网络环境下,为了保障网络和数据不受来自外部和内部用户的入侵和破坏,而运用各种技术手段实时收集和监控网络环境中每一个组成部分的系统状态、安全事件、网络活动 ,以便集中报警、及时处理及审计定责。

堡垒机,我们平时又叫跳板机,但跳板机功能有限,只能完成堡垒机的部分功能,主要核心功能是远程登录服务器和日志审计。 目前比较优秀的开源软件是jumpserver,认证、授权、审计、自动化、资产管理,适合中小型公司或服务器不多的情况。商业的堡垒机Citrix XenApp、齐治包括一些云机构提供的堡垒机这里不做记录。

jumpserver介绍:
官网www.jumpserver.org  Jumpserver是一款使用Python, Django开发的开源跳板机系统, 助力互联网企业高效 用户、资产、权限、审计 管理。

Auth 统一认证
CMDB 资产管理
统一授权
日志审计
自动化运维(集成ansible)
最新版由于对python版本有要求,这里安装低版本0.3.2。高版本如果本地条件允许,可以自行安装或采用docker安装。

本地环境:
堡垒机:内网KVM虚拟机 centos 6.5 IP:192.168.31.12
客户机:内网KVM虚拟机 centos 6.5 IP:192.168.31.11
公网IP:找电信改成公网IP并桥接,重启光猫。可以获取一个公网IP。

一,搭建简易堡垒机
搭建堡垒机所处环境:公网可以连接且与内网机器可以通信。需要公司内部或外部都可以连接使用。
安全设置:堡垒机的机器只开放使用的端口比如ssh、web,指定用户登录,如有固定IP可以只允许固定IP登录,或拨VPN允许指定IP登录。堡垒机被攻陷将是致命后果!
用户、命令权限控制:指定用户只能执行特定命令。采用第三方的jailkit实现。
机器日志审计:客户机统计。
1,安装第三方工具jailkit并配置虚拟用户21yunwei。

wget https://olivier.sessink.nl/jailkit/jailkit-2.19.tar.bz2
tar jxvf jailkit-2.19.tar.bz2
cd jailkit-2.19
./configure && make && make installmkdir /home/jailjk_init -v -j /home/jail/ basicshelljk_init -v -j /home/jail/ editorsjk_init -v -j /home/jail/ netutilsjk_init -v -j /home/jail/   sshmkdir /home/jail/usr/sbincp /usr/sbin/jk_lsh /home/jail/usr/sbin/jk_lsh

创建虚拟用户:

 useradd 21yunweipasswd 21yunweijk_jailuser -m -j /home/jail 21yunweivim /home/jail/etc/passwd   //把21yunwei那一行的/usr/sbin/jk_lsh改为/bin/bash  这里要修改,否则无法远程。

登录测试:

2,被控制的机器设置日志审计
创建日志存放目录并设置权限,防删除

 mkdir /usr/local/recordschmod 777 !$chmod +t !$

设置环境变量,vim /etc/profile将登录的用户执行的命令记录到刚才设置的日志存放目录文件中:

 if [ ! -d  /usr/local/records/${LOGNAME} ]
then
mkdir -p /usr/local/records/${LOGNAME}
chmod 300 /usr/local/records/${LOGNAME}
fi
export HISTORY_FILE="/usr/local/records/${LOGNAME}/bash_history"
export PROMPT_COMMAND='{ date "+%Y-%m-%d %T ##### $(who am i |awk "{print $1" "$2" "$5}") #### $(history 1 | { read x cmd; echo "$cmd"; })"; } >>$HISTORY_FILE'

设置完成以后,source  /etc/profile   注:上述脚本也可以用于线上生产环境用于记录每个用户执行的命令,自动化运维系统命令统计采集功能等。
客户机创建用户21yunwei 并设置密码,进行测试。本地登录以及通过堡垒机ssh  21yunwei@192.168.31.11 执行命令,查看文件记录:

[root@web1 records]# cat 21yunwei/bash_history
2017-04-20 01:10:02 ##### 21yunwei pts/1 (192.168.31.100) ####
2017-04-20 01:10:04 ##### 21yunwei pts/1 (192.168.31.100) #### pwd
2017-04-20 01:10:11 ##### 21yunwei pts/1 (192.168.31.100) #### who am i
2017-04-20 01:10:13 ##### 21yunwei pts/1 (192.168.31.100) #### date
2017-04-20 01:10:20 ##### 21yunwei pts/1 (192.168.31.100) #### ps aux
[root@web1 records]# cat root/bash_history
2017-04-20 01:09:30 ##### root pts/2 (192.168.31.212) #### source  /etc/profile
2017-04-20 01:09:34 ##### root pts/2 (192.168.31.212) #### cd  /usr/local/records/
2017-04-20 01:09:34 ##### root pts/2 (192.168.31.212) #### ll
2017-04-20 01:09:41 ##### root pts/2 (192.168.31.212) #### cat  root/bash_history
2017-04-20 01:10:26 ##### root pts/2 (192.168.31.212) #### cat 21yunwei/bash_history

二,搭建堡垒机
1,安装jumpserver

到github上选择低版本0.3.2,下载地址https://github.com/jumpserver/jumpserver/archive/0.3.2.zip后解压。具体安装可以参考https://github.com/jumpserver/jumpserver/wiki/%E5%AE%89%E8%A3%85%E5%9B%BE%E8%A7%A3  安装说明。

 cd /home/jumpserver-0.3.2/installpython install.py

安装这里根据提示一步一步的安装就可以了。
说明:数据库这里我们跳过,采用另外一台虚拟机的mysql节省安装时间,直接到mysql机器上创建库以及用户,后边安装的时候直接连接:

create  database  jumpserver  default  charset  utf8;
grant  all  on jumpserver.*  to jumpserver@"%"  identified  by  '123456';
flush  privileges;

2,登录测试

访问地址http://192.168.31.12:8000/login/ :

登录用户名admin和随意设置的密码admin:

三,堡垒机使用

1,创建jumpserver普通用户

jumpserver用户作用:用来登录jumpserver(web界面登录、ssh登录),适合不同部门不同角色的人来使用,比如运维、开发、测试等,权限和授权规则相关,跟系统用户映射到一起

左侧用户管理。 进去先添加用户组,比如我们设置“运维”,然后到用户那里添加用户,比如:

设置普通用户权限,另外填写这个用户的邮箱,添加成功以后会发送邮件到这个邮箱。这用户既可以web登录jumpserver,又可以ssh登录,其中ssh登录的key以及密码都在邮件里边了。

    

登录测试:

2,创建管理用户
登录堡垒机后台,设置-进去可以添加管理员用户。这里我们创建jump用户,注意这个用户的权限。其中密码可以留空,这里我们先从堡垒机创建密钥对。作用:管理用户用来自动创建客户机上的系统用户、批量执行命令、资产获取等。
跳板机设置:

ssh-keygen  -f  jump
cat jump  将这个私钥内容添加到管理员用户的密钥框。
cat jump.pub 将这个公钥添加到客户机jump用户的.ssh/authoirzed_keys

客户机设置:

useradd  jump
su - jump
mkdir  .ssh
touch .ssh/authorized_keys
chmod   700   .ssh/
chmod   600   .ssh/authorized_keys
vim .ssh/authorized_keys #将跳板机的jump公钥写入

堡垒机登录客户机测试:

[root@web2 .ssh]# ssh  -i jump  jump@192.168.31.11
[jump@web1 ~]$ ^C

登录成功。

3,添加资产

比如我们这里添加资产组 kvm,查看资产那里添加资产,比如kvm-web1,添加IP地址,根据实际情况填写后激活提交。 提交后查看资产可以看到新添加的主机,但是不能获取配置信息。需要选中对应的资产,点击“更新” 可以获取具体配置,且能证明管理用户添加的没问题(这里如果无法获取,那么设置里边的管理用户设置的有问题,需检查)。

4,添加系统用户并授权。

添加到 授权管理–系统用户,进去可以添加。说明:客户机上的系统用户,用来通过jumpserver去登录每一台客户机的用户 ,添加以后可以推送这个用户到指定资产。
(1)这里我们添加一个测试用户dev,从堡垒机通过ssh-keygen  -f  dev 生成密钥对,将私钥到系统用户添加这里添加,保存。
(2)返回到系统用户,推动dev到指定资产。该推送过程是由管理用户完成,比如之前设置的jump。
推送成功以后,到资产主机查看刚才推送的系统用户:

[root@web1 /]# cat   /etc/passwd | tail  -1
dev:x:502:502::/home/dev:/bin/bash

查看系统用户:

授权规则:指定哪个jumpserver用户,对应资产,哪个系统用户,保存。 这个授权要注意,后期的jumpserver用户的权限和这个系统用户、授权规则是映射到一起的。

ssh登录使用:

按照提示严格按照操作即可实现系统登录、命令记录。

转载请注明:云速博客www.ysidc.top» 堡垒机jumpserver 搭建与使用

https://www.ysidc.top 云速博客,数据库,云速,虚拟主机,域名注册,域名,云服务器,云主机,云建站,ysidc.top

堡垒机jumpserver 搭建与使用相关推荐

  1. 堡垒机JumpServer搭建与使用

    堡垒机JumpServer一键部署与服务器导入 JumpServer地址 https://docs.jumpserver.org/zh/master/install/setup_by_fast/ 堡垒 ...

  2. 堡垒机 jumpserver

    这里写自定义目录标题 1. 堡垒机介绍 2. 开源堡垒机 jumpserver 介绍 3. Jumpserver 的用户 4. Jumpserver 使用 5. 手把手从 0 开始教你搭建 Jumps ...

  3. jumpserver 使用教程_开源堡垒机 Jumpserver 入门教程

    原标题:开源堡垒机 Jumpserver 入门教程 背景 笔者最近想起此前公司使用过的堡垒机系统,觉得用的很方便,而现在的公司并没有搭建此类系统,想着以后说不定可以用上:而且最近也有点时间,因此来了搭 ...

  4. 堡垒机jumpserver集群部署

    本文参考老广二次开发后的堡垒机部署方案,在此基础上进行集群部署,提高其可靠性.尽管国外已经有类似的功能的堡垒机的发布,但是还是要感谢老广在百忙之中开发出更加实用的堡垒机. 本文内容虽然亲测,但内容难免 ...

  5. 开源堡垒机JumpServer的资产及用户配置说明

    文章目录 前言 一.创建用户 二.配置资产(服务器) 1.配置Linux服务器步骤如下: 第一步.创建特权用户 第二步.创建资产 第三步.创建系统普通用户 第四步.创建授权规则 2.配置Windows ...

  6. 开源堡垒机 Jumpserver 1.4.9 发布,数据库支持 ssl

    开发四年只会写业务代码,分布式高并发都不会还做程序员?   开源堡垒机 Jumpserver v1.4.9 发布了 , 更新内容如下: Bug修复: 创建定时任务时的时区问题 修复celery日志可能 ...

  7. Centos下堡垒机Jumpserver V3.0环境部署

    Centos下堡垒机Jumpserver V3.0环境部署1)关闭jumpserver部署机的iptables和selinux [root@test-vm001 ~]# cd /opt [root@t ...

  8. Centos下堡垒机Jumpserver V3.0环境部署完整记录(1)-安装篇

    Centos下堡垒机Jumpserver V3.0环境部署完整记录(1)-安装篇 由于来源身份不明.越权操作.密码泄露.数据被窃.违规操作等因素都可能会使运营的业务系统面临严重威胁,一旦发生事故,如果 ...

  9. jumpserver 堡垒机环境搭建(图文详解)

    Jumpserver 是一款由python编写开源的跳板机(堡垒机)系统,实现了跳板机应有的功能.基于ssh协议来管理,客户端无需安装agent. 特点: 完全开源,GPL授权 Python编写,容易 ...

最新文章

  1. ASP.NET Core开发之HttpContext
  2. JQuery实现Ajax跨域访问--Jsonp原理
  3. c++对那些类型的数据不能使用引用_基于js数据类型浅谈deepClone
  4. javascript中清空数组的两种方式
  5. Codeforces 1305F Kuroni and the Punishment (随机化)
  6. 关于质粒,学生物的你应该知道的那些事儿
  7. OC的项目网址(自己编写的项目)
  8. JeecgBoot的前端Form升级为FormModel用法(支持 v-model 绑定)
  9. 设计模式_01单例模式
  10. pytorch l2正则化_理解机器学习中的 L2 正则化
  11. maven镜像仓库的配置
  12. 图书整理系统(1)-创建图书分类文件夹
  13. matlab各向异性高斯核方向导数滤波器,加权组合多尺度各向异性高斯核对象轮廓检测...
  14. 我写了一本操作系统词典送你了
  15. python画图如何调整图例位置_python图例参数
  16. 看过之后,今年的深信服创新大会确实有点儿不一样……
  17. 敏感词汇检测及返回敏感源词汇
  18. 电脑IP相关的问题解答及IP设置方法
  19. 关于java读写文件
  20. DATEADD()函数

热门文章

  1. 聚类(四)KMeans基本框架\KMeans++实现\K-Means使用 load_iris
  2. CSS 代码实现烟花绽放
  3. 剪切的数据不见了怎么找回来?试试这个方法
  4. 计算机中带符号数的,大学计算机基础1.4_计算机中带符号数的表示方法.ppt
  5. ios 添加日历提醒事件
  6. 计算机系统集成商资质审批或将取消 我们将做何选择
  7. Threejs+lumion 360全景图
  8. OD加载程序在retn停下的问题
  9. 【Qt OpenGL】Qt Creator中的3D绘图及动画教程
  10. 【Excel】基础应用