關(guān)于跳板機(jī)/堡壘機(jī)的介紹:
跳板機(jī)可以使開發(fā)或運(yùn)維人員在維護(hù)過程中首先要統(tǒng)一登錄到這臺(tái)服務(wù)器妓雾,然后再登錄到目標(biāo)設(shè)備進(jìn)行維護(hù)和操作
跳板機(jī)使用場(chǎng)景
jumpserver概述
Jumpserver是一款開源的開源的堡壘機(jī)饵撑,可使系統(tǒng)的管理員和開發(fā)人員安全的連接到企業(yè)內(nèi)部服務(wù)器上執(zhí)行操作迷郑,并且支持大部分操作系統(tǒng),是一款非常安全的遠(yuǎn)程連接工具
常見支持的系統(tǒng):
CentOS, RedHat, Fedora, Amazon Linux
Debian
SUSE, Ubuntu
FreeBSD
其他ssh協(xié)議硬件設(shè)備
部署步驟
實(shí)驗(yàn)環(huán)境
關(guān)閉selinux
[root@centos7 ~]#setenforce 0
關(guān)閉防火墻
[root@centos7 ~]#systemctl stop firewalld
[root@centos7 ~]#iptables -F
安裝docker的源
[root@centos7 ~]#yum -y install wget
[root@centos7 ~]#cd /etc/yum.repos.d/
[root@centos7 ~]#wget https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
[root@centos7 ~]#wget http://mirrors.aliyun.com/repo/Centos-7.repo
[root@centos7 ~]#yum -y install centos-release-openstack-ocata
配置mariadb
安裝mariadb
[root@centos7 ~]#yum -y install mariadb-server
修改配置文件
[root@centos7 ~]#vim /etc/my.cnf
[client-server]
[mysqld]
symbolic-links=0
#禁止主機(jī)名解析
skip_name_resolve
!includedir /etc/my.cnf.d
啟動(dòng)服務(wù)
[root@centos7 ~]#systemctl start mariadb
[root@centos7 ~]#systemctl enable mariadb
創(chuàng)建jumpserver數(shù)據(jù)庫并授權(quán)
MariaDB [(none)]> create database jumpserver default charset 'utf8';
#創(chuàng)建管理賬號(hào)缩抡,密碼必須是數(shù)字加字母
MariaDB [(none)]> grant all on jumpserver.* to 'jumpserver'@'%' identified by 'linux123';
配置Redis
安裝Redis
[root@centos7 ~]#yum -y install redis
編輯配置文件
[root@centos7 ~]#vim /etc/redis.conf
61:bind 0.0.0.0
480:requirepass 123
啟動(dòng)服務(wù)
[root@centos7 ~]#systemctl start redis
[root@centos7 ~]#systemctl enable redis
配置docker
安裝docker
[root@centos7 ~]#yum -y install docker-ce
啟動(dòng)docker
[root@centos7 ~]#systemctl start docker
[root@centos7 ~]#systemctl enable docker
[root@centos7 ~]#mkdir /opt/jumpserver/data/media -pv
[root@centos7 ~]#mkdir /opt/jumpserver
下載jumpserver鏡像签餐,并運(yùn)行
[root@centos7 ~]#docker run --name jms_all -d \
-v /opt/mysql:/var/lib/mysql \
-v /opt/jumpserver:/opt/jumpserver/data/media \
-p 80:80 \
-p 2222:2222 \
-e SECRET_KEY=PEHVdLzvZFtDQT733ntHDH1hglXQ9OQKoI1xxAfdDhpRGx3tg7 \
-e BOOTSTRAP_TOKEN=YDzl55tZPTdclbUh \
-e DB_HOST=173.22.90.13 \ #當(dāng)前主機(jī)IP
-e DB_PORT=3306 \
-e DB_USER=jumpserver \ #數(shù)據(jù)庫用戶
-e DB_PASSWORD=linux123 \ #數(shù)據(jù)庫密碼
-e DB_NAME=jumpserver \ #數(shù)據(jù)庫名稱
-e REDIS_HOST=173.22.90.13 \
-e REDIS_PORT=6379 \
-e REDIS_PASSWORD=123 \ #Redis密碼
jumpserver/jms_all:1.4.8
查看狀態(tài)
[root@centos7 ~]#docker logs -f jms_all
#看到如下幾行即可
gunicorn is running: 57
celery is running: 73
beat is running: 75
guacd[98]: INFO: Guacamole proxy daemon (guacd) version 0.9.14 started
Starting guacd: SUCCESS
Tomcat started.
Use eventlet dispatch
Start coco process
Use eventlet dispatch
Start coco process
Use eventlet dispatch
Start coco process
Jumpserver ALL 1.4.8
官網(wǎng) http://www.jumpserver.org
文檔 http://docs.jumpserver.org
有問題請(qǐng)參考 http://docs.jumpserver.org/zh/docs/faq.html
進(jìn)入容器命令 docker exec -it jms_all /bin/bash
訪問測(cè)試
登入web界面,初始密碼賬號(hào)均為admin
登錄jumpserver服務(wù)web端進(jìn)行虛擬機(jī)管理操作
1)登錄admin管理界面
創(chuàng)建一個(gè)develop組
3)創(chuàng)建一個(gè)用戶curry茵乱,將curry添加到develop組里面,角色為普通用戶孟岛,然后提交
4)點(diǎn)擊更新瓶竭,給curry用戶添加登錄密碼
填寫curry用戶密碼然后提交
5)用curry賬號(hào)登錄
進(jìn)入curry用戶界面
6)創(chuàng)建一個(gè)管理用戶(用來管理資產(chǎn)虛擬主機(jī),此用戶必須要有資產(chǎn)虛擬主機(jī)的root身份渠羞,其中的密碼為ssh登錄虛擬主機(jī)的密碼)
7)創(chuàng)建資產(chǎn)(指的是被管理的虛擬主機(jī))
填入虛擬主機(jī)名斤贰、ip地址及管理用戶
點(diǎn)擊主機(jī)名,進(jìn)入資產(chǎn)詳情頁面
點(diǎn)擊測(cè)試次询,檢測(cè)被管理的虛擬主機(jī)是否能ping通荧恍,如下結(jié)果表明測(cè)試成功
8)創(chuàng)建一個(gè)過濾器
9)創(chuàng)建一個(gè)系統(tǒng)用戶(此用戶名在登錄虛擬主機(jī)后會(huì)被自動(dòng)創(chuàng)建,為虛擬主機(jī)登錄的默認(rèn)普通用戶屯吊,非管理員用戶送巡,權(quán)限比較小)
10)創(chuàng)建授權(quán)規(guī)則盒卸,將資產(chǎn)添加到develop組中骗爆,是的此組中的用戶可以訪問此資產(chǎn)虛擬主機(jī)
11)登錄curry用戶界面,點(diǎn)擊web終端
可以看到被授權(quán)的終端虛擬機(jī)蔽介,點(diǎn)擊虛擬終端即可在命令窗口操作終端
12)再設(shè)置過濾器
點(diǎn)擊規(guī)則
設(shè)置命令過濾禁止規(guī)則
13)此時(shí)再一次登錄curry頁面登錄虛擬主機(jī)時(shí)摘投,執(zhí)行這些命令將會(huì)被禁止煮寡,如下所示
14)回到admin的web端,在會(huì)話管理下的歷史會(huì)話可以打開錄像回放列表犀呼,記錄虛擬主機(jī)的所有操作過程的錄像
15)錄像回放
16)再創(chuàng)建一個(gè)資產(chǎn)
17)在資產(chǎn)授權(quán)中將此資產(chǎn)也添加到develop組中
18)登錄curry界面并打開web終端可以看到操作兩臺(tái)虛擬主機(jī)