开源软件名称:ansible-jumpserver
开源软件地址:https://gitee.com/bottlelee/ansible-jumpserver
开源软件介绍:
ansible-jumpserver介绍使用 Ansible 自动化部署软堡垒机 jumpserver。实现以下功能: - 支持 All In One 部署,也支持使用外部 Redis/MySQL。
- 启用 Yum/Apt 的自动更新功能,确保堡垒机系统的缺陷漏洞尽量少。
- 自动备份数据库,备份数据在 /var/backup/db 目录下。
- 自带监控服务 monit,实现基本的服务自修复。
软件架构目前只支持单机部署。Redis 和数据库可以使用外部连接。 在以下环境及工具测试通过 系统/软件 | 版本 |
---|
Ubuntu | xenial | CentOS | 7 | Ansible | 2.7.5 | python | 3.6 |
安装教程准备前- 在控制机上获取部署代码。
git clone --depth 1 https://gitee.com/bottlelee/ansible-jumpserver.git - 在控制机上安装 ansible。
chmod +x bootstrap-ansible.shsudo -H ./bootstrap-ansible.sh - 复制 sample inventory,使用你需要的名称(例如 stage)
cp -R inventories/sample inventories/stage 修改 hosts 和 group_vars编辑 inventories/stage/hosts.ini ,就修改 jms 的连接信息就好了。 编辑 inventories/stage/group_vars/all/all.yml ,主要是 jms_zone 的名称,用于识别目标区(例如不同的机房或网域)。 初次部署ansible-playbook -i inventories/stage/hosts.ini play-all.yml 分步部署- 在 vars 目录下找到同名变量文件,例如 00-init.yml 对应的变量配置在
inventories/stage/group_vars/all/init.yml 下,按实际需求修改。 - 用 ansible-playbook 命令执行对应的 playbook 即可。例如
ansible-playbook -i inventories/stage/hosts.ini 00-init.yml - 对变量和模板的内容不理解的,请参考 官方文档 的说明。
使用说明- 部署过程中生成的密码都存放在
inventories/stage/credentials 目录下。 - Jumpserver 管理文档
- Jumpserver 用户使用文档
- 部署的服务都使用 systemd 进行管理,如
systemctl restart jumpserver 或 service jumpserver restart
生产环境适配- 跳过 01-redis.yml 和 02-mysql.yml 的执行。本项目部署的只是单点数据库,不具备高可用,切勿使用到生产环境。
- 修改
inventories/stage/group_vars/all/jumpserver.yml 里“自定义 redis”和“自定义 mysql”两部分的内容。 - 这样你就可以部署多个 jumpserver+coco+guacamole+luna 的服务器节点,它们共享同一个数据库。
参与贡献- Fork 本仓库
- 新建 Feat_xxx 分支
- 提交代码
- 新建 Pull Request
我的其它项目自动化部署 ELK |
请发表评论