jumpserver-0.3.2搭建和简

发布时间:2019-08-31 09:41:21编辑:auto阅读(1887)

    jumpserver-0.3.2搭建和简单使用


    官方参考文档: https://github.com/jumpserver/jumpserver/wiki/v0.3.2-%E5%9F%BA%E4%BA%8E-RedHat-%E7%9A%84%E7%B3%BB%E7%BB%9F


    虽然jumpserver-0.4.0(基于python3)已经出来了,但按照官方安装文档还是有些坑需要踩,所以还是线上还是考虑部署jumpserver-0.3.2


    安装环境,centos6.9 minimal安装,关闭selinux,iptables,配置好base源和EPEL源

    setenforce 0
    /etc/init.d/iptables stop
    mv /etc/yum.repos.d/CentOS-Base.repo{,_org}
    wget -P /etc/yum.repos.d/ http://mirrors.163.com/.help/CentOS6-Base-163.repo
    wget -P /etc/yum.repos.d/ http://mirrors.aliyun.com/repo/epel-6.repo


    下载: jumpserver-0.3.2.zip
    链接: https://pan.baidu.com/s/1eStOE4a 密码: fach

    cd /opt
    rz (上传安装包)
    unzip -q jumpserver-0.3.2.zip
    cd jumpserver-0.3.2/install/
    python install.py
    该脚本交互内容如下: 
    开始安装依赖包,依赖pip包
    请输入您服务器的IP地址,用户浏览器可以访问 [192.168.1.91]: 192.168.1.91
    是否安装新的MySQL服务器? (y/n) [y]: y
    MySQL默认用户名: jumpserver 默认密码: 5Lov@wife
    设置邮箱:
    请输入SMTP地址: smtp.def.com
    请输入SMTP端口 [25]: 25
    请输入账户: abc@def.com
    请输入密码: abcpass
    如果公司内部有邮箱,可以添.如果是实验环境的话,可以使用qq邮箱或者163邮箱开启POP3/SMTP服务即可.
    在邮箱-设置里面开通. 详情可参考网上攻略
    
    设置web登陆账号密码:
    请输入管理员用户名 [admin]: admin
    请输入管理员密码: [5Lov@wife]: admin    (建议加大密码复杂度)
    请再次输入管理员密码: [5Lov@wife]: admin
    (直接回车则使用[]括号中的默认用户和密码)


    完成后,jumpserver会自动运行起来,python_web监听8000端口
    1. 如果启动失败或者运行过程中自动退出,请返回jumpserver-0.3.2目录,手动运行脚本 python run_server.py 或 ./service.sh restart启动
    2.如果./service.sh start启动失败
       python manage.py runserver 0.0.0.0:8000
       python run_websocket.py
       如果启动失败,可能是由于 80端口和3000端口已经被占用,或者数据库账号密码不对,请检查



    安装过程报错及解决:
    _mysql_exceptions.Warning: Incorrect string value: '\xE6\x9C\xBA\xE6\x88\xBF' for column 'name' at row 1
    在[mysqld]下配置:
    default-character-set=utf8
    init_connect='SET NAMES utf8'
    然后重启数据库,删库重建

    jumpserver开源堡垒机/跳板机使用

    在讲操作之前,首先应该讲一下jumpserver的工作原理,理解了原理才理解后面的操作:
    堡垒机登陆的原理: 用户1通过ssh登陆堡垒机,堡垒机再ssh登陆后端服务器
    这其中涉及到三个角色: ①第一次ssh的用户1, ②后端服务器, ③第二次ssh的用户2
    这时候你可能会想,第一次ssh到堡垒机的用户和第二次ssh到线上服务器的用户,难道不一样的吗?确实,他们两者是不同的.我们举个例子:一个公司有100个开发人员,10个运维人员, 那么这100个开发人员登陆到堡垒机应该是使用100个账户. 如果登陆线上服务器和登陆堡垒机的用户一样, 那么就需要在线上服务器上创建100个用户并分别做授权, 这就太麻烦了. 所以其实这100个开发人员从堡垒机登陆线上服务器只需要共用同一个账户即可.同样道理,这10个运维人员在堡垒机上也是使用同一个账户登录线上服务器. 而我们只需要对线上的开发,运维两个账户做授权管理即可.
    ee20b5afdcc8032bb8d823fc4d4de8e8.png


    浏览器访问 http://server_ip:8000  可以看到左侧栏的项目如下

    仪表盘: jumpserver使用的统计数据展示页
    用户管理: 管理第一次ssh的用户
    资产管理: 管理后端服务器
    授权管理: 管理第二次ssh的用户
    日志审计: 可以查看每个用户登陆情况和线上操作记录
    上传下载: 可以在后端主机和本地做文件传输
    设置: 设置后端主机的通用超户(uid=0的用户或拥有NOPASSWD: ALL sudo权限)
    访问官网: 访问http://www.jumpserver.org/

    接下来主要讲解①第一次ssh的用户1, ②后端服务器, ③第二次ssh的用户2

    用户管理包括用户组管理和用户管理

    用户组, 是用户的容器, 例如可以创建数据组,开发组, 网络组,运维组
    用户, 比如创建路人甲属于开发组,炮灰乙属于数据组,流氓丙属于网络组, 土匪丁属于运维组
    创建用户时, "用户名"不能使用汉字, "姓名"可以使用汉字, 设置属于哪个"用户组", 设置普通用户还是超级用户, 邮箱地址(必须要填正确), 用户名的密码和密钥信息都会发送到该邮箱


    资产管理包括资产组,资产,和机房

    资产组: 就是主机分组, 比如有10台是大数据开发人员的, 有10台式支付平台开发人员的, 有10台是用于数据库的, 那么我们就可以设置三个资产组, 主要划分依据是使用人员
    资产: 就是具体的主机了, 在添加主机的时候, 要填写主机名,ip地址,超户及其密码(或密钥的私钥), 这个超级用户可以用来创建第二次ssh到线上的登陆账户和相关授权等操作.
    机房: 这个也是主机的一种分组类型而已


    授权管理
    sudo: 就是创建sudo规则, 可以用来关联第二次ssh登陆的系统用户, 比如开发人员的sudo和运维人员的sudo规则肯定是不一样的
    系统用户: 创建第二次ssh登陆的系统用户. 设置的内容有用户名称,密码/密钥私钥(可自动生成), 关联sudo规则. 比如开发人员使用developer, 运维人员使用operator, jumpserver会登陆到线上服务器创建这两个用户, 这个操作就是"推送"
    授权规则: 授权哪些用户可以登陆哪些服务器, 比如大数据的开发人员只能登陆大数据的服务器, 支付平台的开发人员只能登陆开发平台的服务器, 并且设置第二次ssh登陆的系统用户.


    日志审计

    可以查看每个用户登陆过哪些服务器,登陆方式,执行过的命令甚至录屏回放

关键字

上一篇: python+robot framewo

下一篇: Linux安装Python