|
jumpserver
8 O4 I. n! d+ M$ U# ajumpserver是一款使用python,Django开发的开源跳板机系统
7 J4 d }' v$ J+ {) g- \
2 |0 @0 p: i; l# ^5 ^$ `官方地址:JumpServer - 开源堡垒机 - 官网0 ~8 `* F0 O5 v8 v* _
- o( P: A- j4 s& g0 u+ p h部署环境
4 y& O3 i% L) C6 v$ ] 9 K. T6 W) }& c9 B- ]
python = 3.6.x4 B- l0 o7 N' ?; \, e2 r4 k
& @' x& p a8 h1 _+ L2 H" i
Mysql server 最低5.6
9 Q* A, } ]% o& x4 \/ ^2 `4 x
; O- O; y' Q/ u3 u- P$ J% `5 FMariadb server 最低5.5.56; E" h: a3 ~3 V9 C4 p
! ~4 I3 O8 x, F0 u
Redis
6 q- ^: a- R Y % {/ g# I( W( b5 ]3 m
以下示例用docker创建: i7 c* T! u5 k4 l$ c
+ t; t- N. b! U5 s3 z+ x/ ddocker部署mysql
8 h' M+ F7 Z' n9 Q数据库编码要求utf8
! y O2 Z( x' V# \; R 5 Q) ? {' C) O& v8 h
# mkdir /data/mysql/{conf,jumpserver}: E: i J6 n; y" E
# docker pull mysql:5.6.48 M' u: D' {, N) V2 a
# docker run -it --rm --name mysql mysql:5.6.48 bash) }; M4 O& w/ ^( x
# docker cp mysql:/etc/mysql/mysql.conf.d/mysqld.cnf /data/mysql/conf/3 q! G: \8 i2 q9 h1 r4 v
# docker cp mysql:/etc/mysql/conf.d/mysql.cnf /data/mysql/conf/: L. R2 l' U/ F" U# w2 _
# vim /data/mysql/conf/mysql.conf- e I2 y6 ^1 `" O& E
default-character-set=utf87 W' D' v! f# A, p, ]
# vim /data/mysql/conf/mysqld.conf
4 ]3 h5 \% Y5 {& s- J7 q- ][mysqld]
0 H, {. x7 g$ Y+ i; v7 ~4 Tpid-file = /var/run/mysqld/mysqld.pid
. y0 w( Q/ T1 y7 L8 ?socket = /var/run/mysqld/mysqld.sock5 @: ^/ K; X7 Y9 `# j9 _/ Q
datadir = /var/lib/mysql
* R5 Q# t6 Y9 X4 [# g* q5 t#log-error = /var/log/mysql/error.log
1 k X o- O/ j4 s# Disabling symbolic-links is recommended to prevent assorted security risks
! V _; M. l: Ysymbolic-links=0$ x6 R2 C# x/ L% `2 u! G
character-set-server=utf8% f& x2 l7 i* m. W2 h
# 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.487 i* U2 p- i9 U
6 s, P! T. g/ b* d) ~
##验证数据库编码是否为utf-8 x( [1 f @3 D: q+ a( b
# apt install mysql-client! ?, g" U- x9 T/ _5 f
# mysql -uroot -h127.0.0.1 -pmagedu.com6 C0 W2 I9 f4 F# h% e6 n
mysql> show variables like "%character%";show variables like "%collation%";" j) A1 x$ J* i' u* ?
mysql> create database jumpserver;
# T. F8 Q* E- O. x6 Mmysql> grant all on jumpserver.* to jumpserver@'172.17.%.%' identified by 'ilinux.com';( W- ]( d) B5 S! V
mysql> flush privileges; % Z3 t: V+ A+ m& h: [$ `
docker部署redis
1 }0 ?8 t2 s9 ]2 Q! [ m% \4 U3 q# docker run -d -p 6379:6379 redis:alpine3.12" @+ ?% X- w# \" Q% \4 Q
# apt install -y redis
+ [# S5 ?9 I# x# redis-cli
8 ]- m/ S9 R) G4 r127.0.0.1:6379> info
! T3 T- E& F X0 ` }) Pdocker部署jumpserver 8 ]# Z& x8 {# _) q4 x
##创建jumpserver容器$ s6 c+ t5 l6 U8 a
docker run --name jms_all \% z) T2 u$ c% ^: N4 ]7 g. \
-v /opt/jumpserver:/opt/jumpserver/data/media \
" O& R( n* P/ o/ O -p 80:80 \; ^$ [4 m( L0 n5 s; y9 X, |
-p 2222:2222 \
$ g) G- w' ?- _5 V* i$ s -e SECRET_KEY=nHQrsL0MbI8z2K1vKzcOQi9O2gouEZSqZj7gAdL2r5ikegSLXD \ h: c6 D2 u6 T) `" S
-e BOOTSTRAP_TOKEN=V5XICWYCBMebHCXC \
7 P- r; o& p- m8 ^, @6 y -e DB_HOST=172.20.22.25 \
7 c. e( \# Y* p0 J2 t2 |0 L -e DB_PORT=3306 \+ k1 F( ^" ~& j1 \1 }
-e DB_USER='jumpserver' \9 l6 u% m' G. v
-e DB_PASSWORD="magedu.com" \
7 M( l# ]: A5 f$ T) ]7 M -e DB_NAME=jumpserver \
& v8 J4 q, l: M) |' h2 U! r4 Y -e REDIS_HOST=172.20.22.25 \
8 x* H: D/ w$ Y, ~ -e REDIS_PORT=6379 \0 J. N1 o) x" O
-e REDIS_PASSWORD= \
5 r( V) M. ?8 i' r8 F jumpserver/jms_all:1.5.9
: H2 \+ v4 i# s( r# b+ y0 Z
& S, G0 R! R) \###浏览器输入ip,默认用户名密码admin / J1 y9 R ~7 G2 X& w
5 r% s' O7 x/ N
; l) _9 A( x) }
9 Y" }( |& k# u) p) o+ k- k
配置用户和相应的服务器资源 ; m4 _) N! O8 G! Z5 M
[ol]jumpserver #登录jumpserver的账号。通常是开发或者测试同事的姓名(如果重名就加1、2区分,如user1、user2)管理用户 #是后端资产服务器的系统管理员账号(/etc/passwd),此账户用于资产信息收集以及推送系统账户系统账号 #是后端资产服务器的普通系统用用户(/etc/passwd),此账户用于启动web服务(nginx/apache/nobody)[/ol]% D$ _ |' [; z3 E7 C& F) \ p3 ~1 O
添加jumpserver账号并指定对应的用户组
, z' Q2 t3 T2 h$ n* N- u
% z& o" c' o4 t; p9 F. p9 `
# V: U5 ~, v z& H) [' n . f6 S# Q& ~) w
9 T' j7 k9 t, e) d$ }
添加管理用户
9 I" T+ _% N( Q5 J6 [; e9 O3 C, W: \9 X 5 Y2 ~) e2 t) P7 ~- _* _
! i d' b1 ~- E, o$ q
1 d; \0 U: o; \8 e/ \0 b/ @ ~2 G0 y添加系统用户! v% M% ^9 z0 s0 ~, `
* T( P* [0 Y0 b. Z4 t
5 y, N" D0 O* u( A: A5 z6 J; z添加资产. c: x) w" I' |2 Q
: ~0 R2 c( i1 m6 L+ Q$ v0 A) u- `" }( c
8 F9 m2 e! L; r5 s
" q+ F: r% Y3 j* g( t2 Q& l7 p o
& k- j/ [' G1 t8 o) F2 Y, Q; \: t c4 q" @( h' u5 O
9 t. p6 J/ \1 W. E7 J# J" [5 {& _8 S6 c+ Z& X* o2 c& }
9 N4 @- p' ?: g/ N; Z* R( z* m
; [4 s7 P9 m- U$ a) d 6 E& `5 x4 Y2 O% z. V
权限授权
6 }3 C: `& v6 e$ k" h ]# U 9 |: W4 O. m* M( k
1 a$ m5 |" D9 n, Z ' r" ]' B) S& ~$ o$ i L" {
使用新建用户查看对应的资产% g+ O8 [8 d8 n0 M. ?( u$ ]6 x
0 b8 P8 z; w& B2 e' }
# v0 ]' }- P, @0 @; s; h
1 @2 t9 ~3 u0 h' \* T' `5 { 通过web终端可直接登入服务器/ c4 ]( z: ?4 R/ S' p
3 N# n) A5 J& L; Z2 w0 ?. }0 c# Q* y
U0 Y f" ]& j% }' V: k* ]- L7 [# a命令过滤器 ! y6 v F+ n/ h/ K
使用命令过滤器可禁止用户在服务器上使用一些危险性高的命令,比如rm,reboot,shutdown等" I1 ^- G% m6 ]3 X
$ V" u3 ^1 V; }* E f0 P
配置命令过滤器
. D6 h5 j' D; x. T9 x
7 X" W0 M. A% r% t Q
: z% I H/ P5 F! _. f+ R
0 ^- s! p$ r: k* T* U0 \
/ L: u3 ~* K* w* @: {
2 Z# m% [4 I+ M9 P7 R, q修改系统用户设置,引用定义的命令过滤器 8 O: f6 E$ `* e# {; x. ^ d
$ Y7 K9 `( h8 Y1 a# t- h
/ z. _- z, `) h4 @* U0 z9 y5 k
$ @% ^! `$ k# e! B9 ^登入验证 H$ V( h: u: R4 A& X% V8 ]" j! K
% x7 e0 \* n' k+ u
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
x
|