|
|
发表于 2022-9-5 08:07:58
|
查看: 1543 |
回复: 0
jumpserver
7 `9 S: H' X6 M; T6 Xjumpserver是一款使用python,Django开发的开源跳板机系统
5 G0 t( d. H; U/ k6 X) `
* b+ ]- a: R/ f6 l; G官方地址:JumpServer - 开源堡垒机 - 官网 G d! W9 G5 O) F
. G8 r* [, M$ U0 ~. H1 w
部署环境
' R2 l1 ]7 M- q& J+ n F 7 b- U' Q) L; v! b" b
python = 3.6.x
) [8 r9 }; ]# v8 u+ G3 Y ) c4 O& L, s9 e
Mysql server 最低5.6
# I* \% |2 d. t+ f) Z/ Z
& Z; a- ~& q/ K# J! W: o5 RMariadb server 最低5.5.56. L, K* B: a! P5 `5 @
. `: y! ^6 x: \ J4 @% K9 FRedis' @# L, N* c; {; _: R' Z E) T$ D
p/ J* N$ O6 y( u' E0 y以下示例用docker创建
' J! @% O' ~, D1 l
, R7 k7 j9 p0 J$ T5 tdocker部署mysql
8 |0 ]' g( A5 b9 j) o. o数据库编码要求utf8$ s3 N) K- y; i) q0 n
) b; @& @ I8 E \* z/ Q% C# mkdir /data/mysql/{conf,jumpserver}+ m3 j, u/ J6 l* V+ k- F
# docker pull mysql:5.6.48
( s% Z: G9 W: i6 P2 f: ^4 Q# docker run -it --rm --name mysql mysql:5.6.48 bash
+ m) s, Y3 i8 \, C! L2 c) P: C# docker cp mysql:/etc/mysql/mysql.conf.d/mysqld.cnf /data/mysql/conf/
( B1 |3 M. I, H/ Y# docker cp mysql:/etc/mysql/conf.d/mysql.cnf /data/mysql/conf/9 a9 c: p! z9 _: e: F
# vim /data/mysql/conf/mysql.conf
$ D1 [5 y1 }8 j; zdefault-character-set=utf80 v, K' Y5 Z7 l
# vim /data/mysql/conf/mysqld.conf1 {+ }! C# P/ S# | q! S
[mysqld]
1 x& @; j: C' T0 {8 i8 Hpid-file = /var/run/mysqld/mysqld.pid" Z: Z& y9 O: T9 g# q7 c. F) [' j
socket = /var/run/mysqld/mysqld.sock& M$ P' V$ S7 B& b6 w
datadir = /var/lib/mysql5 L! X4 `" U. a% o& ?
#log-error = /var/log/mysql/error.log
# S4 l! j) }. n# Disabling symbolic-links is recommended to prevent assorted security risks
( _- j1 [% j* V8 y7 I; \6 C: k3 Bsymbolic-links=0
) H8 K- B" N& Q, {/ Vcharacter-set-server=utf8- |& F7 N+ u" {2 Z( L- d8 K
# 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
7 |1 Q* `$ R( i* r4 y; M0 |
' V7 m9 S* Q. l0 h( Y1 J6 l* V##验证数据库编码是否为utf-8
" T$ u' [- G0 P2 ~* N# apt install mysql-client
+ i2 O; l$ {# T/ O' V& E# mysql -uroot -h127.0.0.1 -pmagedu.com2 g1 O0 N4 ?1 P+ A b; {
mysql> show variables like "%character%";show variables like "%collation%";
5 `- K/ F9 ?9 o- {* l; Zmysql> create database jumpserver;2 y& F1 q$ N" E+ b% v E
mysql> grant all on jumpserver.* to jumpserver@'172.17.%.%' identified by 'ilinux.com';
" n' y1 C0 |0 f1 i& l% f6 Z [% Qmysql> flush privileges;
7 H7 m( a, n# }7 N9 t6 Ydocker部署redis 5 M7 s! i2 r N
# docker run -d -p 6379:6379 redis:alpine3.125 e3 \) k6 I1 \$ D M
# apt install -y redis
: {6 G4 @3 \- ~- u8 @! w5 {3 `# redis-cli
m5 C( e* ?' ]127.0.0.1:6379> info & f d6 s p$ b; W( E+ ^. h
docker部署jumpserver
% u+ R! A, G$ w5 A/ C: ?/ V* d##创建jumpserver容器
+ [5 h' B& e3 O2 e/ ~" Tdocker run --name jms_all \
O! I( ?# w& o9 L2 z" p/ m -v /opt/jumpserver:/opt/jumpserver/data/media \
0 _2 e2 b" `+ j' {4 y( O0 p2 C -p 80:80 \
" B8 `, C* ~1 U& @ Q -p 2222:2222 \1 \ e* i; _; W ^' k9 ^, O
-e SECRET_KEY=nHQrsL0MbI8z2K1vKzcOQi9O2gouEZSqZj7gAdL2r5ikegSLXD \# L" _0 r6 M G6 j4 f3 j
-e BOOTSTRAP_TOKEN=V5XICWYCBMebHCXC \9 y$ d/ \. {7 n- [( @
-e DB_HOST=172.20.22.25 \
. J" h0 O4 e5 n4 g7 `2 N -e DB_PORT=3306 \( |5 S2 m1 G( r" b$ _# X
-e DB_USER='jumpserver' \
/ v1 `/ L7 ~* \, ^7 B% b$ w -e DB_PASSWORD="magedu.com" \* H! Z, A- E8 \$ D) p% H
-e DB_NAME=jumpserver \8 ^- d1 Z9 h9 j, E+ H
-e REDIS_HOST=172.20.22.25 \& z7 D7 m0 X1 ?* e
-e REDIS_PORT=6379 \
9 r: v l: H- U: H -e REDIS_PASSWORD= \
* T# m- A. O4 H* J* E9 R6 X1 [! P jumpserver/jms_all:1.5.9
7 _ e! o* p2 i: z$ ]0 l, \1 r- [2 s0 |
###浏览器输入ip,默认用户名密码admin : |* }% W3 T$ _+ U3 `
0 U7 [4 O4 Z7 p . @7 \& A, v5 s3 x# c
5 k6 K' {5 {9 c
配置用户和相应的服务器资源
/ }2 e% T2 a P; x[ol]jumpserver #登录jumpserver的账号。通常是开发或者测试同事的姓名(如果重名就加1、2区分,如user1、user2)管理用户 #是后端资产服务器的系统管理员账号(/etc/passwd),此账户用于资产信息收集以及推送系统账户系统账号 #是后端资产服务器的普通系统用用户(/etc/passwd),此账户用于启动web服务(nginx/apache/nobody)[/ol]
7 m/ [3 d% k0 @/ k添加jumpserver账号并指定对应的用户组! `$ o; Q, n, X) \ F+ z2 `- b
: A( N! K# K: C5 l3 w0 V
3 m4 ^, @8 K: z0 s* R5 }! i/ K
/ [' _! A/ Y( N a
& H1 W5 |) q& `2 n1 j3 V& A0 B# n
添加管理用户
5 |9 B' p- S! b+ T8 u/ y : ?1 ~) B( S( X+ @3 L
- W4 B6 ~6 ~* \& P% L# i, D
. J1 U1 b$ s3 b S- J添加系统用户6 h& e6 g" `2 j) `) |4 k) H
. J. Y% b, I) K- t8 ]7 t" a
% G" W6 b9 k+ i. G3 N# C
添加资产# i# @# l- p! |# S ?
! E( |) R1 z" S/ J( Y4 T
# r: @8 [: F+ k" V/ V
* ]3 @' ~6 m) M( H2 b
! i0 {$ J( i! Y# t0 O
7 g o' l! o* [$ e; A, c& o
+ |! s- T% V* U1 U+ S
1 `: V5 ~' E8 D. g2 R' Q' n
6 A) k5 F9 p r8 l
0 G$ V d! y; W+ _! @7 T& p$ ]5 q; h
5 e/ p6 X4 }( g: j5 z3 z4 M+ E e
权限授权
& |& |) F* H* w y1 g# b. i+ ^ - s/ d' ~0 v& f( o
+ n4 x# _# R7 e* i t$ y
- T1 T* d- ?% W7 k使用新建用户查看对应的资产" |' O- z' ]. h: r$ @' E% M8 H
) |0 R4 l* z v7 j( k% Y3 z
4 g0 I( m% h) w e8 W3 c
) r. S% _+ [, N, ]0 ^: F' S$ _# F 通过web终端可直接登入服务器% R0 Y! h0 B2 O# r# K2 o a- n+ Z
' V M7 @: L- c. X5 E
/ k, S2 e/ ?) N Y
4 P' g% a3 F7 |9 Y% w8 ?命令过滤器 % c: V' ^7 l% b! p j$ }
使用命令过滤器可禁止用户在服务器上使用一些危险性高的命令,比如rm,reboot,shutdown等# p1 m$ j& ^8 D, k
m8 Q! x& C& }2 [, K配置命令过滤器, s( ?2 W1 \8 a3 s4 w
& Z6 A* c o! P6 H, |) F- x/ Q& F
" T; P! v" c3 c) V# {9 X |" J
s4 c3 B) j) F2 F7 h7 _6 ]
$ h' ~, Z/ Z( O% n* K) X 9 \9 W& ? F+ |! q" u/ {
修改系统用户设置,引用定义的命令过滤器 , e, v2 r" `- V. e- F; [
& @/ B0 Z+ J, S# s- R6 W4 S4 A; N
4 }* c9 X, M$ H# k- @
登入验证
2 m% y( i3 L" [7 U7 m- } 5 t! r/ C) v; X* S0 c; q
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
|