|
jumpserver ' |9 n; y% s; Z( }0 e4 [
jumpserver是一款使用python,Django开发的开源跳板机系统& w3 M4 \0 x0 v. |2 N
3 v2 m( z, L0 e+ z
官方地址:JumpServer - 开源堡垒机 - 官网
, ?/ B8 n3 E) p# ?; [2 N1 F 0 z# P7 j0 p% ]/ ~5 i- h# {6 Z% k
部署环境
, A/ _/ P. s1 n& L' b: }: o 8 j9 R$ T7 l" F3 g0 @" `/ t/ |
python = 3.6.x
2 O s6 g3 p ?
5 T6 T5 U- V/ e& {: CMysql server 最低5.6/ V% w& t: G3 A x( R2 {! g; U
; k& `+ [4 T' }, y1 E7 G2 V
Mariadb server 最低5.5.564 a+ D V+ {# o! a4 G4 i. {$ p
- Y# J }% H8 n* ^+ g" e0 @Redis& c& y; i1 N# P' q
% @/ a ~ Q& F( k3 b以下示例用docker创建, V% m9 ?2 m" k) u1 C: E
, C2 L- L; t) {3 {1 Jdocker部署mysql
( ^- l9 Q% B T) W, ?$ L数据库编码要求utf8
' |* D! b* V3 w8 W; O( N2 J0 X
0 L) G1 x' p, u0 z2 u4 n# mkdir /data/mysql/{conf,jumpserver}4 r# h6 c& [$ y3 P
# docker pull mysql:5.6.48
% h8 F+ m4 {, Y0 m* }. Y& H) j" w# docker run -it --rm --name mysql mysql:5.6.48 bash
! I5 c$ n0 q2 i! c8 B5 a9 v3 o' C2 ~1 k0 G# docker cp mysql:/etc/mysql/mysql.conf.d/mysqld.cnf /data/mysql/conf/ E& v( g# i4 m2 c3 H1 ~. m# P' y
# docker cp mysql:/etc/mysql/conf.d/mysql.cnf /data/mysql/conf// {2 c% c" ?2 M: o! s
# vim /data/mysql/conf/mysql.conf
, Z9 { a; w! U0 L3 b4 kdefault-character-set=utf8
$ Q; s# y* h f" a3 [7 @( y# vim /data/mysql/conf/mysqld.conf
5 D& e/ t7 F2 p! x; d' o[mysqld]% i- f* }1 g: R) ^
pid-file = /var/run/mysqld/mysqld.pid% J+ C0 _. [. C+ }
socket = /var/run/mysqld/mysqld.sock
, r: f5 m/ I: ]. Cdatadir = /var/lib/mysql
6 s4 j8 R/ f: h#log-error = /var/log/mysql/error.log
0 `6 k2 i4 {* d3 T# Disabling symbolic-links is recommended to prevent assorted security risks$ M4 V- \" o" l) B/ I! w
symbolic-links=0
' C) m8 {. y& ^% B; c, [% Bcharacter-set-server=utf88 ~+ n: Z0 Z- L |6 [, N E' _
# 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# p- H5 j1 T% M! _% g0 Z/ P; |$ c- p- }- B1 S! B7 h
##验证数据库编码是否为utf-88 _) K3 x+ M( u% `8 b! W6 d( E
# apt install mysql-client, O" u V s3 D5 e9 }4 P
# mysql -uroot -h127.0.0.1 -pmagedu.com
+ g! g4 F' p+ i. }) w) e0 D1 X; R$ Wmysql> show variables like "%character%";show variables like "%collation%";
5 t( u' g: Q, w) Hmysql> create database jumpserver;3 ~6 w6 ^7 A3 u, m
mysql> grant all on jumpserver.* to jumpserver@'172.17.%.%' identified by 'ilinux.com';2 v, ^9 s& H2 i D
mysql> flush privileges; 5 s, e& r! W6 g' o! `3 [1 d
docker部署redis
6 j' h0 Q$ \! s+ Z8 G5 ]# docker run -d -p 6379:6379 redis:alpine3.12
. p5 O y5 T; g8 |" j9 {# apt install -y redis9 o, }2 }- \6 D6 O# Z
# redis-cli
. w: [5 s _( ~& Q3 E" k, n127.0.0.1:6379> info
& {( V: c7 C- W Y" M, ~0 wdocker部署jumpserver / j: p9 _* r3 ~
##创建jumpserver容器( m! K2 C5 ?9 l
docker run --name jms_all \: J: ~, }2 }" M5 F$ B- ~
-v /opt/jumpserver:/opt/jumpserver/data/media \3 l1 N- @6 @4 t0 B
-p 80:80 \. D4 v& T& I( ]( a+ X1 h4 c
-p 2222:2222 \: M7 t$ i. P7 X; q: q
-e SECRET_KEY=nHQrsL0MbI8z2K1vKzcOQi9O2gouEZSqZj7gAdL2r5ikegSLXD \, U! p) K' d# e. m
-e BOOTSTRAP_TOKEN=V5XICWYCBMebHCXC \4 a0 \. i/ b/ {
-e DB_HOST=172.20.22.25 \
* d0 }2 X& m$ s8 ^' O# K: p# g -e DB_PORT=3306 \
* z- J3 V" O$ [0 Q; c( A- q+ y$ O -e DB_USER='jumpserver' \
- Q9 l6 `; r' ?$ m -e DB_PASSWORD="magedu.com" \
) U- x# v6 c' r$ ~$ }% _1 ~ -e DB_NAME=jumpserver \( s Y5 H! Y: B4 n
-e REDIS_HOST=172.20.22.25 \2 ~* Z( C% c5 S' e
-e REDIS_PORT=6379 \ u5 g) |4 g/ r/ r" l
-e REDIS_PASSWORD= \
3 U& b" I+ P5 ?" F4 u/ }% y4 a jumpserver/jms_all:1.5.99 [ O! V$ _1 n; O' D) ^
$ y7 ~4 x. F, `5 F! A5 R
###浏览器输入ip,默认用户名密码admin 3 @9 s; }1 }) F
; N: {, x5 V5 _) N3 d
5 j( T+ i( a7 G5 e. ?8 h
- v8 c+ @ O( w& ~% j
配置用户和相应的服务器资源 3 p4 u0 i# P) v
[ol]jumpserver #登录jumpserver的账号。通常是开发或者测试同事的姓名(如果重名就加1、2区分,如user1、user2)管理用户 #是后端资产服务器的系统管理员账号(/etc/passwd),此账户用于资产信息收集以及推送系统账户系统账号 #是后端资产服务器的普通系统用用户(/etc/passwd),此账户用于启动web服务(nginx/apache/nobody)[/ol]
3 {; T8 L5 t& g: z7 D添加jumpserver账号并指定对应的用户组
. [( x/ m4 i- J8 [+ {
. o; R* a0 `. p) ~/ C
# }' ~- F' T2 q# i4 {& M4 Q ) K4 a8 r3 I/ F+ g7 u( u) X3 J" _
4 d/ u' ?6 k( d/ a7 k+ p
添加管理用户
4 z) J* A% Y$ H) ^0 Z0 ` c+ {! R( A, m" w- ^6 ~6 l
8 T/ u. _$ H; ^. d! P$ k
4 U! u3 J/ H# W/ b( K添加系统用户" T0 c6 E. D% @. B8 V' q
# G' w9 @8 W8 E0 k% Q2 r
. S5 ?( Y0 x ^: T+ K添加资产2 j& S$ n, a6 B
- P$ O. l9 J2 }3 A5 ?/ h+ l6 E8 S$ ` E
: H6 K9 ?/ a- F% y, J$ z% E' N
7 i& Y5 m: a p; x1 t
/ Q" j: W' E' x% G+ p, J, u* q3 s* G7 B/ s
1 b: U" q! d( F9 D
# G0 m" |0 Q4 W6 @: [; `; \ / C) @1 }+ \$ o7 \, G4 r
5 w' o% y0 k) J+ c7 y
% E3 h3 ]+ O! d2 h5 p1 K
权限授权$ v: Z1 k, m' ~4 t. S
' S9 D3 {4 [: o; J. G3 |- K
; F2 y6 L9 @1 T/ A5 l
. A6 r* c! Z$ W/ F. P6 s3 _使用新建用户查看对应的资产' ]$ G$ s$ q) A7 h2 g& k4 {: A9 `# Q
. R7 u+ N4 u: n3 i' K* L3 l$ \! K! Z4 o: A; c8 c
1 J4 A) Y' Q7 V& w* O
通过web终端可直接登入服务器
, U6 S: a. L- i) t( q* \2 R
: Y0 t5 R" H. H7 Q" ^# X4 [& Q7 T, c1 q. J5 L9 T
' k; |: T8 |$ v! S' J6 F5 c# N
命令过滤器
) a% e4 ^9 [$ u' q( r) Y6 I6 R使用命令过滤器可禁止用户在服务器上使用一些危险性高的命令,比如rm,reboot,shutdown等
' A& E: k6 ]2 A7 A3 T
) O& {2 L% m i( x- q* v W配置命令过滤器
9 A& l) J$ u ` q
1 Z5 k6 q- y6 |. D8 v" M+ r' N
N5 o* i& _* R) h 5 Y. D; Y/ S9 Y1 ~3 R6 D( G
8 ^3 q! c. c- T2 s, A" V
, v0 J8 w+ h/ l. O( s7 f9 s
修改系统用户设置,引用定义的命令过滤器 . j0 ^2 r3 B5 E; }
0 y& b3 c4 o% e. ~7 l: N. z
( J7 o. p4 Q$ l" i! D
7 P. L+ c. G" ^1 C4 E( w登入验证+ ~" y& Q* m% d
2 \# [& B& ]( n7 I( t2 P# Z4 ] |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
x
|