|
|
jumpserver j: n! U: L& B( }
jumpserver是一款使用python,Django开发的开源跳板机系统: q& |8 Q x# S' {4 ~( N* c/ |$ U0 z6 d
1 f" G @/ M: |( G4 O& T官方地址:JumpServer - 开源堡垒机 - 官网
?! y! b' G7 d3 N8 f2 | ) d# R1 Y% G, [4 U9 F8 g
部署环境
0 Q2 D8 N; a# B/ |$ p
$ t9 E6 s6 Z0 u- Fpython = 3.6.x: F# S+ `6 p1 c( l9 g1 `
y* W: Z: r f8 L; Z+ x
Mysql server 最低5.63 C# M% z* ~1 [% R; c
0 v5 v# J/ {9 Y) W
Mariadb server 最低5.5.567 y+ u" L4 p/ t6 H
4 S: `' g0 b- N. E9 yRedis
& X' I2 K. o- b! ~8 I; t5 t$ @ ( G- q; h6 W' ^8 r1 b: ^
以下示例用docker创建! D' ~6 c' R% @# K/ z: q
% Z: o% ^! V; X4 q6 u7 s8 bdocker部署mysql
% V' [9 B2 t5 h2 B9 @- V8 `数据库编码要求utf8
) @' p' j" D& b- g1 i " a- R& F) n6 k6 z1 S7 S
# mkdir /data/mysql/{conf,jumpserver}, n2 B7 S+ T1 m
# docker pull mysql:5.6.48
/ I/ ^; M# }" U2 p+ L3 ]# docker run -it --rm --name mysql mysql:5.6.48 bash
4 d5 n' L! U) l! e/ K# docker cp mysql:/etc/mysql/mysql.conf.d/mysqld.cnf /data/mysql/conf/; Q) }9 p& q5 |, F; f. _" U
# docker cp mysql:/etc/mysql/conf.d/mysql.cnf /data/mysql/conf/
- U) K m, s3 M# G# z# vim /data/mysql/conf/mysql.conf9 }1 a" q9 ^( I8 q7 ~
default-character-set=utf8
. N, ~' i" j& [5 h# vim /data/mysql/conf/mysqld.conf
$ o% y8 ~3 t( e* q: n4 D2 A7 g5 h[mysqld]
! R/ b7 T M# a3 e+ m2 Ipid-file = /var/run/mysqld/mysqld.pid
. L/ o. U& Q& |& _6 a1 H$ ]1 Qsocket = /var/run/mysqld/mysqld.sock
e6 L* v: K7 N4 S0 ]datadir = /var/lib/mysql
+ U9 {8 A6 A9 I- b#log-error = /var/log/mysql/error.log
L/ d7 M, e9 [; X' P7 w5 J- q# Disabling symbolic-links is recommended to prevent assorted security risks. h/ X1 h( `- P
symbolic-links=0
, D- [, L) J- X% v) j$ v; Y$ \character-set-server=utf8
3 O6 I! S. |0 n. H0 ^. \# b0 V( C# 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
/ R2 Q7 e& }; ^$ {" ]4 c
7 W0 z; t. A* S# d) ~7 p. `##验证数据库编码是否为utf-8
- d# V* {6 g! I! M% a, \/ s# apt install mysql-client
) m* D, l' a3 z" {8 d+ m1 Y. K4 K# mysql -uroot -h127.0.0.1 -pmagedu.com
- G5 `" V. o, e8 k; smysql> show variables like "%character%";show variables like "%collation%";5 a1 J+ X+ ?& O9 p7 A q
mysql> create database jumpserver;3 @0 N' D5 `' X; ?, K: D" G) v
mysql> grant all on jumpserver.* to jumpserver@'172.17.%.%' identified by 'ilinux.com';
/ \5 _) t" d' D& ?mysql> flush privileges;
! e5 {% _$ G2 \3 Q, [docker部署redis * C b, Y1 x3 Q) r% H! U
# docker run -d -p 6379:6379 redis:alpine3.123 F) I Y. }8 m- u" k
# apt install -y redis! T/ h \' Y' T5 Q
# redis-cli 4 m" o* U1 A, D0 x* U# q" H
127.0.0.1:6379> info
6 @* s- T; W" T- u! l1 i. _6 mdocker部署jumpserver ' J0 Q- m2 ^1 O
##创建jumpserver容器6 r) Q+ f& f3 d. u! g
docker run --name jms_all \
8 [, E* A7 @( l* \: t/ c -v /opt/jumpserver:/opt/jumpserver/data/media \
2 M! g4 C( A3 U+ `" n -p 80:80 \: f( K' u) R( H, O2 u) }# Q+ k
-p 2222:2222 \
2 a8 N$ y% _: [& |4 | -e SECRET_KEY=nHQrsL0MbI8z2K1vKzcOQi9O2gouEZSqZj7gAdL2r5ikegSLXD \
4 T. A$ G5 Z. D6 M$ i -e BOOTSTRAP_TOKEN=V5XICWYCBMebHCXC \$ c8 ^' f. l, ?& Q( S& m' e0 |
-e DB_HOST=172.20.22.25 \: `7 M# a# q: p& J* m- E
-e DB_PORT=3306 \
- G' A/ [( i% v) ]" n+ G( z -e DB_USER='jumpserver' \
: B* G0 a2 [9 w* m2 l -e DB_PASSWORD="magedu.com" \! f7 D3 f6 [% J0 r$ s2 G* e
-e DB_NAME=jumpserver \
! }/ L' L5 L% D! R; N -e REDIS_HOST=172.20.22.25 \
4 Z7 @1 e' W& n# s% F% } -e REDIS_PORT=6379 \8 ~1 y9 T6 y" \
-e REDIS_PASSWORD= \9 `7 |+ O/ x, Z: }; O' G* b
jumpserver/jms_all:1.5.9& e9 }5 ]7 w" S! ~$ b9 Y& n0 c r
9 p3 p7 S ^2 b/ K; g5 [
###浏览器输入ip,默认用户名密码admin $ U& \$ n. H* |
& R; V8 |8 x/ Y
- W/ L& ~4 P' y( U1 v 7 H- @, s4 L* X/ n, q& A: K
配置用户和相应的服务器资源
, F4 Q \; z$ k/ c# H6 C[ol]jumpserver #登录jumpserver的账号。通常是开发或者测试同事的姓名(如果重名就加1、2区分,如user1、user2)管理用户 #是后端资产服务器的系统管理员账号(/etc/passwd),此账户用于资产信息收集以及推送系统账户系统账号 #是后端资产服务器的普通系统用用户(/etc/passwd),此账户用于启动web服务(nginx/apache/nobody)[/ol]
& J% c$ a0 @3 \6 H j添加jumpserver账号并指定对应的用户组8 a3 {( m( g$ a/ f; L
4 q0 t! `, w4 Z' d+ \# T" D! \) j
2 z S0 h, q) G3 z; U% D, ~ 5 \- Q/ ^! v* ^. @8 z& m
$ e/ c2 B q+ O: B
添加管理用户" y# _) ]9 \6 B+ K
% t$ `5 Q/ F0 |7 Z+ d2 u3 h8 f1 d S% o' C! J/ p
. {: I8 ?" L1 r' S
添加系统用户
" h/ y! I$ Z' D' _' Z
/ D* n/ x# S. @' i3 H Z1 v" L: Q" h; ^1 z! r4 V! L/ V$ {
添加资产
0 h5 g- Q( k3 i! k8 W $ B* A; ?% B1 a* p$ ?
7 c& J" j X( _6 I
- t2 J$ S% Z& p6 R: j. I9 H9 c
1 ^9 l/ m& g3 V8 {' S$ j4 ^
4 \6 G6 u8 S6 x: g3 J( t% { C z4 w- H4 W4 b& S: O8 f
K' Z5 A3 n6 l! P: b9 i# y
0 A; X2 h* C) n; F8 {* I. w3 ~% v 8 c* ]. ]1 g, W2 r6 e& Y+ O7 X3 P( j
1 I" B ^6 L3 ]+ L, e9 D% H
) E& h* Y" f& o6 m# Q! S
权限授权
% m( G6 w; {0 Y: v
: M# q) S: ]6 K- \9 X9 b" r, o. f' Q
# P0 }' U, ]0 K! F
使用新建用户查看对应的资产
5 Z6 J# q& ~ w- U8 g; ]
- N. Z& D$ ?5 M4 ^( V: G
$ w# [$ o8 E8 z1 U3 z. C' ] w
: b2 ^ k5 T( F; M5 T 通过web终端可直接登入服务器
3 }) \* \- @- E5 F7 H; b+ d# y ( R) c! B8 z: ?7 Z7 ~% p% O
7 R r# L7 U4 [+ Y' S
% T0 I/ }; b" s; h
命令过滤器
& F' ~5 A j2 W使用命令过滤器可禁止用户在服务器上使用一些危险性高的命令,比如rm,reboot,shutdown等
2 C+ M& Y1 W3 x, x! J 3 d8 E+ b1 t% k% i0 D+ @
配置命令过滤器
% z$ u( F* \( u- p- @ - N) `8 Y: q4 L( {; e( t
4 ^4 Z, f% k: e w0 s" t
* Q5 e" v% z. ^- l W8 R0 W6 [+ i a+ g; R; m8 D! @
$ [3 Y* V5 Z8 ^3 v+ N( _修改系统用户设置,引用定义的命令过滤器
/ e6 s; h4 c0 B/ g# Z# s . a( G! f% i9 d7 r/ _
+ ?) X, q d( t7 H: O7 {) S# L1 b5 f & j' c2 i0 C+ G
登入验证
Y" b, S: c4 Q6 _! u 0 X9 |" h$ ?' j+ u/ d' @, B
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
x
|