jumpserver(管理端) 192.168.1.25 docker-ce jumpserver/jms_all:1.4.8鏡像 backend-db(被管理的後端服務) 192.168.1.26 mariadb mariadb-server redis backend(被管理的後端服務) 192.168.1.27
[root@localhost ~]# wget -O /etc/yum.repos.d/base.repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
[root@localhost ~]# yum list *docker-ce* Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile * base: mirrors.huaweicloud.com * extras: mirrors.huaweicloud.com * updates: mirrors.huaweicloud.com Installed Packages docker-ce.x86_64 3:18.09.7-3.el7 @docker-ce-stable docker-ce-cli.x86_64 1:18.09.7-3.el7 @docker-ce-stable Available Packages docker-ce-selinux.noarch
yum install docker-ce -y
[root@localhost ~]# systemctl start docker [root@localhost ~]# systemctl enable docker
[root@localhost ~]# ll /etc/docker/ total 4 -rw------- 1 root root 244 Jul 2 13:16 key.json
[root@localhost ~]# vim /etc/docker/daemon.json { "registry-mirrors":["https://9916w1ow.mirror.aliyuncs.com"] }
[root@localhost ~]# systemctl restart docker
[root@localhost ~]# docker info
[root@localhost ~]# docker pull jumpserver/jms_all:1.4.8 …… Using default tag: latest latest: Pulling from jumpserver/jms_all 8ba884070f61: Downloading[===> ]5.389MB/75.4MB 6b54480a4844: Downloading [===> ] 16.62MB/244.6MB e6e1e1d12d27: Downloading [==> ] 9.1MB/162.5MB 2aaff2cdbbad: Waiting 3cdd227b7107: Waiting 3e28c9c2ba8d: Waiting
[root@localhost ~]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE jumpserver/jms_all 1.4.8 e9274ba449e8 3 months ago 1.31GB
[root@backend-db ~]#yum install centos-release-openstack-rocky.noarch -y
[root@backend-db ~]# yum list *mariadb* Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile * base: mirror.jdcloud.com * centos-qemu-ev: mirrors.tuna.tsinghua.edu.cn * extras: mirrors.tuna.tsinghua.edu.cn * updates: mirrors.tuna.tsinghua.edu.cn Installed Packages mariadb.x86_64 3:10.1.20-2.el7 @centos-openstack-rocky mariadb-common.x86_64 3:10.1.20-2.el7 @centos-openstack-rocky mariadb-config.x86_64 3:10.1.20-2.el7 @centos-openstack-rocky mariadb-errmsg.x86_64 3:10.1.20-2.el7 @centos-openstack-rocky mariadb-libs.x86_64 3:10.1.20-2.el7 @centos-openstack-rocky mariadb-server.x86_64 3:10.1.20-2.el7 @centos-openstack-rocky Available Packages mariadb-bench.x86_64 3:10.1.20-2.el7 centos-openstack-rocky mariadb-connect-engine.x86_64 3:10.1.20-2.el7 centos-openstack-rocky mariadb-devel.i686 1:5.5.60-1.el7_5 base mariadb-devel.x86_64 3:10.1.20-2.el7 centos-openstack-rocky mariadb-embedded.i686 1:5.5.60-1.el7_5 base mariadb-embedded.x86_64 3:10.1.20-2.el7 centos-openstack-rocky mariadb-embedded-devel.i686 1:5.5.60-1.el7_5 base mariadb-embedded-devel.x86_64 3:10.1.20-2.el7 centos-openstack-rocky mariadb-libs.i686 1:5.5.60-1.el7_5 base mariadb-server-galera.x86_64 3:10.1.20-2.el7 centos-openstack-rocky mariadb-test.x86_64
[root@backend-db ~]# yum install mariadb-server -y
[root@backend-db ~]# systemctl enable mariadb [root@backend-db ~]# systemctl start mariadb create database jumpserver default charset 'utf8'; grant all on jumpserver.* to 'jumpserver'@'%' identified by 'centos123';
[root@backend-db ~]# yum install redis -y
[root@backend-db ~]# vim /etc/redis.conf …… bind 192.168.1.26 #監聽本機ip地址 …… requirepass centos123 #修改redis的鏈接密碼 ……
[root@backend-db ~]# systemctl enable redis [root@backend-db ~]# systemctl start redis
[root@localhost ~]# mkdir /opt/mysql -pv [root@localhost ~]# mkdir /opt/jumpserver -pv
[root@localhost ~]#if [ "$SECRET_KEY" = "" ]; then SECRET_KEY=`cat /dev/urandom | tr -dc A-Za-z0-9 | head -c 50`; echo "SECRET_KEY=$SECRET_KEY" >> ~/.bashrc; echo $SECRET_KEY; else echo $SECRET_KEY; fi [root@localhost ~]# if [ "$BOOTSTRAP_TOKEN" = "" ]; then BOOTSTRAP_TOKEN=`cat /dev/urandom | tr -dc A-Za-z0-9 | head -c 16`; echo "BOOTSTRAP_TOKEN=$BOOTSTRAP_TOKEN" >> ~/.bashrc; echo $BOOTSTRAP_TOKEN; else echo $BOOTSTRAP_TOKEN; fi
[root@localhost ~]#docker run --name usa -d \ #容器的名稱爲usa -v /opt/mysql:/var/lib/mysql \ #將宿主主機/opt/mysql路徑,映射到容器/var/lib/mysql路徑 -v /opt/jumpserver:/opt/jumpserver/data/media \ #將宿主主機/opt/jumpserver路徑,映射到容器/opt/jumpserver/data/media路徑 -p 80:80 \ #-p爲端口映射選項,訪問本機80端口時會被映射到容器的80端口, -p 2222:2222 \ -e SECRET_KEY=S5ROTQj9vckA31G8BGBnQEQ2wxcyRQ0MYE40OE7njpJdK1yeap \ #傳遞祕鑰參數 -e BOOTSTRAP_TOKEN=EL8qi4sLXCTIiVH9 \ #傳遞引導啓動口令參數 -e DB_HOST=192.168.1.26 \ #傳遞鏈接mysql數據庫主機 -e DB_PORT=3306 \ #mysql數據庫端口 -e DB_USER=jumpserver \ #mysql數據庫中受權的用戶 -e DB_PASSWORD=centos123 \ #mysql數據庫中用戶密碼 -e DB_NAME=jumpserver \ #mysql數據庫中建立的數據庫名稱 -e REDIS_HOST=192.168.1.26 \ #指定鏈接redis數據庫的主機 -e REDIS_PORT=6379 \ #redis啓用的端口 -e REDIS_PASSWORD=centos123 \ #redis數據庫登陸的密碼 jumpserver/jms_all:1.4.8 #jumpserver服務的版本
[root@localhost ~]# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 0eec322a30b3 jumpserver/jms_all:1.4.8 "entrypoint.sh" 4 hours ago Up About an hour 0.0.0.0:80->80/tcp, 0.0.0.0:2222->2222/tcp usa
[root@localhost ~]# docker logs -f 0eec322a30b3 若出現訪問 ConnectionRefusedError: ……http//127.0.0.1:8080 …. refused…..報錯 則須要修改docker容器中tomcat的server.xml配置文件 [root@localhost conf]# vim /var/lib/docker/devicemapper/mnt/84d4fd5a5ee81f77b948c8919a2f12c1577d5161a668d2dcbad4425c3d8287d9 /rootfs/config/tomcat8/conf/server.xm
將defaultHost="localhost"改成defaultHost="192.168.1.25" 將<Host name=localhost appBase="webapps"中的改成name改成name=192.168.1.25
[root@localhost ~]# docker logs -f 0eec322a30b3
1)登陸admin管理界面
2)建立一個develop組
3)建立一個用戶curry,將curry添加到develop組裏面,角色爲普通用戶,而後提交
4)點擊更新,給curry用戶添加登陸密碼
填寫curry用戶密碼而後提交mysql
5)用curry帳號登陸linux
進入curry用戶界面web
6)建立一個管理用戶(用來管理資產虛擬主機,此用戶必需要有資產虛擬主機的root身份,其中的密碼爲ssh登陸虛擬主機的密碼)
7)建立資產(指的是被管理的虛擬主機)
填入虛擬主機名、ip地址及管理用戶
點擊主機名,進入資產詳情頁面
點擊測試,檢測被管理的虛擬主機是否能ping通,以下結果代表測試成功
8)建立一個過濾器redis
9)建立一個系統用戶(此用戶名在登陸虛擬主機後會被自動建立,爲虛擬主機登陸的默認普通用戶,非管理員用戶,權限比較小)sql
10)建立受權規則,將資產添加到develop組中,是的此組中的用戶能夠訪問此資產虛擬主機
11)登陸curry用戶界面,點擊web終端docker
能夠看到被受權的終端虛擬機,點擊虛擬終端便可在命令窗口操做終端數據庫
12)再設置過濾器
點擊規則
設置命令過濾禁止規則
13)此時再一次登陸curry頁面登陸虛擬主機時,執行這些命令將會被禁止,以下所示
14)回到admin的web端,在會話管理下的歷史會話能夠打開錄像回放列表,記錄虛擬主機的全部操做過程的錄像
15)錄像回放
16)再建立一個資產
17)在資產受權中將此資產也添加到develop組中
18)登陸curry界面並打開web終端能夠看到操做兩臺虛擬主機json