|
jumpserver / Q. f E$ L: l3 D0 J0 I; D* P
jumpserver是一款使用python,Django开发的开源跳板机系统
# R$ p; K, I, [( _9 z" H
9 @- C* h/ ~4 @9 C: o官方地址:JumpServer - 开源堡垒机 - 官网
/ B+ e' C0 D3 x# R/ q" p
' w2 Z9 @, ]7 A$ n' m. w4 v( d* D5 o部署环境# d, `+ Z$ d! `# s6 u: u
6 g2 |4 P% a: f6 \- ipython = 3.6.x0 T! u' e" b, Q" Y2 n
" i( K; F& n" H3 N9 f
Mysql server 最低5.6# H9 I4 W q) E& |
) F4 a& i: M; Q8 O r* y) lMariadb server 最低5.5.56
5 D$ R0 Q8 s+ @ 7 |8 c* [) ^: r: c% d! F9 i
Redis1 K2 z9 I6 z3 Z& n ]
! ~8 W2 X+ X2 ?1 ^2 {以下示例用docker创建+ V* ]4 H! V, c1 P
# ]0 z# D5 Q4 E4 h8 edocker部署mysql
$ @" {, G: `0 x. f$ C+ M N$ k- l; _4 T数据库编码要求utf8
" A0 K- ] H% ]. Y" D . R. I- s" @7 ?7 e. p
# mkdir /data/mysql/{conf,jumpserver}
$ @5 ?7 x/ M6 J8 O- t! g# docker pull mysql:5.6.48( ?/ C# w7 v/ b5 R
# docker run -it --rm --name mysql mysql:5.6.48 bash! ]+ K" F1 w; K4 h f9 r
# docker cp mysql:/etc/mysql/mysql.conf.d/mysqld.cnf /data/mysql/conf/
+ G& P& o& [9 y6 z# docker cp mysql:/etc/mysql/conf.d/mysql.cnf /data/mysql/conf/% w3 I3 u* I$ y" B5 E7 V: t0 z2 h
# vim /data/mysql/conf/mysql.conf
7 ?% V6 p. v8 t& g) r8 {, cdefault-character-set=utf8, I& V/ ~( ~, v, {3 R
# vim /data/mysql/conf/mysqld.conf O- m. a# O* F; `0 ]: {/ v
[mysqld]1 ~1 \, c9 t0 |' i8 p: c
pid-file = /var/run/mysqld/mysqld.pid& k8 m. ? `- P
socket = /var/run/mysqld/mysqld.sock2 y! X2 o o2 [3 a) V9 o+ R/ M& B
datadir = /var/lib/mysql$ s, l$ Q0 I) y6 T1 M: _
#log-error = /var/log/mysql/error.log& G: O8 E* C/ T& V* h3 Y4 U; [/ v# o2 K6 j
# Disabling symbolic-links is recommended to prevent assorted security risks& _5 U" ~* U6 S- y' v o* i
symbolic-links=0/ P4 U1 q8 J( A1 ^& j+ E
character-set-server=utf8
: M) Q3 O" `8 ^" e& A7 e4 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
7 ^) R' b4 k2 i1 Z0 y
5 K& m# \; G, q/ |- J##验证数据库编码是否为utf-8
$ h. o) N7 w% s# apt install mysql-client
6 O) \" W' ?2 W( A; b9 m# mysql -uroot -h127.0.0.1 -pmagedu.com( t) i9 Z2 Q5 O. X' P+ ]% ?- K" l
mysql> show variables like "%character%";show variables like "%collation%";
4 q# K* ]% y4 r5 j7 ^7 Pmysql> create database jumpserver;
6 X( a' ]# J- z, }5 g2 I% P' Jmysql> grant all on jumpserver.* to jumpserver@'172.17.%.%' identified by 'ilinux.com';
- ?/ t* h, t; E3 rmysql> flush privileges; " ~6 P9 C$ }+ o8 W I
docker部署redis & y9 @( ]! ~! g. J, I
# docker run -d -p 6379:6379 redis:alpine3.128 R% {. b. K5 I9 J5 @3 u8 C
# apt install -y redis( C! L0 K. s' e; s/ m5 K9 L; _
# redis-cli
: X7 q$ r% G" A: b1 o( I127.0.0.1:6379> info 2 `/ y0 a7 C' P- i3 d
docker部署jumpserver J! [' C! e& y* V& q& ^+ X
##创建jumpserver容器
4 p" A% l9 \" G; ^: _0 i2 Gdocker run --name jms_all \6 \9 s6 }3 {' `* z) Z B E1 |
-v /opt/jumpserver:/opt/jumpserver/data/media \
* s3 T# H; O, a# C( Y -p 80:80 \
( q* U& s; f; r% t9 R8 c2 n -p 2222:2222 \
; S) c8 O6 M3 X% N$ g6 E- u) s -e SECRET_KEY=nHQrsL0MbI8z2K1vKzcOQi9O2gouEZSqZj7gAdL2r5ikegSLXD \
' S8 V2 }( y; g9 N& e V7 y! m -e BOOTSTRAP_TOKEN=V5XICWYCBMebHCXC \) I* P- P5 h( C5 }% w4 O; P7 b
-e DB_HOST=172.20.22.25 \
8 f7 ~* K# n6 Z9 K) d! _) ]! O -e DB_PORT=3306 \
+ {( R# S( P1 p" H0 G2 g -e DB_USER='jumpserver' \
. [: C) M% E+ ~; A+ b7 N# z) F -e DB_PASSWORD="magedu.com" \: ^' A/ |8 D5 [9 c! ?# U) W f
-e DB_NAME=jumpserver \
7 e) o2 X% S( C/ G' _ -e REDIS_HOST=172.20.22.25 \
; i1 i f( F1 Q# i8 m -e REDIS_PORT=6379 \) L, ?. g; ^6 a- l6 M- n
-e REDIS_PASSWORD= \1 T. u8 O& T2 w1 l0 W0 a5 N& V; q2 c
jumpserver/jms_all:1.5.97 }. z6 a, L' b. c9 {# K* h+ L
- f2 Y+ H; R& t2 S" q. z; Y# i
###浏览器输入ip,默认用户名密码admin
/ K. v; A1 n* C9 R$ Q/ B/ f/ d7 Q
2 z& C3 z. L+ ?+ }+ t6 a
" a1 r0 k9 D8 J8 D2 g ' ~7 g* ~8 I2 z
配置用户和相应的服务器资源 . o7 N% }. b5 |
[ol]jumpserver #登录jumpserver的账号。通常是开发或者测试同事的姓名(如果重名就加1、2区分,如user1、user2)管理用户 #是后端资产服务器的系统管理员账号(/etc/passwd),此账户用于资产信息收集以及推送系统账户系统账号 #是后端资产服务器的普通系统用用户(/etc/passwd),此账户用于启动web服务(nginx/apache/nobody)[/ol]( Z' J1 v7 l$ o* A2 J) k, ?6 v" J
添加jumpserver账号并指定对应的用户组. A# C: T: m- q; q6 i
' v7 Q( r1 g- J
8 W' v6 _% ~. p' _% W0 D- f
+ v* v7 U/ Q9 O/ O# Q) i* [. e9 M3 i5 x+ ]% Z7 ~
添加管理用户9 R* I4 c2 y# e2 _% t5 U& y
1 Y7 E' k- f7 T" T* {: h
5 k- t/ Q) n3 z O4 W . c8 G! ~9 M0 X$ r. K4 G- _
添加系统用户
0 L( v \9 m5 i( u2 Y ) T: j) E! g* a3 E$ o$ c- {+ ^
5 L/ F, p7 u1 v7 |3 D
添加资产
' r1 [% z9 x+ Q' P( ?9 |
* N! U/ [' z) F2 w1 L/ l! V$ R! @2 q! c+ L- N4 f4 G1 }
, p% I7 \: V$ `, m5 P E
- X1 @$ k3 m, J7 z3 {$ E& b
; ?. ?* @5 y. u& n* A% S D3 b7 _, x3 O. v, |9 y; e$ v6 n
5 a& {" X' x& s0 \1 W1 Y( f/ K' L. ]4 H6 C! k: X
: Q1 u) l: H; _8 {5 W. P
+ j! g6 v7 X* w' j1 }/ U
# j& k2 A7 K( C5 p) `
权限授权# _) d( \& h) [0 _3 K) t
7 ~) n( {9 w/ k: d' Y* r$ v
8 J t1 y: {: s! C& a; y
8 d' k. A& v( j$ W3 c使用新建用户查看对应的资产$ d9 @; w1 N8 C$ U
) S$ B8 w* R) K- H) Z3 B
, }2 V& d% M+ a, R* m) N9 z4 B
3 Z) ~, `- D. \) t7 h* A 通过web终端可直接登入服务器
& f9 S: T# e o7 ? - ~. J# C, d1 o2 Y( y# t
) D8 j0 z/ O! F8 Q
2 t \$ A# S9 i: c K命令过滤器 / I2 S9 ^/ r( {" o4 f
使用命令过滤器可禁止用户在服务器上使用一些危险性高的命令,比如rm,reboot,shutdown等
4 t, u0 d7 U6 e% t
- z/ ^7 d0 N, l$ u# R! [: P) e6 d配置命令过滤器 }0 t1 G, u, s! I: Q4 H7 ^
0 E" y" D2 {& h$ W9 s W6 h2 m
* K4 P; e8 E6 k( v
, _7 M" U; {* u
! T& l8 k8 N& b
5 u" Z+ [6 e0 ]! A# {- H修改系统用户设置,引用定义的命令过滤器 0 x, y0 c4 E- |% o# x
X. B" v0 E3 n$ B5 b7 x2 M2 S% C0 {5 ?
U! m) P! s! \8 m! ~* p3 w5 N" d登入验证
. _ K* t2 q+ I
# N+ R: {7 i, W" w3 O R$ b# E+ o4 c n |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
x
|