|
jumpserver
4 x" s/ q/ E6 f' sjumpserver是一款使用python,Django开发的开源跳板机系统
6 i! L O& k; e$ B* N5 D
4 J) D+ u5 W* x6 } n官方地址:JumpServer - 开源堡垒机 - 官网
1 a( S( u0 p# B! {7 Q" b * J0 f8 c; R# E; o, h: J) N& q9 k
部署环境
' x& U# _8 d1 {# u* @
. W7 ?2 z% Q+ u f0 Apython = 3.6.x
& K$ s1 u3 F$ ]- ^
0 C0 |* t0 D0 kMysql server 最低5.65 x8 \: x' _' O. d: N I6 Q
7 A+ a/ g; ^. d% _) ^7 lMariadb server 最低5.5.56% R: C9 W, g' y
- f5 P* i4 E) i2 y0 kRedis9 N: j6 W0 ?) ~' U1 K
# \+ l( g3 N, a
以下示例用docker创建
0 T0 e2 I- W- j( K( d: ?
1 H& U4 G( \; X2 m; ndocker部署mysql
' W _5 I4 v, W6 v, y: y# N7 R数据库编码要求utf8- H+ H7 D& @9 e( a. h
Q. Z' H) K* z' y4 ], u: q
# mkdir /data/mysql/{conf,jumpserver}
' X! h/ ? y1 `" H6 }# docker pull mysql:5.6.48& J+ [+ k& s# l! ?/ ?. w/ b8 f
# docker run -it --rm --name mysql mysql:5.6.48 bash: p2 n: Q& C$ {7 R( M; R7 F9 G( q
# docker cp mysql:/etc/mysql/mysql.conf.d/mysqld.cnf /data/mysql/conf/$ r. _8 _' `: G n* Q% I
# docker cp mysql:/etc/mysql/conf.d/mysql.cnf /data/mysql/conf/3 `% k+ w0 e: O; o" i/ B' z, L
# vim /data/mysql/conf/mysql.conf
" F$ |: a* F& W8 Pdefault-character-set=utf8+ ^% v( Q U0 D1 X0 l9 a
# vim /data/mysql/conf/mysqld.conf
: D, y4 ~) {: l( O5 B[mysqld]' e4 A3 P7 b e& u: g$ p
pid-file = /var/run/mysqld/mysqld.pid
. [ N) @6 Y2 n+ a$ `9 F+ ]socket = /var/run/mysqld/mysqld.sock9 ^) ]) a) n+ K9 C4 l5 I, |
datadir = /var/lib/mysql: [/ k9 h v9 o
#log-error = /var/log/mysql/error.log+ M* Y+ B& X8 u" E2 }
# Disabling symbolic-links is recommended to prevent assorted security risks: p6 K8 R# p6 q' K
symbolic-links=0/ j h; W; K0 N
character-set-server=utf8
% N ^# S- L* K4 Q: j! K. U _# 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; n3 w- I2 E% u
4 _2 i1 H/ ]6 z) t& ?& ?5 F: J
##验证数据库编码是否为utf-8. ?4 s$ u- L! P; v
# apt install mysql-client4 [. R; n* D* Y" \# v; V/ g
# mysql -uroot -h127.0.0.1 -pmagedu.com0 i0 G, G2 i! o1 R3 f
mysql> show variables like "%character%";show variables like "%collation%";. x/ _3 i+ o% m
mysql> create database jumpserver;. `) S- I1 E6 ?9 c
mysql> grant all on jumpserver.* to jumpserver@'172.17.%.%' identified by 'ilinux.com';
) v, V$ H$ T, g: t8 |mysql> flush privileges;
. \: k8 c( O9 H( t, L5 k( D( _* Rdocker部署redis
6 l; C4 ]* B" a# docker run -d -p 6379:6379 redis:alpine3.12
; n' H4 e: j) \/ Q# apt install -y redis! P+ E& i# N/ p
# redis-cli
2 h' W! n" g: O' o: f127.0.0.1:6379> info $ t5 \; v: t" y' `2 w0 z
docker部署jumpserver 3 T- o- P% W5 o9 K9 b* f
##创建jumpserver容器
7 A; Q0 Q5 N; T' U& adocker run --name jms_all \
/ Z2 P0 A8 h$ o E3 M! P% I; _ -v /opt/jumpserver:/opt/jumpserver/data/media \
) y8 U, l1 h7 t2 C/ y! @% T J) A' I -p 80:80 \: c+ [; m5 j: ]! B
-p 2222:2222 \
( X/ U t6 v! D% u; ~" y& A# R3 o! l) R -e SECRET_KEY=nHQrsL0MbI8z2K1vKzcOQi9O2gouEZSqZj7gAdL2r5ikegSLXD \
o/ t9 L% e+ s* [4 l9 f -e BOOTSTRAP_TOKEN=V5XICWYCBMebHCXC \
& N- ~# D* p. d' O: a% d$ a* x -e DB_HOST=172.20.22.25 \
( B, y- Y, O; g, C -e DB_PORT=3306 \# P- S# Q( q/ p. \
-e DB_USER='jumpserver' \5 O0 }" l3 K& K8 I3 R$ e5 I s
-e DB_PASSWORD="magedu.com" \
% w( ^: G3 X+ V7 Q8 s -e DB_NAME=jumpserver \
1 ?8 J. h' Y; k: M! m -e REDIS_HOST=172.20.22.25 \
1 u4 ~% g. z H; k! |7 ~, P -e REDIS_PORT=6379 \
- \; N* ]. H' z: P7 [ -e REDIS_PASSWORD= \
; x. e) r! {: r3 Q jumpserver/jms_all:1.5.9/ p7 {6 Q P, F4 C
4 G; Z9 H+ i7 q" ^! r
###浏览器输入ip,默认用户名密码admin
5 Z7 ^, j3 s+ ^( n+ D* U
8 I4 O( G" k# Q ^$ y' @5 T
5 G9 K7 f g" W
: u: w0 t5 T2 b4 U4 O1 G9 e9 @) x配置用户和相应的服务器资源 , O# ^$ p, H8 n. t! X9 U l a& ? C
[ol]jumpserver #登录jumpserver的账号。通常是开发或者测试同事的姓名(如果重名就加1、2区分,如user1、user2)管理用户 #是后端资产服务器的系统管理员账号(/etc/passwd),此账户用于资产信息收集以及推送系统账户系统账号 #是后端资产服务器的普通系统用用户(/etc/passwd),此账户用于启动web服务(nginx/apache/nobody)[/ol]
( a; i- K, a3 i! r! p" o$ w添加jumpserver账号并指定对应的用户组
. P, g/ Y- f+ t* { 2 Z; A" P) \: K$ {. D I$ ]" U
$ V) _% ]! b' D4 `
) Z4 a" {" `) |6 |7 [
, G; J& u+ d6 L" }7 {2 H 添加管理用户
2 o) D& [7 G& O; a
" ]2 C0 F& ~: @6 f3 H
2 R; \# r5 S8 U3 q% k2 \ 3 @. e8 z; ^# `( L- [4 C
添加系统用户$ G7 x) d5 a: _2 ? C8 T6 H
- V" }, v: N" Z. G+ m3 S7 ?
2 H6 h m: m4 L$ I: @7 [6 |添加资产" q* Z8 r* l/ _ Y% u" \( ^
& Q( t* X& \7 n0 l
! t* O; o$ q$ ~1 {0 f0 l
* P- G2 ^, A& D9 a+ g" m( _: {$ T3 S O$ B4 V$ A" r! Y9 f8 u3 z/ W
, T$ n, O* ]3 S W4 c4 ]6 p
! O2 l! ?- ?% \) [3 ?
) X& O1 [% u# S3 ^$ v4 t2 s. _
* E! C5 Z( x( e" T: w3 R
# d: J; K/ h) w( ]( v! w7 ^, _0 n. C& E5 C, M0 V
; p- g6 t( Z/ k) T
权限授权
/ X; l0 t, c6 z- [; b1 B7 e7 g0 q
* q( H- f1 v7 q3 H k7 w6 Z" c3 y' Q3 Z
2 D; v: M+ j1 u4 f; x7 a1 t8 B/ y, ]使用新建用户查看对应的资产
2 y4 D+ g- T) S+ L3 E- o# n, Y * C2 A2 ]; K9 i- z7 Y4 M
4 {2 T. F# ~% v2 G; d2 u$ \
% ^. G; Z; C) H( f) m* x+ Q r 通过web终端可直接登入服务器
# }3 h3 L. ?3 A* q) C- _# f+ ? " r* C+ q6 N; E' _7 L' t
# @ X$ i9 W9 U8 c1 D " I! \: Z1 W6 j# j
命令过滤器
0 s d. B j6 j# `9 Y% x使用命令过滤器可禁止用户在服务器上使用一些危险性高的命令,比如rm,reboot,shutdown等
: V* @' Z5 Z2 B2 n, n0 N8 D , }: V' T2 n' d: V
配置命令过滤器0 [' z- ^" r6 R: ]' X
. e6 e% n2 w1 Q: u
' ^5 n, O9 b t' [5 J; y
2 D# U# V3 w' f& D* i5 F4 \6 e5 y4 L
" Z0 G$ @$ Q4 N, r& y4 }
$ ?) Q- F- G) v: P7 r, m" m) M. Y4 h$ Q修改系统用户设置,引用定义的命令过滤器 3 \! u; x: j7 C* y' t
4 C1 ^! w( [" h" i( [' i1 m% C' H7 h6 h
5 U2 n& |/ |6 c x z$ W; ]5 G
登入验证
: K: l! ~/ t5 Y$ I& Y
# q# k1 T) x1 W( c |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
x
|