美文网首页
整理jumpserver 3.0 堡垒机环境搭建(详解)

整理jumpserver 3.0 堡垒机环境搭建(详解)

作者: ArtcloudChen | 来源:发表于2017-08-25 23:07 被阅读0次

    jumpserver 堡垒机环境搭建(详解)

    Jumpserver 是一款由python编写开源的跳板机(堡垒机)系统,实现了跳板机应有的功能。基于ssh协议来管理,客户端无需安装agent。

    特点:

    • 完全开源,GPL授权
    • Python编写,容易再次开发
    • 实现了跳板机基本功能,认证、授权、审计
    • 集成了Ansible,批量命令等
    • 支持WebTerminal
    • Bootstrap编写,界面美观
    • 自动收集硬件信息
    • 录像回放
    • 命令搜索
    • 实时监控
    • 批量上传下载

    jumpserver 3.0 安装

    相对于 jumpserver 2.0 版本,在新的版本 3.0 中取消了LDAP授权,取而代之的是ssh进行推送;界面也有所变化,功能更完善,安装更简单,不像 2.0 的版本,难住了好多人。下面通过两台主机来搭建 jumpserver堡垒机!

    • 环境:
    • Centos 6.5 x86_64
    • 关闭 iptables,关闭 selinux
    • jumpserver:192.168.1.200
    • clients:192.168.1.210
    • ps:操作只针对 jumpserver,clients 不会进行操作,只是环境需求。

    一、安装依赖包

    安装epel源

    yum -y install epel-release
    

    清理yum源缓存并重建缓存

    yum clean all && yum makecache
    

    升级软件包

    yum -y update
    

    安装依赖环境软件包

    yum -y install git python-pip gcc gcc-c++ automake autoconf python-devel vim sshpass lrzsz readline-devel mysql*  mariadb mariadb-server  
    

    二、初始化 mairadb Ubuntu 安装mysql

    安装完成MariaDB,首先启动MariaDB

    systemctl start mariadb
    

    设置开机启动

    systemctl enable mariadb
    

    接下来进行MariaDB的相关简单配置

    mysql_secure_installation
    

    首先是设置密码,会提示先输入密码

    Enter current password for root (enter for none): <-初次运行直接回车  
    设置密码  
    Set root password? [Y/n] <– 是否设置root用户密码,输入y并回车或直接回车  
    New password: <– 设置root用户的密码  
    Re-enter new password: <– 再输入一次你设置的密码  
    其他配置  
    Remove anonymous users? [Y/n] <– 是否删除匿名用户,回车  
    Disallow root login remotely? [Y/n] <–是否禁止root远程登录,回车,
    Remove test database and access to it? [Y/n] <– 是否删除test数据库,回车
    Reload privilege tables now? [Y/n] <– 是否重新加载权限表,回车
    

    初始化MariaDB完成,接下来测试登录

    mysql -uroot -p
    

    2、配置MariaDB的字符集

    文件/etc/my.cnf

    vi /etc/my.cnf
    在[mysqld]标签下添加

    init_connect='SET collation_connection = utf8_unicode_ci' 
    init_connect='SET NAMES utf8' 
    character-set-server=utf8 
    collation-server=utf8_unicode_ci 
    skip-character-set-client-handshake
    

    文件/etc/my.cnf.d/client.cnf

    vi /etc/my.cnf.d/client.cnf

    在[client]中添加

    default-character-set=utf8
    

    文件/etc/my.cnf.d/mysql-clients.cnf

    vi /etc/my.cnf.d/mysql-clients.cnf

    在[mysql]中添加

    default-character-set=utf8
    

    全部配置完成,重启mariadb

    systemctl restart mariadb
    

    三、下载 jumpserver

    cd /opt 
    git clone https://github.com/ibuler/jumpserver.git
    

    注: 如果下载失败,则去github上面下载zip包,unzip解压缩即可

    四、执行快速安装脚本

    cd /opt/jumpserver/install
    pip install -r requirement.txt
    python install.py 
    

    注:在执行‘python install.py’ 前需要创建数据库,库名随意。

    create database jumpserver;
    

    输入smtp信息之后发现报错了,是python的pycrypto模块问题,需要卸载重装:

    pip uninstall pycrypto 
    easy_install pycrypto
    

    安装之后继续 python install.py 进行安装,并且输入 web管理员用户名和管理员密码,ok
    运行 crontab,定期处理失效连接,定期更新资产信息

    cd /opt/jumpserver 
    python manage.py crontab add
    

    注:

    1. 根据提示输入相关信息,完成安装,安装完成后,请访问web,继续查看后续文档
    2. 如果启动失败,请返回上层目录,手动运行 ./service.sh start 启动
    3. 如果 ./service.sh start 启动失败
    cd /opt/jumpserver 
    python manage.py runserver 0.0.0.0:80 
    python run_websocket.py
    
    1. 如果启动失败,可能是由于80端口和3000端口已经被占用,或者数据库账号密码不对,请检查

    五、Web登录

    http://localhost:prot

    注意:

    在使用jumpserver过程中,有一步是系统用户推送,要推送成功,client(后端服务器)要满足以下条件:

    1. 后端服务器需要有python、sudo环境才能使用推送用户,批量命令等功能
    2. 后端服务器如果开启了selinux,请安装libselinux-python

    jumpserver4.0启动docker后需设置firewalld实现iptables的nat转发否则创建的jumpserver无法与外部服务器通讯

    iptables nat 设置
    iptables -t nat -A POSTROUTING -s 10.8.0.0/24  -j MASQUERADE
    firewalld nat 设置
    firewall-cmd --permanent --zone=public --add-masquerade
    firewall-cmd --permanent --zone=public --add-rich-rule='rule family=ipv4 \
    source address=10.8.0.0/24 masquerade'
    

    相关文章

      网友评论

          本文标题:整理jumpserver 3.0 堡垒机环境搭建(详解)

          本文链接:https://www.haomeiwen.com/subject/mrgpdxtx.html