|
|
jumpserver
- r" U1 M+ T; S- R% r. fjumpserver是一款使用python,Django开发的开源跳板机系统0 R! i) ~4 o7 i, B$ f
% S; I0 [$ ~7 e2 h官方地址:JumpServer - 开源堡垒机 - 官网
9 ~3 o3 w- B. y ) u+ W) o. X- m' W; j8 x
部署环境
/ d# ?4 i$ v& y) X# [1 h9 l 3 D( @! p5 l# ~. S
python = 3.6.x
' E3 s1 v8 r+ Q& h. z6 g 4 z s; o D0 G: W
Mysql server 最低5.6
7 c8 R8 ^" Z! R& i4 ? " F7 }0 Y5 W$ T
Mariadb server 最低5.5.56
# j I+ [8 [, M# K9 H - S& d. h9 S" [7 I( ]' d
Redis" P) h: q I9 I) R5 k
$ S: @- c- H) Y3 x8 g/ e以下示例用docker创建- E1 A% B. a% C6 X; H
- L) n9 Y, A9 S/ s6 Z, h; z
docker部署mysql
. H; e; V" @6 F. \8 X! C9 y" [数据库编码要求utf8
" ?1 f: Y! J0 L
: h3 }; \( M# c0 n: [) N3 q# mkdir /data/mysql/{conf,jumpserver}
0 R6 b* G2 J8 o" |# docker pull mysql:5.6.48) \( E; U) c0 a1 [' H% b3 B/ ^
# docker run -it --rm --name mysql mysql:5.6.48 bash
8 \& I) a! _& e: V# docker cp mysql:/etc/mysql/mysql.conf.d/mysqld.cnf /data/mysql/conf/
: S' c! m8 [2 G. Q# docker cp mysql:/etc/mysql/conf.d/mysql.cnf /data/mysql/conf/
+ D4 A5 P$ Q/ Q9 x( t- n w# vim /data/mysql/conf/mysql.conf
3 A, g6 m+ ?6 p7 [3 D8 z, Ldefault-character-set=utf8
7 c4 U9 b% A' x$ D# vim /data/mysql/conf/mysqld.conf
6 A. Z9 k7 D0 X) ~+ S[mysqld]$ [( W; @. l* j7 c% D: P
pid-file = /var/run/mysqld/mysqld.pid1 V' {) Z$ U u. W. K
socket = /var/run/mysqld/mysqld.sock
6 S. Y* X7 A8 T6 `datadir = /var/lib/mysql
) v8 f! b9 i& |) |, d4 c#log-error = /var/log/mysql/error.log$ t3 X8 q7 U$ B, [
# Disabling symbolic-links is recommended to prevent assorted security risks
& B. F! L! ?# r# ?3 d, asymbolic-links=0
- x+ D: U s4 _% w& vcharacter-set-server=utf8
! ]. y7 k6 O: l8 ]# 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
6 u$ t7 ~% \& t2 X
2 ^) | a1 s. {; r# ~$ @5 J' ?; C##验证数据库编码是否为utf-8
* s4 S, a% Y% g2 g. [# apt install mysql-client
9 n, l& g+ [. U: E& {# mysql -uroot -h127.0.0.1 -pmagedu.com# h2 W7 |2 c$ i; m( f$ P. r! y
mysql> show variables like "%character%";show variables like "%collation%";
8 n% B j1 s/ T" O" ?( ]% dmysql> create database jumpserver;9 |& n7 ?. o6 `; Z
mysql> grant all on jumpserver.* to jumpserver@'172.17.%.%' identified by 'ilinux.com';
( d6 h" l# i$ W0 \9 xmysql> flush privileges;
/ w4 v5 Z3 q$ C" i9 Bdocker部署redis ! z* G: w6 X5 J* f
# docker run -d -p 6379:6379 redis:alpine3.12
: v) E. x0 k# X% d7 p* b& E# apt install -y redis
' v1 E% U/ [2 ?' e; L/ G# redis-cli 3 I) p: d/ l* L' K0 C
127.0.0.1:6379> info
* W, @1 ~0 q7 v# qdocker部署jumpserver
. h! F1 |0 o, m##创建jumpserver容器3 ]$ Q' \, l$ h2 E( y; `* [
docker run --name jms_all \
+ p! E; z+ B! R) | -v /opt/jumpserver:/opt/jumpserver/data/media \
+ P1 Y$ [/ A* M T+ P7 G8 N -p 80:80 \
8 |! ^; ^, R0 y. m -p 2222:2222 \; _' e% g$ K8 G- L, y
-e SECRET_KEY=nHQrsL0MbI8z2K1vKzcOQi9O2gouEZSqZj7gAdL2r5ikegSLXD \
d, \9 g9 T$ K, m5 B -e BOOTSTRAP_TOKEN=V5XICWYCBMebHCXC \ s) ~) j; O m/ X# c8 E& \+ z# \$ X
-e DB_HOST=172.20.22.25 \* }! T6 D9 A6 C) w) o8 q! J
-e DB_PORT=3306 \
6 t) \: V7 r5 N `& \4 m -e DB_USER='jumpserver' \
& b5 ~6 ^" N4 p -e DB_PASSWORD="magedu.com" \
% u) g2 [8 |# u# I% N: g -e DB_NAME=jumpserver \- a9 T+ n; z2 }/ H% V
-e REDIS_HOST=172.20.22.25 \8 k" c% w0 I) C( Z. m7 a8 X# [2 a
-e REDIS_PORT=6379 \/ e. Y) S0 J/ W' p! @
-e REDIS_PASSWORD= \* \5 _ ?5 [' n
jumpserver/jms_all:1.5.95 Y( c* N! B; C1 N ]- D/ t
) L9 d3 j5 Y* M$ C% u###浏览器输入ip,默认用户名密码admin 7 V4 ^5 T4 g2 u4 ~- `, v: }! l, f
) r# S! w( d- v) z0 r0 T
% n8 |0 F0 \3 f# p0 ]2 k
9 i. C' x5 d2 ~1 N9 q8 O) ?- Y V配置用户和相应的服务器资源 " C' a6 G# _( U, L I
[ol]jumpserver #登录jumpserver的账号。通常是开发或者测试同事的姓名(如果重名就加1、2区分,如user1、user2)管理用户 #是后端资产服务器的系统管理员账号(/etc/passwd),此账户用于资产信息收集以及推送系统账户系统账号 #是后端资产服务器的普通系统用用户(/etc/passwd),此账户用于启动web服务(nginx/apache/nobody)[/ol], h$ G& [ v/ j1 A' F& [) I0 k; q
添加jumpserver账号并指定对应的用户组
& `! i9 a& Z' ^: J & Z0 f" A1 U3 R" F: g* P0 _
a2 [1 R+ J2 C9 Z( C
- S X# d# r) w& M0 k) |. [! w
! U _' z0 m8 e0 ]9 S 添加管理用户" e. K! R. @5 S
3 r& j7 @2 Z3 @- g, ~4 u+ c. x
& B1 _5 t. b* {/ E
添加系统用户
+ B& F7 d9 q# t2 Y' i7 T . D) H7 W! U2 u5 F1 d( s9 }
( T' n: t$ e3 K( |0 i* d0 Q
添加资产
! d8 o9 l+ l$ @! p* [6 k
+ N5 p: z. d( n. x* U O) q$ d0 R" H, f$ n" b
# ]5 W4 r* E% j; d8 Y
4 p+ o' |, j2 A& U' R. D
# r9 u4 V' b7 v- A# |, ~& Q1 \
8 w- I% q, {+ @" c
/ B, K6 C: m4 m6 t- J0 V4 {& l+ Q7 W( _1 M
! N. U' v8 d' v/ k' C; j* I
+ ]9 W0 L; A7 p. z6 S i) P7 G$ c" S& @' ]
权限授权, g* ~- D+ p4 N7 \! Q1 A
' n+ ?+ K7 ~. ]9 ?1 m7 z( n- p/ @$ Z
( W# G. V$ }& I3 {
使用新建用户查看对应的资产% e9 m: \1 N& w7 \* M
; \# ?* a9 s; z" y y/ v6 Q
' A9 Q% W1 _0 Z : ^# q8 }& R) f3 v7 p# R
通过web终端可直接登入服务器
0 F- L$ m$ J+ p* T
8 u/ \/ Z. x, D, @! U
! A* ^4 |! F! Z1 W* D8 G- f
. y* j7 T6 M" C, @* T命令过滤器 1 x$ A* q1 _5 c0 p4 Y" [
使用命令过滤器可禁止用户在服务器上使用一些危险性高的命令,比如rm,reboot,shutdown等
6 M0 l+ J5 t/ U2 }6 V
- N+ C' l I" J' U2 G j配置命令过滤器
- e- d2 o- x9 l- ^
g* d( u7 H2 O. B: t$ x# @ U% g# D4 ]# p8 T' r
, f! w! r# L8 E7 A+ M, S) U3 F" x
7 Q8 x6 {8 g L$ \- X* j
8 v5 p& o5 N4 f修改系统用户设置,引用定义的命令过滤器
8 r" o( }! D# I1 P2 B6 ?3 d7 y
" P" h6 x- A5 b
- i0 T" r+ a; l: }% z0 K o
% A# {- E! i- a* s' p3 H登入验证
6 G) z H0 A2 J. C( k2 z
7 z3 \4 R7 Y8 t( ^4 j1 P |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
x
|