|
jumpserver , ?9 R8 w4 O5 j+ G! g
jumpserver是一款使用python,Django开发的开源跳板机系统
) D3 y- E- s8 L6 z 6 i; T+ r1 |' z, Q* n
官方地址:JumpServer - 开源堡垒机 - 官网
/ l; i7 y) S. q% e9 M6 l / k r% Z; U3 Q1 B
部署环境' V# K7 K) S' v V& {7 r
& D+ @! d6 ?( L* M- Cpython = 3.6.x7 S, S, Z# G8 Z' v
& I3 d$ P& a1 [/ a3 v1 yMysql server 最低5.6
' Y" P5 i+ N3 q. u p/ R7 F* Z6 U& _ + d% @; R, W4 u
Mariadb server 最低5.5.56: u g' @: r2 a" _: S& A
) h. U+ g/ I' t, z. |* Q+ C" I/ |
Redis
" M0 u4 \6 {7 C) K) J% J/ Q- ^ , i: y# B1 n0 j0 i5 G4 T( }; O
以下示例用docker创建/ O2 P$ ~$ d# x, o
( {* _8 A7 F. j$ I$ m1 M$ t
docker部署mysql 3 `3 f2 e) C# H( s, X3 n8 x, z# j) A
数据库编码要求utf8+ i$ v: F3 D* |% ^( T6 `
; o7 V2 |4 S- \1 r2 m* \& t# mkdir /data/mysql/{conf,jumpserver}
4 W% Z1 `& T% I9 T6 E# docker pull mysql:5.6.48
* R6 R0 t1 G3 k, S# docker run -it --rm --name mysql mysql:5.6.48 bash# R' l2 P8 m4 E+ g6 g, [
# docker cp mysql:/etc/mysql/mysql.conf.d/mysqld.cnf /data/mysql/conf/
' u0 c9 s: [# T7 `# docker cp mysql:/etc/mysql/conf.d/mysql.cnf /data/mysql/conf/
- q% }+ r0 O7 f# vim /data/mysql/conf/mysql.conf' P9 l: X' v" B; ~
default-character-set=utf81 t$ W; ~# P% {2 n, o& K
# vim /data/mysql/conf/mysqld.conf ~9 l0 W/ e0 `* K6 g3 l, y6 p
[mysqld]- A; ]% J. I; n( Z
pid-file = /var/run/mysqld/mysqld.pid
' l3 _; P5 I2 isocket = /var/run/mysqld/mysqld.sock
, y; r' }( U4 b. t/ s7 T$ m. ldatadir = /var/lib/mysql
7 L( V. }4 f( [( j; E0 V#log-error = /var/log/mysql/error.log
- w3 j% P! R5 o7 |# Disabling symbolic-links is recommended to prevent assorted security risks
1 F7 @2 w. ^/ y0 P, @, d: T; B" Qsymbolic-links=0
7 T- S/ J: L, V3 r/ ]6 s6 P, fcharacter-set-server=utf85 u, K5 J# r. W9 }0 ? ]4 R
# 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% y9 H# ^6 G( ?, e
8 ]0 G/ ~& P8 }, W2 Y# D##验证数据库编码是否为utf-8+ a5 f: t4 e( X# u5 G" h/ {
# apt install mysql-client# h l( |! y. r! U R- w
# mysql -uroot -h127.0.0.1 -pmagedu.com
, T/ {/ @. O1 J/ X dmysql> show variables like "%character%";show variables like "%collation%";; z3 `8 U% A- Y0 M, G: U5 A
mysql> create database jumpserver;' s) L: B3 t7 N
mysql> grant all on jumpserver.* to jumpserver@'172.17.%.%' identified by 'ilinux.com';
* W" O0 r0 d5 t% q- V5 R' Rmysql> flush privileges; * M$ Z5 j' F, f( X2 y
docker部署redis : n; J8 U; Q9 L! {& w
# docker run -d -p 6379:6379 redis:alpine3.12
: g0 ]6 K% H6 ?8 m1 ~$ P) d: q' C# apt install -y redis/ v7 B# Y8 j9 i* k# {, H4 w( |
# redis-cli & a8 K" g2 g L; F- U
127.0.0.1:6379> info $ [1 g+ K# W3 }: ]7 e% U: T
docker部署jumpserver
6 x: i+ x8 K8 e1 c" w, d+ {/ _##创建jumpserver容器" N! N( t' W" f) B+ a9 @! T
docker run --name jms_all \
! z: O' o3 ~4 K* |& U# l1 C4 N -v /opt/jumpserver:/opt/jumpserver/data/media \
8 X) s k5 d" e' p -p 80:80 \
- `0 ~$ i6 @! m: M& Y( F -p 2222:2222 \- l4 Z7 O2 V) u2 E0 j: E5 z/ ^
-e SECRET_KEY=nHQrsL0MbI8z2K1vKzcOQi9O2gouEZSqZj7gAdL2r5ikegSLXD \
( q; N+ B+ K, f) ~1 [ -e BOOTSTRAP_TOKEN=V5XICWYCBMebHCXC \
& g" n9 {$ P( m7 ~ n4 f -e DB_HOST=172.20.22.25 \4 b* g+ i: t; N3 R$ o
-e DB_PORT=3306 \
4 c7 A- Q- F& k" }5 a$ d) y -e DB_USER='jumpserver' \
4 }% V# b, L6 k) s, U/ n1 Z -e DB_PASSWORD="magedu.com" \
4 ^- S# y; \7 `% M' g9 u4 p -e DB_NAME=jumpserver \6 Y; ~# G1 Y* [# a- l" f: K8 a
-e REDIS_HOST=172.20.22.25 \* n. |% G" p5 m0 G) O7 {! _
-e REDIS_PORT=6379 \
" m, N" @) B3 L& f2 ` -e REDIS_PASSWORD= \2 m4 {7 n' A3 _1 X6 h
jumpserver/jms_all:1.5.9
: ]$ B N; ?( ]" Y* z" [+ h- i# c6 q; M" h
###浏览器输入ip,默认用户名密码admin # _3 V: y q4 B7 H
' |4 e: b2 X! p; Y* ^: C" X
! R4 J6 D q% M o+ S
/ ^6 W2 Z( s @' U6 f4 ]6 {- t! h配置用户和相应的服务器资源 $ }( R0 }$ ~0 W2 p/ j
[ol]jumpserver #登录jumpserver的账号。通常是开发或者测试同事的姓名(如果重名就加1、2区分,如user1、user2)管理用户 #是后端资产服务器的系统管理员账号(/etc/passwd),此账户用于资产信息收集以及推送系统账户系统账号 #是后端资产服务器的普通系统用用户(/etc/passwd),此账户用于启动web服务(nginx/apache/nobody)[/ol]4 G+ U7 M& z z9 N; C2 n2 R9 J' E
添加jumpserver账号并指定对应的用户组
+ l# [9 E0 q# p* `% z5 M$ e 9 q G8 M i3 |) `# `! C+ N) W) _
& h8 p9 A- X3 I4 \5 c% k- B2 M
5 Y/ j7 m9 |3 ]/ y3 q" d9 M- o0 [
( {9 b' d+ Z1 v: } 添加管理用户8 `+ q; U( R( [' F+ S
7 a0 W: {1 h# ]. j+ k
8 R; g" ~- x/ g& P5 U( E
4 K) f B, b! n6 Y! o# F7 `添加系统用户! m1 ^0 R6 T9 X) v% \% \" K
, |, G" G$ {% [0 h
) h9 O; {9 N( |* i* i添加资产# S! v' g/ f: c& Z- x3 ^
@2 c% e* X! W
6 l/ i9 ]0 H% f- W
) Q% v% }9 D/ H. x2 [1 S: n2 K3 c( [' D) k4 h' d' H
, {0 v! u' t. @" c# I0 N8 A @ ~% ]9 Y2 z9 h. u; U
( [% C% Q$ w, m7 I! J4 O% L7 F
' z( f# G1 R' E6 N1 w
: `- q; a n" x7 ^, Q$ X6 l# t4 Q: Q5 E
8 ^6 i( Z U8 f4 y7 A% j7 } P$ S
权限授权
: O. V, P3 A+ x2 s' o4 K. Y: ~
3 R! y7 B8 |: [ T3 b
' v) k. |3 R% A* m
) r. ?- y# P l" O4 S5 x使用新建用户查看对应的资产
: n, V2 E# n$ U3 S2 Q4 P1 b( {
! M! _- H( L3 i2 k
H' f+ R9 @8 _6 V _2 r0 m
4 Y8 F4 j8 {5 v. G K/ n4 Q 通过web终端可直接登入服务器
* @8 k% x. A4 [+ ~% }9 [
( ~0 z5 m+ S* m" K, t1 Z+ z9 t- ~; ]& o
# x: D+ D7 G# G! S命令过滤器
; K4 b% V/ A1 y0 ?. T2 `使用命令过滤器可禁止用户在服务器上使用一些危险性高的命令,比如rm,reboot,shutdown等
$ H6 I, T3 F0 B! b4 n: c1 V ; x: k, ^. C2 @4 J5 n
配置命令过滤器4 n% |% F3 B m( M% l4 X3 L
' F. X% S& x8 g
3 f j! R1 w. J5 h& m
3 T/ b: e! \, @3 g n7 L( r; H6 W2 m7 T" l( O% S
7 J4 w$ v! h. u, s9 F- g修改系统用户设置,引用定义的命令过滤器
2 k3 H; \" |, j$ {: m
% F- H8 ~ M3 @, T) h- \! f
. S* n5 W0 f0 @& h5 Y7 E
7 f6 [' ~8 _$ h- `1 L登入验证
$ o+ o' L" G$ S0 l+ u D
4 M' n9 y$ e# y% u) C2 k+ C: } |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
x
|