|
|
jumpserver
0 v( i# y, |$ Q; N2 Tjumpserver是一款使用python,Django开发的开源跳板机系统7 E' G( H( p" ^6 e( k
: T! K6 g* f, @/ @0 [: k官方地址:JumpServer - 开源堡垒机 - 官网
" r. H( a) \# H
; {. W$ k. |3 o* c D9 w/ @0 L部署环境
5 D0 M% p9 `' S" m6 _: B - I% ~) B7 \4 b$ q: U
python = 3.6.x
* r$ L* Y8 A5 k# C5 d7 ] 8 M; J1 Z( z3 r! t
Mysql server 最低5.6& u4 h B D6 s& ~
; V0 Z: }3 Z- A1 g! f' P$ j
Mariadb server 最低5.5.56! I( T! S( u9 W
' K: j8 k V! j9 I$ uRedis
5 ~ o% Q( r, L # a# @! p/ y) t. `
以下示例用docker创建
4 |" W: _% X( }7 x- Q& d . }6 X( `! u. X9 K
docker部署mysql ! u* R# _; d! ~9 P$ |9 @2 V
数据库编码要求utf8
8 l/ j' J B# B E( U. ? % C* j3 W2 P3 e- B3 c# Y
# mkdir /data/mysql/{conf,jumpserver}- [1 Q9 x+ n4 G
# docker pull mysql:5.6.48& c3 \, i! z& r& N
# docker run -it --rm --name mysql mysql:5.6.48 bash
" w, d* `6 |; q0 p6 S: Z# docker cp mysql:/etc/mysql/mysql.conf.d/mysqld.cnf /data/mysql/conf/
+ Z5 M; O& }5 T, v# docker cp mysql:/etc/mysql/conf.d/mysql.cnf /data/mysql/conf/
" S8 ^& K4 {: a9 K+ h% \# vim /data/mysql/conf/mysql.conf
: e: l) X) ]( j; R1 T0 c, edefault-character-set=utf8
4 E4 n9 Z3 q- T: S# vim /data/mysql/conf/mysqld.conf! ^3 E* |" M) E! p
[mysqld]3 [5 ?; j& G0 t2 h
pid-file = /var/run/mysqld/mysqld.pid
5 }. |/ N% }0 f! U4 `5 w3 I! ysocket = /var/run/mysqld/mysqld.sock
& g9 c4 _1 a7 a0 t" s+ B3 s* ^datadir = /var/lib/mysql
( D' q5 m" Q! i$ M#log-error = /var/log/mysql/error.log V0 z( M/ i: s' ?) W/ u: n
# Disabling symbolic-links is recommended to prevent assorted security risks' n6 Y, [' h' m; _& l# R
symbolic-links=09 L; q1 `* S* |" x
character-set-server=utf8
( C2 J+ \& u4 w( }+ A7 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
: I! S1 P: g* @7 l- U# R
. V* b, T0 h! r7 X2 v g, B0 |) |##验证数据库编码是否为utf-8
$ L, @# a0 k! R6 j. i# apt install mysql-client2 G* b0 t5 a1 U7 }% Z9 o* e; S) G
# mysql -uroot -h127.0.0.1 -pmagedu.com
; f$ N) M1 N4 y# f4 R: J7 Z5 f! {mysql> show variables like "%character%";show variables like "%collation%";( W8 d+ a# t$ T
mysql> create database jumpserver;
+ p3 d4 D1 o( Imysql> grant all on jumpserver.* to jumpserver@'172.17.%.%' identified by 'ilinux.com';
3 r8 s2 G, } B, ~+ W& umysql> flush privileges;
8 I6 ] R+ U. j2 S/ d6 D5 j# J- Sdocker部署redis
9 q5 ]3 @& }. k3 y7 i5 a# docker run -d -p 6379:6379 redis:alpine3.12
0 o, ~% g3 @8 O. W" f4 v# apt install -y redis
4 |; T. v$ {( g) n: v# redis-cli
0 ^2 c! a( d$ z# q5 s127.0.0.1:6379> info
8 J8 ~9 I; d3 W+ \! J4 f2 F' ~$ Ddocker部署jumpserver # a2 v* A) V @2 W& `
##创建jumpserver容器+ m0 C) t% S9 o h r1 }
docker run --name jms_all \4 i+ ~. P* B5 `: t% C" ? c
-v /opt/jumpserver:/opt/jumpserver/data/media \5 {& C7 X. Z/ w) c& `, `2 F
-p 80:80 \
3 A6 a9 `- S8 S) h7 i -p 2222:2222 \8 r: f$ P* N6 V' B
-e SECRET_KEY=nHQrsL0MbI8z2K1vKzcOQi9O2gouEZSqZj7gAdL2r5ikegSLXD \" h' ?+ T A% q! |
-e BOOTSTRAP_TOKEN=V5XICWYCBMebHCXC \5 T% U Y6 D. ~7 Z
-e DB_HOST=172.20.22.25 \$ W$ R3 v: Y( h+ D$ U
-e DB_PORT=3306 \. G% x9 u" ^' L8 ?) y( B
-e DB_USER='jumpserver' \
L; h7 Z. P! z2 W' X/ @- K& y -e DB_PASSWORD="magedu.com" \& N4 w' R! s+ U! |
-e DB_NAME=jumpserver \
: S% d# w3 s/ f3 E3 H -e REDIS_HOST=172.20.22.25 \! l. p! ^2 O$ @' Y* `
-e REDIS_PORT=6379 \- r( @- R/ B2 b% p7 j F7 V
-e REDIS_PASSWORD= \1 b u/ b5 `+ d1 }
jumpserver/jms_all:1.5.9
5 B1 Z+ N4 A4 g* Q0 Z
3 k0 V! R: i6 r9 Q b###浏览器输入ip,默认用户名密码admin
$ ]" | F( ]6 e2 s& \! R b, s* O& U0 `# |, `. y; \! q
3 C/ J X5 G# b1 ^2 D % A8 F: z7 }3 V/ r
配置用户和相应的服务器资源
3 r) Q; f. j0 G7 r; k[ol]jumpserver #登录jumpserver的账号。通常是开发或者测试同事的姓名(如果重名就加1、2区分,如user1、user2)管理用户 #是后端资产服务器的系统管理员账号(/etc/passwd),此账户用于资产信息收集以及推送系统账户系统账号 #是后端资产服务器的普通系统用用户(/etc/passwd),此账户用于启动web服务(nginx/apache/nobody)[/ol]
4 E1 x) w, ]: `) }( }. |添加jumpserver账号并指定对应的用户组
1 e* m* h' U! {, r$ M. g* P
" y$ I/ p6 P( d5 Y6 J( \& `8 w: k1 C& e
9 U: X; |# X2 Q# b$ P
. m+ z7 R p) y: @4 ]* u" G 添加管理用户! C% a F# Y5 W
! W' b# b0 [) z. i7 w- j9 T& C( B2 ~- k- I& w9 j
3 t9 e# j* U: N/ v$ W- I, d添加系统用户
$ l4 y* d5 f) M: t( K. L # e; w8 x, F" h2 G1 R' M# G
" [. v$ x% C i. K, C5 O
添加资产' h! J6 e6 ]. B: r
6 ?3 S( U/ E1 W( k8 T9 F, o2 F/ e/ D4 [% Z! J# I
\( `$ r8 t6 @) o. S# ^
2 S, s1 E& q" Y7 T7 L* y ! S/ a* z- i4 v; T# b* k: }& ?8 K) z
" p1 S+ [9 ]- m2 C, T' Z ' l4 i) n6 `- Z& R! g
. [+ ^2 Y v s / t! f; M+ j) p/ T
0 p5 k5 M- C+ q- L) r
9 x3 Q. ]7 e% o& `$ O% Z7 x权限授权
E- o. Z% z$ ~9 `
; w( }. j: L v
$ E8 h+ G) F! I H4 B, K+ q
7 T& `. _" @8 ^$ R0 E+ `, l) V. _使用新建用户查看对应的资产8 p: s, L3 z; n% f' @5 e+ @
7 p# A* g2 H4 k& c [
( S" U' Z4 U! a" M2 `
5 L, ?* P+ y8 g' `8 P4 _
通过web终端可直接登入服务器
1 O& K* w. j: F3 {" w+ f: q, C& T! n 1 W- p" _! B: o0 C/ t: D: _2 }! L% P
1 r# m. v/ y# I" z! f2 q( P
0 u4 O" j2 H, j. x
命令过滤器
0 {6 @* i1 {" g* u0 y) C5 p% d使用命令过滤器可禁止用户在服务器上使用一些危险性高的命令,比如rm,reboot,shutdown等
, d* ? s7 J' d8 _9 B/ r W, f8 o" M : Q6 `8 P/ {, W7 ]2 Z( \6 c: |
配置命令过滤器
3 P7 D T9 t. h# _ Z
~3 Y# X9 ]( ~( ]! b4 P' C
. r: c$ }' t; ~( V' E7 Y. I 5 _" Y" l; @1 m' w! k
|" u" [1 X6 ~9 |/ P+ q+ ]
7 f! O1 ~/ g' ~
修改系统用户设置,引用定义的命令过滤器 1 Y& p/ k* h1 D p/ V
9 B7 i7 J: M+ N: c* H X) ~3 W
: ~$ {; ~' w1 J* M 4 ^ C- _4 a- j9 y2 ?
登入验证! N% d( [1 r6 y, E
3 Z2 B0 c- Z! u) H$ ^ |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
x
|