JumpServer 堡垒机 指南

堡垒机介绍

    在一个特定网络环境下,为了保障网络和数据不受外界入侵和破坏,而运用各种技术手段实时收集和监控网络环境中每一个组成部分的系统状态、安全事件、网络活动,以便集中报警、及时处理及审计定责。
    我们又把堡垒机叫做跳板机,简易的跳板机功能简单,主要核心功能是远程登录服务器和日志审计。
    比较优秀的开源软件jumpserver,认证、授权、审计、自动化、资产管理。
    商业堡垒机:齐治,Citrix XenApp

搭建简易堡垒机

    具备堡垒机的条件是,该机器有公司和私网,其中私网和机房其他机器互通
    设计堡垒机思路
    跳板机安全设置(iptables端口限制、登录限制sshd-config)
    用户、命令权限限制(iailkit)http://blog.chinaunix.net/uid-28310119-id-3503318.htm
    客户机器日志审计t http://www.68idc.cn/help/server/1inux/2014042190951.html

搭建简易堡垒机 - jailkit chroot

源码安装jailkit

cd /usr/local/src/
wget https://olivier.sessink.nl/jailkit/jailkit-2.19.tar.bz2
tar -jxvf jailkit-2.19.tar.bz2
cd jailkit-2.19/
yum install gcc -y
./configure
make && make install

  创建虚拟系统的根目录,并把常用命令添加到虚拟系统的根目录下

jk_init -v -j /home/jail/ basicshell
jk_init -v -j /home/jail/ editors
jk_init -v -j /home/jail/ netutils
jk_init -v -j /home/jail/ ssh
]# cd /home/jail/
]# ls
bin  dev  etc  lib64  usr

  创建用户

]# useradd zhangsan;echo '123456' | passwd --stdin zhangsan
更改用户 zhangsan 的密码 。
passwd:所有的身份验证令牌已经成功更新。

  创建sbin目录,拷贝虚拟系统 shell 

]# mkdir /home/jail/usr/sbin
]# cp /usr/sbin/jk_lsh /home/jail/usr/sbin/jk_lsh

  刚刚创建的用户更改为虚拟系统用户

[root@test1 jail]# jk_jailuser -m -j /home/jail zhangsan
[root@test1 jail]# cat /home/jail/etc/passwd 
root:x:0:0:root:/root:/bin/bash
zhangsan:x:1001:1001::/home/zhangsan:/usr/sbin/jk_lsh

  修改虚拟用户登陆 shell

]# sed -ir '/^zhangsan/s@/usr/sbin/jk_lsh@/bin/bash@' /home/jail/etc/passwd
]# cat /home/jail/etc/passwd 
root:x:0:0:root:/root:/bin/bash
zhangsan:x:1001:1001::/home/zhangsan:/bin/bash

安全优化

# 只允许密钥登陆
vim /etc/ssh/sshd_config
PasswordAuthentication no

# 添加规则
iptables 略

# 允许哪些ip 链接
vim /etc/hosts.allow 
sshd: 172.16.0.20/24 1.1.1.1


# ssh 除了允许ip之外的ip都拒绝
vim /etc/hosts.deny 
sshd: ALL

# 服务器设置 只允许从那天跳板机登陆过来
vim /etc/hosts.allow 
sshd: 172.16.0.20     # 跳板机 IP
vim /etc/hosts.deny
sshd: ALL

日志审计

[root@test1 ~]# mkdir /usr/local/records
[root@test1 ~]# chmod 777 /usr/local/records
[root@test1 ~]# chmod +t /usr/local/records


[root@test1 ~]# vim /etc/profile
if [ ! -d  /usr/local/records/${LOGNAME} ]
then
    mkdir -p /usr/local/records/${LOGNAME}
    chmod 300 /usr/local/records/${LOGNAME}
fi
export HISTORY_FILE="/usr/local/records/${LOGNAME}/bash_history"
export PROMPT_COMMAND='{ date "+%Y-%m-%d %T ##### $(who am i |awk "{print $1" "$2" "$5}") #### $(history 1 | { read x cmd; echo "$cmd"; })"; } >>$HISTORY_FILE'


[root@test1 ~]# source /etc/profile

开源堡垒机 Jump Server 

介绍

  • 官网 www.jumpserver.org
  • jumpserver 是一款使用 Python,Django 开发的开元跳板机系统,助理 互联网企业高效,用户,资产,权限,审计,管理
  • CMDB 资产管理
  • Auth 统一认证
  • 统一授权
  • 日志审计
  • 自动化运维(ansible)

安装jump server

http://docs.jumpserver.org/zh/docs/setup_by_centos.html

Jump Server 用户管理

  • 修改管理员密码

  右上角用户管理 --->> 快速修改 --->> 修改密码

       创建管理用户(远程机器执行命令)

~]# ssh-keygen -f jumpserver


~]# sz jumpserver

  创建系统用户,用于跳转到其他机器

  创建管理用户

~]# useradd jumpserver
~]# cd /home/jumpserver/
]# su - jumpserver 
~]$ mkdir .ssh
~]$ vim .ssh/authorized_keys
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDic8ywYiwEft4qDUR8fZQWgCkitHfw/dP9UdJajJ5/eoEA1Vcp1TvEL/WCnIYe5/PY8qKj8lx3QUxJy2TYJZy2eza8UTkowpS4x0ZGbg2UdKIZ0s3AIxPtwbs+ODbWiEGQ5AtUKftkm3aZpdB6O8wZhldkjIEcdjgVr4M4Bugw67FdLf4WFqClC1aQd2vUTyoY41dU6+/i1NSJL0BZPr2Ez+js4KN6LQROuWkBsDFG69bsh5qM2AyTnDre0TLZe8MrrXOuXB6/SsUwdlWS7sW9sMKbfDfEvmUkolaGi8PYf4X1fFjKfOdQ+AnWrYgZatgdjOLUQw5e0QjxRPMbZYNp root@mysql-master ~]$ cd .ssh
~]$  chmod 700 .
~]$ exit [root@mysql-master jumpserver]# visudo jumpserver ALL=(ALL) NOPASSWD: ALL

资产管理

  创建资产 添加主机

作业中心检查

     创建资产授权 授权系统用户

原文地址:https://www.cnblogs.com/yanshicheng/p/10696389.html