|
|
发表于 2022-9-5 08:07:58
|
查看: 1338 |
回复: 0
jumpserver
( l& y9 f/ K% B r! @. i1 qjumpserver是一款使用python,Django开发的开源跳板机系统
+ d0 P* C, _6 H0 w
7 o# u6 e g- O" P, Z$ c官方地址:JumpServer - 开源堡垒机 - 官网
/ O. \- D [- @/ l/ z
0 w; h. r1 F4 T5 e$ B部署环境; C, q- X$ L2 p+ Q
4 v, f& ^% e8 L$ }1 ]python = 3.6.x$ T$ U! g, p: k( |5 V& ~$ Y S
% \" A$ r) @1 l- r4 r: [
Mysql server 最低5.65 {6 n/ h8 {/ B* v1 _7 D& Y( N# v
% j( y6 Q6 F6 i2 c
Mariadb server 最低5.5.568 Y6 h' G$ {+ a6 a# m
. r9 q. f; D0 {! C4 _Redis3 g- ]1 D z" w" g
3 ]3 ~6 O1 W: q& E$ n以下示例用docker创建8 l2 {0 ?3 L* \9 |4 [% R
, \" D$ W' F9 I& Edocker部署mysql " h- F+ @( U8 }8 T
数据库编码要求utf8
4 y# v# A5 X8 }/ c* U w5 W 9 m( P0 n1 d" o! H" g6 r* Y
# mkdir /data/mysql/{conf,jumpserver}- Q: R1 Q9 a' q" o( H; @
# docker pull mysql:5.6.48
; b* p q8 [5 M* y5 s( j# docker run -it --rm --name mysql mysql:5.6.48 bash
; m3 c X7 h& p# docker cp mysql:/etc/mysql/mysql.conf.d/mysqld.cnf /data/mysql/conf/
3 |* k% [9 ^. T# docker cp mysql:/etc/mysql/conf.d/mysql.cnf /data/mysql/conf/
% e% T& F* y; r- I" S& K! o \# vim /data/mysql/conf/mysql.conf
! F# X6 r1 ~8 v+ c5 o& d4 idefault-character-set=utf8
0 v" [2 ~ Q: E, c g! \# vim /data/mysql/conf/mysqld.conf& n" }+ P. |( K7 B$ O
[mysqld]
2 Y7 B1 N, y$ b- ^& A" e/ S; G! ?7 ~pid-file = /var/run/mysqld/mysqld.pid6 X1 e z5 Q2 @4 F0 X3 U, r' M
socket = /var/run/mysqld/mysqld.sock
. s+ h* |4 k: d! \ Adatadir = /var/lib/mysql2 u, i( w: F: l) x: A
#log-error = /var/log/mysql/error.log
# b' H _4 |) z. J2 N# Disabling symbolic-links is recommended to prevent assorted security risks& L; d( f1 o+ H4 `7 V
symbolic-links=0- k& `1 L( L+ ~
character-set-server=utf8
. u4 \4 b. t6 j4 A# 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
- P$ e: v# W9 H' W, k4 K% ~$ ^7 q8 ?& p% }- M
##验证数据库编码是否为utf-89 i2 ?, s0 ~# p3 i
# apt install mysql-client
: H- _- j; y- q$ j' M9 ~3 d) O# mysql -uroot -h127.0.0.1 -pmagedu.com5 N1 ]# b q0 ~1 H
mysql> show variables like "%character%";show variables like "%collation%";5 m' j* y* k7 a
mysql> create database jumpserver;
0 c( ]/ m/ x! j% R6 @) }mysql> grant all on jumpserver.* to jumpserver@'172.17.%.%' identified by 'ilinux.com';! d) h1 U/ i* H4 D4 G9 Y
mysql> flush privileges; , ?1 H9 N9 } N w, r: b
docker部署redis
, c1 Z* U4 i: t9 l9 |) D, t# docker run -d -p 6379:6379 redis:alpine3.128 Y# d9 m3 g. j
# apt install -y redis
% i% f9 B. G' O- d, w5 |# redis-cli
: p/ `& A% T4 g6 r127.0.0.1:6379> info
5 F+ o+ O2 ~9 W' |" o/ R3 Ldocker部署jumpserver 9 ]- D) m2 {0 h# I& ~5 B
##创建jumpserver容器 o0 w. j. P& G/ }& U
docker run --name jms_all \
. N0 p0 g3 Q2 |( N" S4 m9 K, K5 i -v /opt/jumpserver:/opt/jumpserver/data/media \4 z+ |1 n- d. I3 x9 T
-p 80:80 \, r3 C7 ^* H* F( R& L2 _9 f
-p 2222:2222 \
4 ?/ m9 e5 g( |$ l+ G -e SECRET_KEY=nHQrsL0MbI8z2K1vKzcOQi9O2gouEZSqZj7gAdL2r5ikegSLXD \# I2 H% {4 Z: B# B
-e BOOTSTRAP_TOKEN=V5XICWYCBMebHCXC \0 H `# s1 H- T( U$ S @
-e DB_HOST=172.20.22.25 \
7 N6 ]; C# H3 \( B5 r" O2 a -e DB_PORT=3306 \# F. U3 P) J5 z2 U; Y% J
-e DB_USER='jumpserver' \) O9 z' p9 s& S, r0 C
-e DB_PASSWORD="magedu.com" \; h4 o4 e; n6 b& ]* G
-e DB_NAME=jumpserver \
; D2 O. M2 E# p( z. F; g -e REDIS_HOST=172.20.22.25 \ L; I* R& T- @' v2 E. O4 h
-e REDIS_PORT=6379 \
% k3 r5 c8 [: s/ P -e REDIS_PASSWORD= \& A: J) M+ \( G( R: f
jumpserver/jms_all:1.5.9: |3 o4 ]2 ^4 H+ ~" a* o
' N! Q% y& D: t6 n0 `- _" c###浏览器输入ip,默认用户名密码admin & K' f8 @3 h2 B; V) t+ N
: |' i! z t! j 4 _& ^( l2 V8 ^+ \" O* J3 A9 z' A
- j* G, m+ C6 N( g
配置用户和相应的服务器资源 6 ?, z' p! s* ^- L) O% F
[ol]jumpserver #登录jumpserver的账号。通常是开发或者测试同事的姓名(如果重名就加1、2区分,如user1、user2)管理用户 #是后端资产服务器的系统管理员账号(/etc/passwd),此账户用于资产信息收集以及推送系统账户系统账号 #是后端资产服务器的普通系统用用户(/etc/passwd),此账户用于启动web服务(nginx/apache/nobody)[/ol]
5 N1 {5 @4 z3 `; X! Q( L3 ?添加jumpserver账号并指定对应的用户组
9 p% o( b5 }2 M0 s / B/ j* D. l. V
2 `1 u" h. P& r5 B/ Z : O5 U, y: W7 [# C
4 F* t1 H% C; Z2 ^, s8 o8 L- ` H, W2 X# U 添加管理用户, S4 o! ]! T& @& a P; L; g, o: ?
8 m( y/ t5 x: T9 s
" Z" i2 ^8 `! D+ ]; i5 W 6 `% L5 P0 a% f/ B! I0 s( z: @
添加系统用户* [$ O* z- |4 \8 u) M, j% w
, t) k8 S4 D8 \ q: X0 |' C* s4 ?/ x& n
添加资产
i' M, a" e/ h( Q; Q9 q
7 h$ D/ j: ]; Z3 I
$ f7 l% ~; Y4 w! l
: F) V( v) ~8 V$ Y8 `
) R% e! I2 a* r, N! k
" D, Z' c0 k% i8 T8 O# o% Q$ x& w7 y
) x5 f+ L# l5 R( w: j" m& V
1 I- U0 t! l) n. o( |
2 a0 p: i+ S5 V8 {1 |
8 P! T0 H$ a% b9 O' Z
0 p: {1 V' p- v$ m权限授权8 F' N) y: K5 Z9 `4 L7 x
2 A6 s4 | c* X4 g1 o! p) G: ~
9 [8 ]' ~4 P: {7 V
$ e: R$ v% x% J0 @& R8 q3 v/ N使用新建用户查看对应的资产" p# e {/ S v
) P8 G* D, m6 {6 b4 H
% Q* m! a% c: F9 ^' M8 g
% P$ v0 r, Y( W! S. { 通过web终端可直接登入服务器3 N, A5 t5 ?% y ?2 D& a1 r2 r' f
. x7 D2 Q1 w% o' R. }5 T1 e
+ Q6 k8 F% r' C
' K K2 {3 s9 b) U命令过滤器 1 v; W2 q" a, P5 B4 J
使用命令过滤器可禁止用户在服务器上使用一些危险性高的命令,比如rm,reboot,shutdown等- N& O' }/ T: n- N
. j; U0 n( \+ y3 M' c' i* x2 f. o
配置命令过滤器
w' B, T! K) v! B8 t( I: ~8 M% f( J
* M; j& n* X- t0 j: @: l
: F: x; k1 \ u7 o& E" j( D ) k( e0 \: P& c4 n8 @' N$ a
" X2 b: A5 O' v0 U ^
) ^9 p3 a# q' U/ c7 `0 y' Q0 F0 V修改系统用户设置,引用定义的命令过滤器 - e! p' K2 [1 d7 X- T6 @. q& w- i
1 K/ a3 w; k* V/ Z% R8 y B. X$ ^; z% W& _" O
( [+ \/ y# p( a0 i- E( }登入验证
6 N. ^% m2 ^1 e/ o' o- [- d) ^- j& k
4 T7 J* m" j7 J" Y! k# `2 I+ T |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
|