|
|
jumpserver
7 F5 S( _! P: s9 {jumpserver是一款使用python,Django开发的开源跳板机系统4 b% c- I' ~& {5 `0 w* L
! p+ j- {/ f; B% ~3 V$ _
官方地址:JumpServer - 开源堡垒机 - 官网
6 U! n* U: j4 b$ { # ~1 @/ E& z* n2 ]3 P% y/ O
部署环境9 v7 _. r6 W t4 |/ U
0 K ^0 ^: i, k9 \' Epython = 3.6.x7 i7 N! |2 p4 Y( s8 f( h
c+ e* l# L! `6 X7 {! E' D
Mysql server 最低5.69 G" L& k# F% p% ]
7 d7 j3 Q) O) t, p3 z
Mariadb server 最低5.5.56
/ P$ O* U9 `! \6 R; M
& I8 y$ s3 H3 v/ u5 uRedis
& O5 ]3 Z1 f. l" _ + d' x% ]8 q- o8 @5 }
以下示例用docker创建# m1 E! I3 k% J' I- A) |
& h5 W2 _* {6 t2 L' {; V" O
docker部署mysql 1 L. W2 a$ X8 j- x. T
数据库编码要求utf81 R* M( \# L) R& N; }$ H" o
$ R5 h( z9 k7 b# G4 ^9 S$ w# mkdir /data/mysql/{conf,jumpserver}- w: [" e% B1 O
# docker pull mysql:5.6.487 p" T* Y* y% L1 M5 i( q
# docker run -it --rm --name mysql mysql:5.6.48 bash `& A9 ~" ?% B% r+ {6 _ q
# docker cp mysql:/etc/mysql/mysql.conf.d/mysqld.cnf /data/mysql/conf/; w* r. w8 C3 q8 t& q
# docker cp mysql:/etc/mysql/conf.d/mysql.cnf /data/mysql/conf/" _; H+ H9 q% {0 p& P( P
# vim /data/mysql/conf/mysql.conf
! ^9 r" ]- u5 x2 K- n* k0 Gdefault-character-set=utf8* C3 C$ Y0 `' o6 C
# vim /data/mysql/conf/mysqld.conf5 u4 C+ f F/ j& y
[mysqld]
) F- `; w) r2 A, r# U8 ipid-file = /var/run/mysqld/mysqld.pid; v+ s' v' @) X4 ]: V5 F" y2 a
socket = /var/run/mysqld/mysqld.sock, D! ^( @9 L4 |, w/ C4 E
datadir = /var/lib/mysql* d" g: x2 W8 K5 ]4 h2 c
#log-error = /var/log/mysql/error.log, _( @" C/ x( r! v8 l, A
# Disabling symbolic-links is recommended to prevent assorted security risks
$ E: V- A0 Q1 Bsymbolic-links=0
, g+ \" @9 G1 N3 |+ a% P0 e6 @character-set-server=utf83 A7 k6 H2 G% A! q# Z5 V
# 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& ^+ R; s. Q8 G0 H* z% H
2 i" V. i0 |& U- G- Z# a' v##验证数据库编码是否为utf-8; u' }* y7 k$ ^- }& B+ T* m
# apt install mysql-client3 ~- |4 l- D% H. m6 K9 R
# mysql -uroot -h127.0.0.1 -pmagedu.com
: F2 m$ A7 s/ c: J6 lmysql> show variables like "%character%";show variables like "%collation%";
6 Q( J7 j2 ?' g1 Emysql> create database jumpserver;& W& E3 ]7 m3 \$ N& D! E
mysql> grant all on jumpserver.* to jumpserver@'172.17.%.%' identified by 'ilinux.com';1 j9 u# c+ ?4 K
mysql> flush privileges; u6 A3 ]! W/ A2 n0 |
docker部署redis
# t! |% H9 \0 |/ [( w0 I* @* j# docker run -d -p 6379:6379 redis:alpine3.12* r, W7 `$ p% d) Z, @4 l& W' ]
# apt install -y redis, \5 }9 q1 y8 @3 u* o3 X. t
# redis-cli % F( h4 f0 z1 ]4 b- z
127.0.0.1:6379> info
# ^1 D S' t, ?docker部署jumpserver
: f ~ F5 @, s##创建jumpserver容器
/ j O, ]$ B! edocker run --name jms_all \& @) A3 S( `: ^" s
-v /opt/jumpserver:/opt/jumpserver/data/media \
9 O7 m! O( k0 e2 E' X. A/ c) _# |2 H -p 80:80 \
. n1 N6 X2 r% k( Q -p 2222:2222 \3 E0 d7 l m" }/ H$ M6 \$ k0 P0 E* E
-e SECRET_KEY=nHQrsL0MbI8z2K1vKzcOQi9O2gouEZSqZj7gAdL2r5ikegSLXD \2 J3 h& Q) @3 [ M7 |7 f1 X$ \
-e BOOTSTRAP_TOKEN=V5XICWYCBMebHCXC \
8 V$ ~7 m3 w" H" |# i, S -e DB_HOST=172.20.22.25 \
4 x# P1 H* x- V. W( s -e DB_PORT=3306 \- m T0 O& k: p
-e DB_USER='jumpserver' \
4 L" f3 }5 Z8 u+ n& ]: ^4 p8 u -e DB_PASSWORD="magedu.com" \
; [( L- A* s9 p* I, ~! i8 U -e DB_NAME=jumpserver \
7 r. \' u. M1 Q& G -e REDIS_HOST=172.20.22.25 \
- L) Y# V) e8 s6 V0 E T -e REDIS_PORT=6379 \, [, p, B) Y8 r1 O2 o
-e REDIS_PASSWORD= \
6 R2 i% v; Z% T7 I jumpserver/jms_all:1.5.9) [7 b' x, ^3 ^* C8 g; g( ]
" A: z' i9 y, {! X
###浏览器输入ip,默认用户名密码admin 6 I8 b% S9 r- q5 i
- U) T( o4 \& U- J. h
- E0 R0 p7 X! P4 {6 { 0 ]6 B3 S- G% y1 m& O x% I+ B& l
配置用户和相应的服务器资源
' H7 m& H O' W/ h, \" \[ol]jumpserver #登录jumpserver的账号。通常是开发或者测试同事的姓名(如果重名就加1、2区分,如user1、user2)管理用户 #是后端资产服务器的系统管理员账号(/etc/passwd),此账户用于资产信息收集以及推送系统账户系统账号 #是后端资产服务器的普通系统用用户(/etc/passwd),此账户用于启动web服务(nginx/apache/nobody)[/ol]. e' A* s: G `5 V: H1 c
添加jumpserver账号并指定对应的用户组/ _, `$ K) L5 V. d# l
. C1 ^) b' J4 }0 g( ^
' Y1 _# H( }* |1 s# X& o
_" D/ B, y$ l( O$ r- ^
4 H3 D3 F5 R2 e8 Y9 V F 添加管理用户
2 W* d! b# g2 \+ V 6 t1 h: y6 o# |6 B" g4 x( K
4 H/ T, ~, {! ~: [, K8 {/ c
0 N. c2 @8 @3 d: c
添加系统用户
6 R- U* G2 g8 u. z
, |4 i$ w; Z% E5 S! o. L3 Q* ^8 r% Q1 g* ?' p
添加资产
, Q: G \& v: B, z 8 q7 h" L* Z& h, a! Z
' q3 Y( E0 Y, {: S- d) ~7 @; b/ ?2 A
; U( _' P7 o- y
7 ?! ~% l% v' Z4 v5 ^# y 5 b8 o j# Q6 a7 C9 A7 A
2 t: C" }8 d/ e! e! H- G8 A4 }
) z) [( G# C- f; C' W i, d; R7 J; T# e! J( D% A
7 z9 Z/ R! p& _
! t5 u2 t- W% I& L% v; f6 t 7 a0 N- ^ \7 ? d3 u7 F
权限授权( D! d- c* X0 d
h7 Y0 y0 U, g5 I$ J
' U" E# `. Q6 q: a) U% E7 \3 P( G 8 }* J* S4 @* P5 b* r/ E8 u
使用新建用户查看对应的资产" u7 N# t3 A1 f2 k! r) Q+ Y" ?! V
; n; s4 X, I1 N4 Q: n
2 g7 }1 q$ ^4 u. p0 f5 h
' @3 g+ ]; I7 `: N1 _4 Z% P( @ 通过web终端可直接登入服务器& \) B0 r) a4 e8 a" N# h- n8 G
g" Z* D8 X( {/ k
. D1 j C5 D3 Q9 {9 A( {( U
; E! N5 {6 h" W- ?5 r命令过滤器 i; ]- z8 V5 K# K
使用命令过滤器可禁止用户在服务器上使用一些危险性高的命令,比如rm,reboot,shutdown等9 n7 m% { a6 f5 c
1 y; T. F# E+ Y u! `& A配置命令过滤器
) B" T7 _# }7 m8 [
6 m/ Z. d, y0 w& l& [; T
- l% \- \3 K* ~# h2 ]1 o
* g- Z- U6 k- h* f' d
3 Q6 Q' |: q0 W2 k) }* c
2 v& l' }; A: Q5 y* Z% N修改系统用户设置,引用定义的命令过滤器
. T! w6 {* b6 h ; C2 Y+ L) B7 x* y. A) o4 z
2 z. O5 ^: H+ e! F4 o' w# k
, G8 w3 L; {3 L- p登入验证
% T' n' u6 s6 ~) V+ V6 K8 \ " n9 O! Y; n$ x8 t3 {
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
x
|