|
jumpserver 8 Q9 Y! ]$ O/ [$ K: m( s
jumpserver是一款使用python,Django开发的开源跳板机系统
$ G* e( w: ^0 }: s F1 u( A) Y ' A G7 ^1 V$ t J& l
官方地址:JumpServer - 开源堡垒机 - 官网
% c/ Q# @% O4 c2 o6 x! w1 \ ( z) W( _5 Y- B$ @
部署环境
5 v0 B# d/ [9 }' e( o ( F! t0 {- L" X, Z
python = 3.6.x7 W8 o4 q5 L& e& A' t3 ]2 ~; {5 |+ ?
9 K( A, J0 e7 n& o$ M4 {
Mysql server 最低5.6/ {. A9 `- x" m; }& b5 v& J
: G3 x) w' G/ p1 f: b, j
Mariadb server 最低5.5.560 H; c- G8 _) u( @& F
& P8 f3 d [; l- S. z4 O9 L
Redis( z9 V) v" z E% b( b. `
# k* Z4 d1 X( P, R/ f* F以下示例用docker创建) U9 J) B+ J4 K
* _3 T+ t) b' V6 a9 q: o4 Rdocker部署mysql
8 J, P8 x6 r' X5 g数据库编码要求utf84 D3 ? Z$ \; Q+ D0 q
J5 w2 }! e# T5 r
# mkdir /data/mysql/{conf,jumpserver}$ P" |( D1 @+ q/ [( H4 u5 t" A/ {
# docker pull mysql:5.6.486 Z. h1 k1 d2 Q, n7 i
# docker run -it --rm --name mysql mysql:5.6.48 bash: s e' H! k4 e% ^# C4 E
# docker cp mysql:/etc/mysql/mysql.conf.d/mysqld.cnf /data/mysql/conf/! v) U4 d6 `' u- B4 s& G
# docker cp mysql:/etc/mysql/conf.d/mysql.cnf /data/mysql/conf/& F; F" ^) S+ f4 \, i, \3 ]' u) ?- J
# vim /data/mysql/conf/mysql.conf
) C. }& G- J7 vdefault-character-set=utf8
& X/ }" n: R6 x! U: x7 X# vim /data/mysql/conf/mysqld.conf5 \) E0 U' d0 ^4 R% W
[mysqld]
2 }. ?' X) r, {; @0 Y5 ^* X) s1 jpid-file = /var/run/mysqld/mysqld.pid
' D8 n9 m7 A# T' z- @socket = /var/run/mysqld/mysqld.sock
1 X3 P$ q$ ?( d/ e4 [2 f, z; |datadir = /var/lib/mysql
' f- U2 M: J( w1 k* J#log-error = /var/log/mysql/error.log
. ]$ p& D; V( G' u# Disabling symbolic-links is recommended to prevent assorted security risks0 i. F" ^& p A: d2 F; E
symbolic-links=0
, U& W* Q* H8 ~/ M; J/ ]) m: Bcharacter-set-server=utf8: l8 q( F: h: K5 @2 K$ q
# 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( D% j7 Q( O) i( J. q9 t9 h
3 G- H. i( u2 \6 D- C( P##验证数据库编码是否为utf-8* C1 S& l7 b5 U8 G$ \3 Q6 A! p
# apt install mysql-client
! |3 e, d8 i3 w9 u0 j# P4 `1 d( Q# mysql -uroot -h127.0.0.1 -pmagedu.com, | u9 t2 F+ e# [, ~4 J' f: U
mysql> show variables like "%character%";show variables like "%collation%";3 k/ \0 g: J% F, e: C
mysql> create database jumpserver;( g7 m4 z7 V Y4 Z) D. B( G; J
mysql> grant all on jumpserver.* to jumpserver@'172.17.%.%' identified by 'ilinux.com';0 U& }3 P' e8 H- A9 ?
mysql> flush privileges;
1 t/ H! T; ~ Kdocker部署redis 2 K! _6 k! }9 m3 k! \3 l5 o; P9 l
# docker run -d -p 6379:6379 redis:alpine3.12; R6 e. E: W) f, W
# apt install -y redis
( u' f6 |6 {& O+ j. g! L: P* y# redis-cli 3 S8 n* F+ J, g9 ]& @: w1 u
127.0.0.1:6379> info
S2 o+ G& E j; A0 W! vdocker部署jumpserver 7 n1 A" E) F& Z8 Y8 V8 @9 ]
##创建jumpserver容器/ S' V" a9 C! a s$ x% `$ A
docker run --name jms_all \% j6 i# _' F: l1 V
-v /opt/jumpserver:/opt/jumpserver/data/media \
+ S/ }+ [1 t* b0 {) R" y, F -p 80:80 \
2 p+ _5 I2 C* U2 D -p 2222:2222 \
5 |6 m0 |# c6 l! [! W: N -e SECRET_KEY=nHQrsL0MbI8z2K1vKzcOQi9O2gouEZSqZj7gAdL2r5ikegSLXD \4 b! n1 V8 ~6 A; O8 z* a- ~
-e BOOTSTRAP_TOKEN=V5XICWYCBMebHCXC \5 s1 R0 D6 R5 N
-e DB_HOST=172.20.22.25 \
; J) l; J; u- [# s+ y$ Y -e DB_PORT=3306 \
2 g3 U5 Q$ U, W -e DB_USER='jumpserver' \
F8 B1 }# ~0 O0 h/ M -e DB_PASSWORD="magedu.com" \
; V8 F @1 N% r; W; ?/ T' W -e DB_NAME=jumpserver \
4 J, h) `9 }0 G7 I8 ~& F% e -e REDIS_HOST=172.20.22.25 \
4 y ^( Y& N4 X8 k J' V& `( M -e REDIS_PORT=6379 \
( N5 i6 @$ U/ w0 D8 b8 }+ a -e REDIS_PASSWORD= \
6 J* M& S1 K5 W% R3 a% m& L [* { jumpserver/jms_all:1.5.9
/ o( E) g* Z9 u% Q; Z3 L& V7 w* L6 f; N
###浏览器输入ip,默认用户名密码admin
6 b F4 T! G. u" m
% p) u/ C. p5 e% w3 B! \8 V % Y4 U/ C" }& z( J
1 n7 @ p' B$ a4 X4 }3 `4 I: c
配置用户和相应的服务器资源
+ C- \3 C4 z, @* y W8 O5 n[ol]jumpserver #登录jumpserver的账号。通常是开发或者测试同事的姓名(如果重名就加1、2区分,如user1、user2)管理用户 #是后端资产服务器的系统管理员账号(/etc/passwd),此账户用于资产信息收集以及推送系统账户系统账号 #是后端资产服务器的普通系统用用户(/etc/passwd),此账户用于启动web服务(nginx/apache/nobody)[/ol]
/ F$ _4 t7 V3 I; V# u- Z添加jumpserver账号并指定对应的用户组
# H7 U7 z1 p5 |4 Y& B 3 n' k" r9 K% }$ w+ X* N
0 Q+ k6 c% A9 }/ r6 {
8 r. T+ h& |7 |
, o3 ]6 c8 t b' c 添加管理用户
4 x7 d5 o0 l4 C* r0 p
( F% p0 g: _' v9 E; a& L; t
8 s4 R$ p. z! M0 U
+ l$ u9 J5 [8 r2 h& D: N( Q0 c% O添加系统用户0 x: B& T, s' i& n5 o6 g
% d1 i2 ]& L1 v* ~: G4 V
% h% p* K; |+ o- S9 y
添加资产, Y) U# w; ?; ?) _6 w
, |. e8 u, N% }% p
1 C6 Z6 h# y+ @/ o/ o4 _6 z
8 ?# F/ {/ G0 u6 A3 E \# G( a! ?
9 q1 `) b/ M/ ?# C7 W
- |( u* X. Z; F9 A( z$ P
- j5 t& L! j& e Q. e 6 y5 i% r4 c. W5 L h# ^" A
& l# h$ m& }, r 2 ]( \* l3 \# D
/ Y: g+ \" S( m0 Z; @
+ A$ q' V/ l9 m: R' U# a( {权限授权% ~* k3 v% r9 j4 v+ ]
# J' S9 \0 K7 ]7 H0 o4 }( R; X7 h5 D# b/ D, \
$ X* V% O+ [& H( F% _. R- \
使用新建用户查看对应的资产
: a4 O) C# M' d; F& o$ ]' w# P0 _5 j 3 N% N* G* ?# e3 ]
) }2 J: `+ Y! t) y2 O, y* O* _ # ^. ]* M- H/ p
通过web终端可直接登入服务器: B2 k3 ~! s- g0 y
' k, t, P2 g& s0 D
$ E. \4 M$ u9 }- h$ O $ g) V9 B! `& `
命令过滤器
+ X9 O2 E) J O6 G# H+ w使用命令过滤器可禁止用户在服务器上使用一些危险性高的命令,比如rm,reboot,shutdown等/ X8 Z- p+ m6 q9 r7 a
2 G/ {3 K1 @+ c2 i配置命令过滤器" Q* L( Z$ F& L# B, J
: C6 Q: S: W8 m! a
+ {& f$ n1 \2 M
- F- [) ]! l$ a: ?/ L
1 S& ?) ?1 i; E# v9 n
8 t @' i5 r6 c8 t% J修改系统用户设置,引用定义的命令过滤器 & I+ n( R3 r7 ~/ |9 |
7 y* M& _4 J' Z2 Z& L
" d, I7 e5 c2 q- K
! w9 V3 r. M. V. W登入验证
0 j6 B" k2 W B
/ }! v" k1 ?( Z$ s# i |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
x
|