zoukankan      html  css  js  c++  java
  • JumpServer简单使用

    笔记内容:简单使用jumpserver
    笔记日期:2018-01-22

    • 23.9 创建jumpserver普通用户
    • 23.10 添加机器
    • 23.11 添加系统用户并授权
    • 23.12 添加授权规则
    • 23.13 命令行登录jumpserver

    本文是上一篇讲解jumpserver安装文章的后续,上一篇的链接如下:

    http://blog.51cto.com/zero01/2062949

    23.9 创建jumpserver普通用户

    jumpserver的普通用户是用于登录web管理页面以及命令行登录该堡垒机的用户,首先创建一个用户组:
    技术分享图片
    技术分享图片

    然后再创建一个用户:
    技术分享图片
    技术分享图片

    创建完成:
    技术分享图片

    用户的密码会发送到你填写的邮箱地址上:
    技术分享图片

    初始密码比较复杂不好记,你可以点击用户列表页面中的 “编辑” 按钮修改密码:
    技术分享图片

    修改完成后试一下能否成功登录这个新建的用户:
    技术分享图片

    登录成功:
    技术分享图片

    下载该用户的密钥,用于之后通过终端登录:
    技术分享图片

    下载成功:
    技术分享图片

    这个密钥有一个密码,该密钥的密码会在创建用户的时候,通过邮件的形式发送到你填写的邮箱地址上。如果邮件发送失败或者忘记了该密码的话,则需要到管理员用户上重新生成一个密钥:
    技术分享图片
    技术分享图片

    生成密钥后,该密钥的密码会在弹窗上显示,密码比较复杂最好记录一下:
    技术分享图片

    然后再到普通用户上重新下载密钥即可:
    技术分享图片


    23.10 添加机器

    先添加主机组:
    技术分享图片
    技术分享图片

    然后就是添加资产,也就是添加主机:
    技术分享图片
    技术分享图片

    添加完成:
    技术分享图片

    在上一篇文章中,我们创建了该主机的管理用户,我们现在只需要到该主机上配置jump用户的权限就能够在jumpserver上管理这台主机了。在客户机配置jump用户的sudo权限:

    [root@localhost ~]# visudo
    ## Same thing without a password
    # %wheel        ALL=(ALL)       NOPASSWD: ALL
    jump    ALL=(ALL) NOPASSWD: ALL  # 添加这一句,注意添加的位置

    保存退出后,到jumpserver上更新这台主机的信息:
    技术分享图片

    能够正常更新信息代表我们上一篇文章中创建的管理用户没有问题。


    23.11 添加系统用户并授权

    在添加系统用户之前,我们需要先生成一对密钥,一会给要添加系统的用户使用:

    [root@localhost ~]# cd .ssh/
    [root@localhost ~/.ssh]# ssh-keygen -f testuser
    Generating public/private rsa key pair.
    Enter passphrase (empty for no passphrase): 
    Enter same passphrase again: 
    Your identification has been saved in testuser.
    Your public key has been saved in testuser.pub.
    The key fingerprint is:
    c4:78:23:66:4b:61:59:b6:4d:f2:96:b5:55:cc:0b:07 root@localhost.localdomain
    The key‘s randomart image is:
    +--[ RSA 2048]----+
    |      oo+ . .Eo+.|
    |     ..= * o + .o|
    |      * * = . o .|
    |     + = o     . |
    |      . S        |
    |                 |
    |                 |
    |                 |
    |                 |
    +-----------------+
    [root@localhost ~/.ssh]# ls
    testuser  testuser.pub
    [root@localhost ~/.ssh]# 

    这个系统用户就是我们通过跳板机去登录的那个用户,如下添加系统用户:
    技术分享图片
    技术分享图片

    添加完成之后我们需要把这个用户推送到客户机上,这个推送其实就是帮我们在客户机上自动创建这个testuser用户,并且还会根据我们粘贴的私钥生成一个公钥:
    技术分享图片
    技术分享图片

    这个自动创建用户的过程以及其他对客户机的操作是由我们之前创建的管理员用户jump完成的。

    推送成功:
    技术分享图片

    然后到客户机上查看是否有这个用户:

    [root@localhost ~]# cat /etc/passwd |grep testuser
    testuser:x:1002:1002::/home/testuser:/bin/bash
    [root@localhost ~]# cat /home/testuser/.ssh/authorized_keys  # 可以看到公钥也生成了
    ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDarC71wVO4/7vaCGopsCNzGjtImqApE+SgXwS60syVkUXiklDg+SsdGCugNuaq/0D/mvkzbhOwlBFpPAuUfrmZS0242b58Z6J7CaMTOTExIRVXpyqG2iAmUO5EnjRU+WcU+JNZyuGpkQeOu9gmjqQVceaPkghtW10KfcpQbkq/VU6m9ZNNLEKvk9ukZ+WOxy6mBGLJ6rS16o8BfFx7HUu1BF4V1FmVmfuZrARHW0Za+ock+8Q41mFLYBel3NQQSWkPeOIm7FtBPrHTkFWqhbTJ1KfqGx3KIwWqJpUWDih026+FopVMjnLSBCJ/I4wIv1GWW00ZrhCUmc+TcEwSSAn5 jumpserver@localhost.localdomain
    [root@localhost ~]# 

    有这个用户就代表推送成功。

    当我们需要将一个系统用户推送到多个客户机上,但是不知道是否全部推送成功又懒得一个个的去查看时,可以在jumpserver上我们可以查看到该系统用户的推送成功、失败以及未推送的记录:
    技术分享图片
    技术分享图片

    如果使用jumpserver的过程中出现问题,但是页面上没有输出信息,可以到日志目录下查看它的日志文件:

    [root@localhost ~]# cd /home/jumpserver/logs/
    [root@localhost /home/jumpserver/logs]# ls
    jumpserver.log  README.md
    [root@localhost /home/jumpserver/logs]#tail -n5 jumpserver.log

    23.12 添加授权规则

    授权规则是用来把jumpserver用户和客户机系统用户关联起来的一个映射:
    技术分享图片
    技术分享图片

    添加成功:
    技术分享图片

    Jumpserver里各个用户的说明:
    技术分享图片


    23.13 命令行登录jumpserver

    我们除了可以使用浏览器登录jumpserver,还可以使用命令行登录,例如我们之前创建了一个test2用户,现在我们就来在命令行上登录这个用户。

    1.在终端上创建一个连接:
    技术分享图片

    2.添加之前下载的密钥:
    技术分享图片

    3.导入密钥:
    技术分享图片

    4.输入密钥的密码:
    技术分享图片

    5.选择该密钥:
    技术分享图片
    技术分享图片

    6.登录时还需要再输入密钥密码,这次输入之后点记住密码下次就不需要再输入了:
    技术分享图片

    7.登录成功:
    技术分享图片

    登录成功后,我们可以在跳板机上登录客户机:
    技术分享图片

    还可以通过跳板机批量执行命令什么的:
    技术分享图片

  • 相关阅读:
    JavaScript的continue、break和return的区别
    JavaScript的函数和作用域闭包
    利用反射快速给Model实体赋值
    C# 多态的实现
    C# 去除字符串首尾字符或字符串
    C#中大List的内存分配
    C#实现对图片文件的压缩、裁剪操作实例
    StringBuilder String string.Concat 字符串拼接速度
    C# 事件浅析
    理解 Thread.Sleep 函数
  • 原文地址:https://www.cnblogs.com/twobrother/p/11423818.html
Copyright © 2011-2022 走看看