|
|
jumpserver 3 K3 c5 h; @7 x: d
jumpserver是一款使用python,Django开发的开源跳板机系统
: @1 q" [! E2 J8 b' G ( W8 k4 t1 U5 F, z* c/ c
官方地址:JumpServer - 开源堡垒机 - 官网
u5 V) z! h1 o9 t! g
6 [+ c9 x; p4 P' P' Y$ g5 M& N/ ]部署环境3 X `0 z/ V8 i& a6 W
+ W7 B" P! U( dpython = 3.6.x$ w* f2 J W" h. |
: x4 j9 v! [) s9 u+ KMysql server 最低5.6# ^7 ], I9 e3 S/ [
' u" [; U. g# q. C
Mariadb server 最低5.5.56
0 C# r9 B$ E T- Q c$ g
# A# m g6 `6 n; mRedis
% |7 t, W& g& z! o1 Q g ! N e6 ~$ R( x' M# I4 p9 R* |
以下示例用docker创建; z/ w3 B8 B' K1 q/ P$ N; r
* A6 Z- T# F6 b6 r+ @docker部署mysql t- U- Q' a! C$ [: R; B
数据库编码要求utf87 _5 ` v% x% g; H* l9 k
& {6 i# X, n" H k4 D% W" W5 N
# mkdir /data/mysql/{conf,jumpserver}
* X1 t" Q/ c" @$ I- j# docker pull mysql:5.6.48
7 W+ n4 Y- C( D9 O0 t# docker run -it --rm --name mysql mysql:5.6.48 bash
: ~# S. C& v1 m" E# docker cp mysql:/etc/mysql/mysql.conf.d/mysqld.cnf /data/mysql/conf/4 c! E0 B: ~6 b, _. v
# docker cp mysql:/etc/mysql/conf.d/mysql.cnf /data/mysql/conf/
$ [8 j# L3 Q4 M4 i( i# vim /data/mysql/conf/mysql.conf' L6 t8 C3 m: u! S
default-character-set=utf8
, x) j' E" W; A9 E. a4 Q. y# c# vim /data/mysql/conf/mysqld.conf7 I. }9 K+ J1 U& H
[mysqld]
' U6 H# @8 _2 x; gpid-file = /var/run/mysqld/mysqld.pid
6 S) v( C( R2 h, F& V/ Qsocket = /var/run/mysqld/mysqld.sock/ o- a, I% {$ @; O3 e D4 o9 O
datadir = /var/lib/mysql. a0 G& T/ o1 ]: o
#log-error = /var/log/mysql/error.log3 K! a; J3 m% R# m$ Z. C' x3 O8 r
# Disabling symbolic-links is recommended to prevent assorted security risks- _" k- D& r+ B; ?
symbolic-links=0 u- S: G; R5 t' U
character-set-server=utf8
6 y/ Z5 q6 {6 I" h9 W8 _3 R# 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.482 S) m# \3 [! Z1 H' a+ |
7 z( c7 _! k: B
##验证数据库编码是否为utf-8
4 g' O' H: c6 Z; M- o8 T5 W# apt install mysql-client0 b! b& \$ G8 m- k4 b
# mysql -uroot -h127.0.0.1 -pmagedu.com z |! p$ i: P* g% R( X
mysql> show variables like "%character%";show variables like "%collation%";
1 n/ y( Q- I' C9 V. dmysql> create database jumpserver;' C9 j7 f7 M3 ?6 W# W2 I
mysql> grant all on jumpserver.* to jumpserver@'172.17.%.%' identified by 'ilinux.com';6 I( h1 |1 Y- y) k
mysql> flush privileges; : _! P5 V: q5 q- ^3 |
docker部署redis . e- @$ R1 E& {! M c
# docker run -d -p 6379:6379 redis:alpine3.12
! L8 P, R, @ {/ H$ l# apt install -y redis
" c. ?# J% C4 z& [# redis-cli ! l& ]2 w8 S$ q" U5 s
127.0.0.1:6379> info ! w8 Y, q1 v. l" }* g4 _
docker部署jumpserver
3 V4 j i- A6 R+ k##创建jumpserver容器
+ \' N% m6 u3 P4 j1 hdocker run --name jms_all \
& X; n' H: R6 P4 b -v /opt/jumpserver:/opt/jumpserver/data/media \ w7 U: s9 ]6 ^6 g+ T. S0 J# i. A
-p 80:80 \5 L9 a: u3 L4 {0 c1 @% F8 d
-p 2222:2222 \
* {, h( }) `% z -e SECRET_KEY=nHQrsL0MbI8z2K1vKzcOQi9O2gouEZSqZj7gAdL2r5ikegSLXD \. d, J( L# p% q, f1 A- O; L$ \
-e BOOTSTRAP_TOKEN=V5XICWYCBMebHCXC \2 W8 t: U f" x3 C- d1 H/ V
-e DB_HOST=172.20.22.25 \
6 M* V C. w2 v" |3 S. h -e DB_PORT=3306 \
% q4 N( M/ a. ~& C6 v -e DB_USER='jumpserver' \: E! a0 G" M+ _, w
-e DB_PASSWORD="magedu.com" \3 J" f+ N0 @$ K
-e DB_NAME=jumpserver \
# {& v1 ^: L, e+ Q3 n: ~9 c6 n -e REDIS_HOST=172.20.22.25 \$ [! E- |9 V; h C
-e REDIS_PORT=6379 \
9 b* ^1 W5 t* L -e REDIS_PASSWORD= \; k. O" S5 _! s4 a& s; x1 f8 X
jumpserver/jms_all:1.5.9' o: j: ]- E, {# i$ I0 `8 J- Z$ L* J
; w" e* k6 p0 s8 o6 y/ H# w9 X###浏览器输入ip,默认用户名密码admin ! V5 p9 y0 B) N7 g
4 \1 T7 p) V3 D% A7 }
1 p; ?* { ^+ k# ?
7 L* n5 M6 S% W5 O$ b! L1 |8 v配置用户和相应的服务器资源
& K! ?8 ]$ t' N[ol]jumpserver #登录jumpserver的账号。通常是开发或者测试同事的姓名(如果重名就加1、2区分,如user1、user2)管理用户 #是后端资产服务器的系统管理员账号(/etc/passwd),此账户用于资产信息收集以及推送系统账户系统账号 #是后端资产服务器的普通系统用用户(/etc/passwd),此账户用于启动web服务(nginx/apache/nobody)[/ol], ]# n& ]2 Y/ |8 U9 @3 l" q
添加jumpserver账号并指定对应的用户组
+ k" o0 j, K) ^- V2 Q; c/ g7 i# R& q 7 h' O& ?& S8 \8 x3 S
+ n6 k$ d. i5 |* X
8 u- ]* L, }+ U. C# X" w( I7 _4 n" r7 \: J1 O+ ?6 X
添加管理用户% k$ s, c7 B) ?4 y+ Q2 R
# {5 C8 A* R( j# [- l* G$ Q7 O& `* p. V; L; b; f+ ]
& V. \; u n: |" W添加系统用户& j+ `; P; X4 S
8 B x. C0 R S: k* N# @2 E/ k. J) G6 y
添加资产
8 F& W5 \. D8 a3 k! e$ m$ u/ I
, b+ m3 n- b: [( x( c; B
* v& s: Z- |* {" ^+ y5 [ $ W) `2 |' F5 j# L
; }3 Q$ r/ u" D( y! A/ A
0 Y! S* q( N- d9 S
6 {9 @: Z' w; _6 N9 }
1 q& }+ W9 Y5 S; X& r
. m W. [* Q. l$ V$ ]8 p 5 R# G- Y! D2 O2 ?7 d
8 z# i8 `# ?4 i 5 ?/ ~4 f- }2 b
权限授权
[3 g# G. g' X. o 3 A) r. A3 _' {8 i8 V# |$ h
8 [5 K5 d8 n2 ]* l
9 Y; H6 r2 a7 h! L使用新建用户查看对应的资产7 z" [4 l+ N5 C6 Q5 D; S
: d4 H; Y+ ?" M3 x) `2 Q: A
* l7 d( l7 f! b$ z3 x, y$ }6 J- }1 R
3 u- a' m9 G% l
通过web终端可直接登入服务器
' |9 u: q9 a. j: i' s( E, H- M
8 j4 V4 h. a! I0 o# @# e% P% l
- G% O5 N/ H% B) |6 i! Q& v, f+ Q# |4 ^7 o1 a
9 u7 d7 P/ I8 p命令过滤器
# J$ f! ]1 G0 Y3 F, `. {2 @9 H使用命令过滤器可禁止用户在服务器上使用一些危险性高的命令,比如rm,reboot,shutdown等
4 e% b% q- {- y- a4 B5 ~! t 5 g% K) c8 B$ }& [* i, T
配置命令过滤器" ^& k6 O8 w: L7 F
: R, o; X4 T( }
" D& c8 d! W/ A, d + g1 u G/ C2 j9 c( X5 ]4 b% _
: \' O0 b$ S; _( w) a% E% T5 K * A' g% Z/ _2 [2 F1 S0 L2 _& w; p* u: s
修改系统用户设置,引用定义的命令过滤器 4 `: B3 S$ g$ r S
& N/ `) Y" i. O! G2 K' ?4 O. o k4 Y0 [( }% }
3 j9 E% \1 W1 U3 p9 g, E8 H& @
登入验证
9 }+ r6 s5 y6 d; F# X3 H& } ; y& [ s; k( k
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
x
|