|
jumpserver 7 [4 d; f7 ]8 m+ J
jumpserver是一款使用python,Django开发的开源跳板机系统
9 \. T7 t( ?" R- {
' p& _$ f, x2 x. \& i" c! c8 X6 q官方地址:JumpServer - 开源堡垒机 - 官网- A# v2 d+ `5 H( i5 c( Y: A4 W
; b3 M2 ]# o2 R6 c+ \' t部署环境
" s# S' A! U% A
) v& F, S4 [2 I6 z: epython = 3.6.x
4 q) e7 g7 A9 |* f. y |4 ~+ P \: y0 \) l1 g% O
Mysql server 最低5.6
5 ~8 ~# a& A3 p( O' c$ R! ]+ T 0 w* v$ f% G2 d. ?
Mariadb server 最低5.5.56
0 {3 }+ d! S; V$ A% S n; s
2 Q, {8 P0 Z) r0 O+ Z0 fRedis$ M7 x5 M& E# z& h* K0 Z
" d! t5 J6 T& Q- O$ \# E
以下示例用docker创建
1 D: D# o' r) r5 q8 R
8 E9 ?1 |! u" kdocker部署mysql
. e' d( P: z) Y |9 }% Z# j) o数据库编码要求utf8& Q# n* n4 y5 g/ F- c7 G
; g6 P5 ^4 p, C1 D2 B( U7 @* U# mkdir /data/mysql/{conf,jumpserver}
- l; g) K5 V- W+ j) }: p! M# docker pull mysql:5.6.48
4 K/ ~ ?( B# V( @$ ]# docker run -it --rm --name mysql mysql:5.6.48 bash" s3 z- k! Q' s8 E3 A& z
# docker cp mysql:/etc/mysql/mysql.conf.d/mysqld.cnf /data/mysql/conf/* b1 M+ r8 h! A) s A8 h5 n
# docker cp mysql:/etc/mysql/conf.d/mysql.cnf /data/mysql/conf/
3 g+ j1 `$ n( m% K/ ^9 v6 k9 f/ W# vim /data/mysql/conf/mysql.conf; U }) Q. c1 Q* ]
default-character-set=utf8' X: E' `$ U3 n
# vim /data/mysql/conf/mysqld.conf
3 C( u Y2 ~! J# ~5 k[mysqld]" X8 R& d1 b2 Q# {% ^1 s$ K& b
pid-file = /var/run/mysqld/mysqld.pid
! m; P$ E3 b9 Psocket = /var/run/mysqld/mysqld.sock) y$ m# C6 f) A8 E
datadir = /var/lib/mysql
1 l0 i3 i% J" f2 b$ V9 U#log-error = /var/log/mysql/error.log
5 N) o5 w, n9 g O6 l' ?# Disabling symbolic-links is recommended to prevent assorted security risks
: a9 v: \' {* d6 Rsymbolic-links=0 V5 ^7 W& q% p* |& G n
character-set-server=utf8
1 ~4 S0 R6 e$ Y. }4 ~/ a# 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
2 K; H, `4 Q$ [5 _4 x$ l7 {" m' j8 X
4 S5 V- E# |, Z3 x* P6 z3 z1 t##验证数据库编码是否为utf-89 B6 J' u8 ^9 M2 h; H& h# S
# apt install mysql-client7 z3 S& U9 C; M$ g( Q0 Z. z. x1 P- j
# mysql -uroot -h127.0.0.1 -pmagedu.com
; I& l+ {' w( nmysql> show variables like "%character%";show variables like "%collation%";2 E0 V, C- H7 i" Y
mysql> create database jumpserver;9 ^2 j& {& a- u5 C
mysql> grant all on jumpserver.* to jumpserver@'172.17.%.%' identified by 'ilinux.com';( o0 n, m( c. g6 p6 ]) B
mysql> flush privileges; ! Z7 w" I; u9 S k$ C/ [" H
docker部署redis , w( M2 ]# I0 s! q9 Z7 ~) v% o
# docker run -d -p 6379:6379 redis:alpine3.12. A. x x0 b) \* H2 j/ o+ }4 ~
# apt install -y redis
, m9 [! F W, z! X+ u; K- p# redis-cli
" v' G& \& h4 @' G+ c1 Z4 z% `127.0.0.1:6379> info 8 {/ T* w, X: \: s
docker部署jumpserver % j9 ~" R+ U5 ~ K0 s( ?/ V
##创建jumpserver容器
( p9 B' W; A9 ^; `7 mdocker run --name jms_all \
1 E- N1 R5 w0 c7 V) f9 Z5 n3 X -v /opt/jumpserver:/opt/jumpserver/data/media \
- z1 a- L1 L! m( r. G$ U7 J -p 80:80 \8 q2 Y$ w: \- L: ^4 Q6 Q @
-p 2222:2222 \0 \& I# T+ c9 x& Z- }1 E: z
-e SECRET_KEY=nHQrsL0MbI8z2K1vKzcOQi9O2gouEZSqZj7gAdL2r5ikegSLXD \
% W- ]: q s; N1 ~- U -e BOOTSTRAP_TOKEN=V5XICWYCBMebHCXC \. E: V* z; T/ b4 L7 H& [6 W4 |
-e DB_HOST=172.20.22.25 \
) \0 s M6 g3 X" Q. M5 l -e DB_PORT=3306 \
- |9 N: ]4 x& N9 X, T$ |3 @! Q -e DB_USER='jumpserver' \0 h: b' ~9 M, p: x
-e DB_PASSWORD="magedu.com" \
' s0 \8 X8 K' `, A/ s9 \# [" I& L -e DB_NAME=jumpserver \$ c* G- X f2 U6 E
-e REDIS_HOST=172.20.22.25 \
- ?& s- ~. x% T -e REDIS_PORT=6379 \ x: M: `( j) }0 L7 R, t* t, i
-e REDIS_PASSWORD= \
: B; j/ D0 A6 |" U2 R3 i jumpserver/jms_all:1.5.9# w1 o: A/ ]- p
. \& P* P [: ?" a( j# N1 V$ Y
###浏览器输入ip,默认用户名密码admin
) V0 r' L+ q5 B$ B" C, y4 p- E# q3 f# w9 o/ Q- i7 V7 m7 _
& j3 P3 v" g) m" f) S. v! i + B% x+ |7 m8 O
配置用户和相应的服务器资源
# `: f+ R3 } E7 W[ol]jumpserver #登录jumpserver的账号。通常是开发或者测试同事的姓名(如果重名就加1、2区分,如user1、user2)管理用户 #是后端资产服务器的系统管理员账号(/etc/passwd),此账户用于资产信息收集以及推送系统账户系统账号 #是后端资产服务器的普通系统用用户(/etc/passwd),此账户用于启动web服务(nginx/apache/nobody)[/ol]2 g; _# y2 O' U8 u" J
添加jumpserver账号并指定对应的用户组
( v. k# H& w* n% u% D$ E1 Z- a- K
- B' s) e' S6 v2 b6 {. w; G/ R# M; v: {9 y# @
- b* B- C8 u8 V! h* m9 Q: s3 m. H9 W9 Y
添加管理用户
# o5 k5 m' g* z1 R6 i; v $ m7 v; _! q& A& j
+ M" i! K7 C# W1 u, |* c3 K
! Y0 N9 u: o, z; j# T# @
添加系统用户
! @8 }1 M; d; Z2 e! l' Q m# t; R5 v* ]4 D
7 @0 ?4 l1 \ `% _添加资产# Y: v5 E! Q1 o8 i& t
2 Y$ I8 U, m( i
- E* A) w5 v* e) z: D4 j* p
5 w, A, ?$ e/ {5 _8 o
+ j2 |. }: Y: l$ t! G3 ?9 e + O3 [0 m% @: g
6 [* Z- C$ J' @0 z8 N4 f
) i) r; A7 a1 K
. R' C: R7 m. S/ |( ]. l 4 p* r8 O( H5 C+ C
; i' q; N9 O/ @8 n , ^6 _% t( a# ^
权限授权
5 ?; n! E2 i" e) |4 S) f, R9 P4 x
* u0 K j) \. ^; x
7 f; i; X& h# m* v" s! h
3 j5 |# C6 S: ]5 W6 e; I# R" {使用新建用户查看对应的资产2 D6 [$ L2 o6 ?( U$ U, ]% r! O l
6 W8 R% T( q. Y7 k! i2 b/ A
+ c" c6 l2 o; O% C7 L; g" O R0 p
' W; e, K) t/ Y# ]* s) e1 X 通过web终端可直接登入服务器
6 L2 K7 Y, z9 b9 A2 h
- X: w/ j) }' g( e
$ y( J" I4 A& r3 ?" z- g; T& c8 w $ A8 n, h: _1 d: M$ u# E$ k( z
命令过滤器
( W' t4 ^5 D3 K& W% G/ E: U! d使用命令过滤器可禁止用户在服务器上使用一些危险性高的命令,比如rm,reboot,shutdown等
! t! u* J5 k6 X# a' T$ C/ r , `3 I$ y. R! H0 t" S% K: o0 v
配置命令过滤器
; E' {" V8 F; {7 u
! i$ z9 p; g# I( E
7 i( f" Z! B; Z$ J0 P
! ^2 i& H% Q p( Q
' p$ v3 l+ {2 T4 u c+ P
$ B) y( u3 o2 h% }6 t9 |修改系统用户设置,引用定义的命令过滤器
& A. |3 g7 ?% c! @4 s
8 @! K9 I8 V" L# C
& j- [. C7 A4 N1 {( l ; s, m, e3 B- I& P( M7 J
登入验证
7 _9 g2 _+ Z$ N) c/ g0 j% i+ {4 b: b @ . I/ a o( F8 R
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
x
|