|
jumpserver
! P1 e# g- B7 J. o* D4 hjumpserver是一款使用python,Django开发的开源跳板机系统
5 i* Z7 J/ V0 b" B7 h + z! M8 J5 ?0 j/ i* E0 X4 _
官方地址:JumpServer - 开源堡垒机 - 官网
% @( b$ k: h8 q& J( Z t4 u1 y) C
# ^8 m; Y6 y- D- P) H部署环境) A4 u' G: w! Q2 Y' o
! }5 R- W4 o; B; Q. g5 I: fpython = 3.6.x
0 z u' o3 h6 C' X
4 B b. d: v, J% r1 v% vMysql server 最低5.6
0 L# `! _, B5 l5 I- R
7 |% n: `1 c" s3 D# R j' ZMariadb server 最低5.5.56: P+ y( z6 ]( ]+ d/ A
5 j# `" F8 [$ ?! F7 JRedis
% l9 C3 R: p4 |6 D
; }6 }$ ^4 @& e N以下示例用docker创建( p1 V5 g l( N
3 `0 v0 a3 B& e X; [7 m. H* e
docker部署mysql 9 `2 ^% U/ Q+ i
数据库编码要求utf8: F; w3 Y" s* m* X; ]
6 l* Q0 `$ T+ z2 b* }4 C
# mkdir /data/mysql/{conf,jumpserver}
1 l3 ~/ Q7 C2 Z( E' P, C# docker pull mysql:5.6.48* x0 o# s9 p% K6 d
# docker run -it --rm --name mysql mysql:5.6.48 bash( t% A/ U' l6 F$ [6 d9 [1 W
# docker cp mysql:/etc/mysql/mysql.conf.d/mysqld.cnf /data/mysql/conf/
O8 E; ?- P: _ K# docker cp mysql:/etc/mysql/conf.d/mysql.cnf /data/mysql/conf/
( K; U2 k$ F- D( Y8 v6 r0 S. g# vim /data/mysql/conf/mysql.conf
. a" K: D4 `0 e4 p2 O* @default-character-set=utf8
4 q- F* G j) V/ l3 M' M# j# vim /data/mysql/conf/mysqld.conf3 _: H( x+ T$ ]& d a5 V2 J) T& F% c
[mysqld]2 z- }3 y8 g% _3 b( K( L! y- |
pid-file = /var/run/mysqld/mysqld.pid4 e# I2 D( b# Z# k; z
socket = /var/run/mysqld/mysqld.sock/ M7 S8 B" b2 N4 A' S# R
datadir = /var/lib/mysql& j) G0 p7 \6 d1 K
#log-error = /var/log/mysql/error.log
3 E1 f; }) d% W( p: g' y# Disabling symbolic-links is recommended to prevent assorted security risks
& a$ V9 Y3 D7 y( w9 L4 }1 m" rsymbolic-links=0
6 ]; \! g" Z8 m% H5 }6 {2 fcharacter-set-server=utf8
; o. {$ z* ^, i5 D1 L5 J( b* E* n# 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& G5 b3 E; n! G8 s% D4 u
2 F/ a, G9 V% B) P) t% I9 }
##验证数据库编码是否为utf-8% z7 ]2 W: G6 G! C! ~
# apt install mysql-client$ C, w! h; C; `5 ^
# mysql -uroot -h127.0.0.1 -pmagedu.com
4 |6 D o0 B: i8 g' l1 Ymysql> show variables like "%character%";show variables like "%collation%";8 X. ` W0 k) R# [4 S
mysql> create database jumpserver;; y7 \& ]3 Y& i
mysql> grant all on jumpserver.* to jumpserver@'172.17.%.%' identified by 'ilinux.com';
1 v9 d: ]& P+ v/ c! ^mysql> flush privileges;
; k' F k% y9 ~3 d2 }' ydocker部署redis
' y: u" Y0 U* O, g5 @# docker run -d -p 6379:6379 redis:alpine3.12
: n8 t8 Q( D/ p0 Y Y9 e' A# apt install -y redis/ Q M2 E C5 I9 U" o- {4 j
# redis-cli
9 K; T- S1 s+ p' R- T; q, t127.0.0.1:6379> info 3 _& U; S7 r- \& B, f; C7 F) c( {& B
docker部署jumpserver
" `! _( V' T+ O5 Q$ v; D% q2 C##创建jumpserver容器4 H: U4 b, a2 C. K! U$ A$ x( A
docker run --name jms_all \' { I7 N1 g* {5 j H4 C! a. d
-v /opt/jumpserver:/opt/jumpserver/data/media \9 f& @! a! p3 m( l3 `
-p 80:80 \- _! n5 C4 B( U/ W8 f# b9 o4 \
-p 2222:2222 \! ?' ]! C" N4 S0 ?* b+ M' p; `* h
-e SECRET_KEY=nHQrsL0MbI8z2K1vKzcOQi9O2gouEZSqZj7gAdL2r5ikegSLXD \6 @0 i/ K2 Z$ |/ b ^
-e BOOTSTRAP_TOKEN=V5XICWYCBMebHCXC \. n1 P( J8 i! |
-e DB_HOST=172.20.22.25 \! e1 Z% E( t( M" S, l
-e DB_PORT=3306 \& e N* g8 ]# T5 T' [! K
-e DB_USER='jumpserver' \4 \4 p" `) I: T. U. H
-e DB_PASSWORD="magedu.com" \ Y& s! j9 N+ _" z- ~+ b
-e DB_NAME=jumpserver \
5 g9 l9 P; ^+ N9 ]4 }7 F9 e% D+ \' b -e REDIS_HOST=172.20.22.25 \
, U" X' U3 |. @& g -e REDIS_PORT=6379 \
+ C# }% ~% a n" p% D, s -e REDIS_PASSWORD= \
; j+ _: j+ Y ^% u$ D+ }8 B jumpserver/jms_all:1.5.9- v2 V) k4 s4 {% K
9 _$ U5 w8 W7 r5 J###浏览器输入ip,默认用户名密码admin " ^# q& e6 S* K4 c, }
. D$ J# H4 Y% B, i3 ?( |+ o: I % I. t' W+ j5 V: {! f( J& m
, {9 o" X# X O8 \配置用户和相应的服务器资源
) O* y: c/ s2 u" J9 s: X[ol]jumpserver #登录jumpserver的账号。通常是开发或者测试同事的姓名(如果重名就加1、2区分,如user1、user2)管理用户 #是后端资产服务器的系统管理员账号(/etc/passwd),此账户用于资产信息收集以及推送系统账户系统账号 #是后端资产服务器的普通系统用用户(/etc/passwd),此账户用于启动web服务(nginx/apache/nobody)[/ol]
8 L# |/ Z- Y" u8 y% X8 _添加jumpserver账号并指定对应的用户组
/ r; Q' x% \% F9 s T8 }
" ]6 b% }% {" A; ^
" z5 w) k3 H- U y
" w2 y1 Q! J; c `: l2 t1 e5 E
9 B: B$ i* ~' P Y 添加管理用户
, W' r0 I9 Y$ f) v$ ~ 9 X: I p @4 J s5 F& O
5 M& l/ U3 m2 Y$ D1 U6 B
* b7 ?, |# B* x. I添加系统用户9 {' f- o8 |6 r% x
5 Z- ~ V& G1 s! t) `
$ t- N( Q: }& D: p$ l
添加资产; p/ ]/ G! F1 x" o( r
+ J2 `( A* o% w2 `& l D, d) |6 k6 Z9 w# v: U) B! t5 }5 T
g' ^$ s, a( B' W0 V6 }8 }& m
7 v ?/ J& `- }& q. {
5 ]; S, I* T: R3 V$ T
& Z" {7 J' L8 O) i1 H v" a) V9 y( {9 M
+ D0 D) {% ]) B3 h4 \# Q* f; |
& s2 O$ p, |1 Z% W4 i
5 g6 |9 l W2 X; V权限授权
5 M) U# b3 U7 b: \5 `0 v
# x; f: O9 G1 D I3 d P8 n4 O4 P# t, c4 `: F5 ]
. ~2 R6 t; u8 u6 p( `/ E6 A( I使用新建用户查看对应的资产
) h* M' z9 _: v& Y
' Y6 g% y5 T! E. z( ?
8 Q7 x( A/ s5 D0 v 5 u; E& B: Q! n# R6 |! F# Q
通过web终端可直接登入服务器; _4 R. ]0 L# _' G
6 O! e/ P2 w0 y8 m( q7 Y
! n+ |/ E3 z& [
& n4 C2 _% T: l( J$ `
命令过滤器 - | G& H' ?: Y
使用命令过滤器可禁止用户在服务器上使用一些危险性高的命令,比如rm,reboot,shutdown等
/ z- C9 b- n; U3 |' F 0 ^( Z% P; @, [/ h
配置命令过滤器* r; `; C ]: M# Q
7 {9 ] l: l1 P) d3 K4 [
" f3 q O- c2 C- X$ C; M. b' k, `
- Q- c* Q v4 O7 d) b9 x8 X7 H( H. V* e+ z! o" w
/ i. c& t! b' n修改系统用户设置,引用定义的命令过滤器 ! `8 f6 N7 T2 K5 z+ H+ t I3 s' n$ y
6 a& A4 p J# a9 I" Y/ ?/ p2 ?0 k; f
; O, h! A" C! A/ P
, E& @& W, M8 d( W' |7 D1 i登入验证8 e u& J- B( g
. ~; t( W4 z+ j4 y" E |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
x
|