本博客链接:https://security.blog.csdn.net/article/details/85259990
堡垒机选择
地址:https://github.com/jumpserver/jumpserver
另外一个不错的文章:https://blog.csdn.net/zhao1955/article/details/78758809
安装测试
环境:新安装纯净的centOS 7
测试方式:每换一种方式,就重做一次系统,保证系统的纯净性
官方推荐:一体化安装
极速安装
出现的一些问题:
1、第二步的时候,主要是部分命令的细微问题导致的后续命令不能执行
2、后续步骤仍然会出现各种奇怪的问题
测试结果:不推荐用该方式
docker安装
官方不推荐。理由:
一步一步安装
安装过程中产生的问题:
最终不能顺利加载css文件,导致浏览器打开的页面为白板化页面。
解决方案:未解决
官方的说明:帮助用户了解各组件之间的关系。
一体化安装
实际上与一步一步安装
是一样的。
官方的说明:生产环境中安装。
产生的问题:没有coco、Guacamole。
解决方案:参照一步一步安装
进行单独安装即可
安装过程中的问题
配置文件
/opt/jumpserver/config.py
SECRET_KEY = '2vym+ky!997d5kkcc64mnz06y1mmui3lut#(^wd=%s_qj$1%x'
//理论上是可以自己生成的(用自己的key),但是改为自己的key之后,后续安装会出现问题,不知道解决办法,所以不修改
BOOTSTRAP_TOKEN = 'nwv4RdXpM82LtSvmV'
//可以修改为自己的。只需要在后面用到这个字符串的时候也用自己的就行
关于docker的问题:
即最后的「多组建负载说明」,如果安装这个后,浏览器中打不开页面。
猜测可能是centOS版本太老旧,导致的docker命令没有成功所致的。
如下:
docker run --name jms_coco01 -d -p 2223:2222 -p 5001:5000 -e CORE_HOST=http://<Jumpserver_url> -e BOOTSTRAP_TOKEN=nwv4RdXpM82LtSvmV jumpserver/jms_coco:1.4.6
docker run --name jms_coco02 -d -p 2224:2222 -p 5002:5000 -e CORE_HOST=http://<Jumpserver_url> -e BOOTSTRAP_TOKEN=nwv4RdXpM82LtSvmV jumpserver/jms_coco:1.4.6
当然也不确定是不是这个原因(因为我的虚拟机不能执行yum -update,执行后重启进不去系统)
安装最佳实践
按照「一站式部署」安装,不要安装最后的「多负载组件说明」
安装redis不能启动
需要创建redis用户,如果因为管制原因不能创建redis用户,则修改:/usr/lib/systemd/system/redis.service
[Service]
ExecStart=/usr/bin/redis-server /etc/redis.conf --supervised systemd
ExecStop=/usr/libexec/redis-shutdown
Type=notify
User=root
Group=root
RuntimeDirectory=redis
RuntimeDirectoryMode=0755
安装nginx不能启动
同样的,也是因为管制,不能创建nginx用户和用户组,需要将用户改为root。
文件:/etc/nginx/nginx.conf
后知后觉的大招--破除管制
chattr -i /etc/passwd
chattr -i /etc/group
chattr -i /etc/shadow
chattr -i /etc/gshadow
docker启动失败
解决办法:https://www.213.name/archives/1193
安装后的修改
1、修改内置邮件地址
/opt/jumpserver/apps/users/migrations/0001_initial.py
/opt/jumperserver/apps/users/models/user.py
将内置的admin@mycomany.com修改为自己的
2、修改指纹
/opt/jumpserver/docs/conf.py
/opt/jumpserver/docs/introduce.rst
/opt/jumpserver/apps/locale/zh/LC_MESSAGES/django.po //重点
其中如果未来有可能会使用到英文版,要将其对应的英文、对应位置的英文也进行修改(中文对应的英文和位置对应的英文要一致,因为翻译就是靠这个翻译的)。
修改完成后,删除django.mo文件,然后打开django.po文件,在开头几行处有一个
#,fuzzy
将该行删除,删除后保存文件。之后执行
msgfmt django.po
会发现目录下多了一个文件:
messages.mo
然后对其进行重命名,执行:
mv messages.mo django.mo
重命名之后,打开django.po,加上:
#,fuzzy
重启jumpserver,至此,修改结束