|
|
jumpserver / g2 @" W+ p/ t# u% U9 ^
jumpserver是一款使用python,Django开发的开源跳板机系统
9 m: ?; O/ P: \0 x5 u4 z% s8 n
0 h4 c$ [# k) y. B官方地址:JumpServer - 开源堡垒机 - 官网& G5 U2 j- K8 @1 C1 [, b
5 y7 V7 ?( V$ I/ l n
部署环境% l) w3 ^" F- o0 o
+ H0 o. [5 e& U2 ^$ S: g- Cpython = 3.6.x+ H: p5 Z- j& m+ n! U
( G( q+ J9 B+ C! O6 O/ EMysql server 最低5.6+ G2 ^; {+ E) J: t& j3 ^% x8 T6 p5 w
@9 g8 `7 v% h @+ g2 G) HMariadb server 最低5.5.56: v! M$ T; n, F* X
4 f; ^' I" w) m5 W$ rRedis
% {) x) \* F. R3 T 6 V; s+ ]9 k( y. I: ?
以下示例用docker创建# E+ D" ?8 @- Q# F; n* m: u
0 S3 j0 c0 i1 w) T$ vdocker部署mysql
: X ?. j/ p! b0 I( V0 }( R2 @数据库编码要求utf8: Y9 e( [5 |. D' D7 N9 h* y
+ U( ]4 N4 a! O8 K
# mkdir /data/mysql/{conf,jumpserver} a) R9 x7 v5 c5 l: q! x
# docker pull mysql:5.6.48
4 B* C* `. G; ^# docker run -it --rm --name mysql mysql:5.6.48 bash
: c' `3 M) \! \5 L# docker cp mysql:/etc/mysql/mysql.conf.d/mysqld.cnf /data/mysql/conf/9 l7 H- V/ h* G8 M% C/ X, _: u
# docker cp mysql:/etc/mysql/conf.d/mysql.cnf /data/mysql/conf/9 V4 Q. K$ M. D( b `; R
# vim /data/mysql/conf/mysql.conf1 O+ r$ H; b' _9 K- v# `
default-character-set=utf8
; b; U5 f5 N; k/ A# vim /data/mysql/conf/mysqld.conf
6 y- P* r. l$ U _/ Y8 z5 O) x; n[mysqld], a+ n2 J" M4 w4 m p% M
pid-file = /var/run/mysqld/mysqld.pid
2 P* V6 a6 [+ lsocket = /var/run/mysqld/mysqld.sock! L6 {1 m& _& |# @9 ]1 K6 V
datadir = /var/lib/mysql, K- I# M* E: J
#log-error = /var/log/mysql/error.log
8 z) x7 v6 J5 t: @# Disabling symbolic-links is recommended to prevent assorted security risks
1 Y* H. `0 ^7 ]/ d9 }- _symbolic-links=0
+ j }# z0 z& W# F6 A* m% fcharacter-set-server=utf8
9 x- H e) m E4 i. c. v# docker run -it -d -p 3306:3306 -v /data/mysql/conf/mysqld.cnf:/etc/mysql/mysql.conf.d/mysqld.cnf -v /data/mysql/conf/mysql.cnf:/etc/mysql/conf.d/mysql.cnf -v /data/mysql/jumpserver:/var/lib/mysql -e MYSQL_ROOT_PASSWORD="ilinux.com" mysql:5.6.48! R7 C" I! x8 d/ F( U6 x( u
6 R) \: O2 @& m3 N##验证数据库编码是否为utf-8
' ^5 \+ u ^6 N$ v5 W# apt install mysql-client r0 d9 O) N2 Z2 c
# mysql -uroot -h127.0.0.1 -pmagedu.com8 K7 p' b8 X$ e1 W2 F5 k8 Z9 m, N
mysql> show variables like "%character%";show variables like "%collation%";* h, ]+ \/ {, A3 L
mysql> create database jumpserver;
# ?- O, q' m- y, N6 h* y" kmysql> grant all on jumpserver.* to jumpserver@'172.17.%.%' identified by 'ilinux.com';
9 g! }8 p4 F6 hmysql> flush privileges; : p: r( f7 \ D; W. U% }9 w
docker部署redis $ G& F5 ]- {5 D; _9 X
# docker run -d -p 6379:6379 redis:alpine3.127 k+ [' Q% b- z' ?+ R1 P! a9 {
# apt install -y redis( q* |# A" F9 W8 t2 S v! e. I
# redis-cli " K1 u* ~: a# ?. N9 ^/ R3 q
127.0.0.1:6379> info : y+ m5 L% w* O9 b
docker部署jumpserver
5 _8 P# r7 y/ C9 E; C9 S" ~& ]##创建jumpserver容器$ d' q4 ]' m+ a5 u& M f. R
docker run --name jms_all \9 a& M' ^- K+ Y, Z
-v /opt/jumpserver:/opt/jumpserver/data/media \
- J7 r, {" n2 C. l -p 80:80 \- u+ \: {# V3 ~; Y
-p 2222:2222 \- s) y: U3 {) o5 h3 s4 I7 l
-e SECRET_KEY=nHQrsL0MbI8z2K1vKzcOQi9O2gouEZSqZj7gAdL2r5ikegSLXD \
' |; P7 g4 R1 v/ a7 P4 W; V! y -e BOOTSTRAP_TOKEN=V5XICWYCBMebHCXC \7 L- B/ R( B3 E
-e DB_HOST=172.20.22.25 \+ S* I2 ?: E) _& W4 W3 g
-e DB_PORT=3306 \, W; w3 s, W2 d- I4 Q- }
-e DB_USER='jumpserver' \7 f! ^0 z; F+ p( h& M! V& Z# ^
-e DB_PASSWORD="magedu.com" \; L$ z' F6 S! w0 W3 J
-e DB_NAME=jumpserver \& E/ z. s/ d; V5 |( D- G
-e REDIS_HOST=172.20.22.25 \; x! ^' a/ s: C. V }/ r
-e REDIS_PORT=6379 \: ^6 h; O) `2 T5 E9 V9 q
-e REDIS_PASSWORD= \; ^9 ~) L' A" d/ a4 u8 n( z
jumpserver/jms_all:1.5.9
0 D/ I5 e2 n, x3 f' n9 J* s" _: o' P" U
###浏览器输入ip,默认用户名密码admin - y4 H- l* w, n
3 o2 C1 x3 I, n& |
4 o5 c4 {5 G: h% c3 s" { d- o
) j2 r( O( c+ w3 s/ M9 b) x( e配置用户和相应的服务器资源
& _- o3 o- I! N+ G. S[ol]jumpserver #登录jumpserver的账号。通常是开发或者测试同事的姓名(如果重名就加1、2区分,如user1、user2)管理用户 #是后端资产服务器的系统管理员账号(/etc/passwd),此账户用于资产信息收集以及推送系统账户系统账号 #是后端资产服务器的普通系统用用户(/etc/passwd),此账户用于启动web服务(nginx/apache/nobody)[/ol]* O$ f3 C4 X1 O" A6 f) e' q1 H
添加jumpserver账号并指定对应的用户组3 ~# a1 U. t! n" T: I
6 s) t/ t: I& e0 g& p+ u
8 s- z( |* r ^% J2 V& s q* n6 m& m: s7 V
7 A7 c+ C, F! m2 n2 m
添加管理用户
6 a5 O; L3 g! v; u$ x
; J7 ~' ~/ N ?4 z8 b8 M
' d2 j0 z; R, Y) w1 L, v" s* _% f
; f$ X9 n4 }' k4 Z添加系统用户8 m# C. }& u$ |% Q7 \0 C& @( v
" Y' J$ G2 t0 N* @1 u
/ K- `4 B% o5 M. m2 k8 ^: i% S添加资产$ p6 s$ _0 s& h3 n
. Q- Z2 ^. g2 }" Z) ^. G" s% i
' l3 _4 r( Y l( X& x$ {$ T3 ? 1 n E. u: e) d
% K9 Z, O: |$ R( g
+ L- ?4 i9 E: {4 w
9 f4 `; O7 C8 t6 t* X' v5 t; u' T * C- Z3 C- O! \* q
2 O- ]6 w$ w/ n9 ^3 ~
- [ N! Y5 W; C' `4 L1 k, W a" o4 `/ k9 D
0 a2 D; T) _. ?( T& Q; x权限授权
& w7 P2 ~: X# j1 \9 i ~
; ^3 s! Q6 Y2 ~6 p3 g S3 w6 a' P! x5 j
* R/ i# Y- n: U B4 \. d
使用新建用户查看对应的资产* S& \; T- r) ]' f: e# G0 r( ]/ R' B/ u
3 Y% E1 B! R! X! ?
) P: J/ N7 m! K9 V $ f0 a0 p# d! J% x* y1 k) H+ T" |
通过web终端可直接登入服务器9 I$ ?) s% M( R5 q4 p
! O0 c' C0 m5 o6 h: |5 T
7 ~: g6 A C5 ^; C" w
$ [: q! j3 w- r7 w9 X命令过滤器
; V6 P0 w V6 Y- G5 X使用命令过滤器可禁止用户在服务器上使用一些危险性高的命令,比如rm,reboot,shutdown等) ` o. K' |* G% z
0 z' e9 ^* n6 ] g; p配置命令过滤器7 s5 i# n. L0 t( [" J
1 X# S) v* T$ s# \/ F7 {2 R) h" W8 P! a3 P$ @) a" J, q! m
7 Q' \- H- a ]9 D9 U6 ]; ~6 B
/ ^2 _ n" Q; @- q' F e0 u
: B3 o( V3 F8 B- w修改系统用户设置,引用定义的命令过滤器
- d& Z' y1 C4 J" G% U6 j0 e % u) D' _0 Q5 X% H; w
# T/ z$ i9 W% _% Q3 L . z$ B% v" \' p: n
登入验证# q9 J1 S# l7 s: d- r: P
' L4 c: X% s5 P, j" o
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
x
|