• kinit相关命令(转发)


    原文:

    kinit相关命令

    Kerberos 常用命令

    Kerberos 常用命令

    Kerberos常用命令笔记

    Kerberos常用命令

    Kerberos 命令

     

    生成keytab后,使用该文件认证

    认证的命令如下:

    kinit -kt /xxx/xxx.keytab xxx@xxx.xxx.com 认证后,kerberos就给这个用户一个有效期,用klist命令可以看到这个有效期 klist -kt /xxx/xxx.keytab


    可以用chmod给其他用户加上r权限,这样其他用户也能使用这个keytab文件

    配合svn命令一起用,在有效期内就不需要每次都去输入密码,可以写在python文件里,去执行命令, 比如用脚本执行svn指令自动更新这种应用场景。

    kinit -kt /xxx/xxx.keytab xxx@xxx.xxx.com;svn up



     
     
     

    Ticket 管理

    Kerberos Ticket的若干属性:

    • forwardable 简单来讲,KDC可以基于该类型TGT发放新的TGT,即使 network address不同。这样不需要再次输入密码。
    • proxiable 类似于forwardable,但是不同的是只允许service继承client的认证
    • proxy 
    • postdated 
    • Renewable 用户不需要重新输入密码就可以获得新的 session key. 但是这种TGT有过期时间。
    • invalid 
    • hardware authentication 申请使用硬件的Ticket认证
    • okay as delegate ticket指定的服务器可以用作delegate determined by the policy of that realm
    • anonymous ticket is one in which the named principal is a generic principal for that realm; it does not actually specify the individual that will be using the ticket. This ticket is meant only to securely distribute a session key.

    用 kinit 获得Ticket

    如果你的登录系统集成了Kerberos v5,那么登录时自动获得kerberos ticket. 否则,必须显示获取,比如用 kinit。类似,如果 ticket过期了,kinit可以申请新的ticket. 

    By default, kinit假设你想要与自己名字相同并加上default realm的pricipal的ticket。

    shell% kinit
    Password for jennifer@ATHENA.MIT.EDU: <-- [Type jennifer‘s password here.]
    shell%

    如果想要申请 forwardable ticket,可以

    shell% kinit -f
    Password for jennifer@ATHENA.MIT.EDU: <-- [Type your password here.]
    shell%
    shell% kinit -f -l 3h david@EXAMPLE.COM
    Password for david@EXAMPLE.COM: <-- [Type david‘s password here.]
    shell%

    用 klist 查看 ticket

    当你第一次获得 ticket, 那么只能是TGT,看起来如下:

    shell% klist
    Ticket cache: /tmp/krb5cc_ttypa
    Default principal: jennifer@ATHENA.MIT.EDU
    
    Valid starting     Expires            Service principal
    06/07/04 19:49:21  06/08/04 05:49:19  krbtgt/ATHENA.MIT.EDU@ATHENA.MIT.EDU
    shell%

    如果连接到其他机器上,比如:daffodil.mit.edu,但是在同一个realm,klist会得到

    shell% klist
    Ticket cache: /tmp/krb5cc_ttypa
    Default principal: jennifer@ATHENA.MIT.EDU
    
    Valid starting     Expires            Service principal
    06/07/04 19:49:21  06/08/04 05:49:19  krbtgt/ATHENA.MIT.EDU@ATHENA.MIT.EDU
    06/07/04 20:22:30  06/08/04 05:49:19  host/daffodil.mit.edu@ATHENA.MIT.EDU
    shell%

    当jennifer用ssh程序登陆主机daffodil.mit.edu,ssh程序将jennifer的TGT给KDC,并请求主机ticket,这样jennifer不用再输入密码。

    klist有各种flag,具体可以通过 man klist 查看。

    用 kdestory 销毁ticket. 

    由于ticket可能被偷走,这样离开机器的时候可以顺便销毁ticket.

    shell% kdestroy
    shell%

    其他命令

     

    增加用户,带随机密码的

    sudo /usr/sbin/kadmin.local -q 'addprinc -randkey kafka/10.211.55.5@EXAMPLE.COM'
    sudo /usr/sbin/kadmin.local -q 'addprinc -randkey zookeeper/127.0.0.1@EXAMPLE.COM'
    

    添加到密钥库

    sudo /usr/sbin/kadmin.local -q "ktadd -k /var/kerberos/krb5kdc/kafka.keytab kafka/10.211.55.5@EXAMPLE.COM”
    sudo /usr/sbin/kadmin.local -q "ktadd -k /var/kerberos/krb5kdc/kafka.keytab kafka/weiwei@EXAMPLE.COM’
    sudo /usr/sbin/kadmin.local -q "ktadd -k /var/kerberos/krb5kdc/kafka.keytab zookeeper/10.211.55.5@EXAMPLE.COM”
    sudo /usr/sbin/kadmin.local -q "ktadd -k /var/kerberos/krb5kdc/kafka.keytab zookeeper/127.0.0.1@EXAMPLE.COM”
    sudo /usr/sbin/kadmin.local -q "ktadd -k /var/kerberos/krb5kdc/kafka.keytab clients@EXAMPLE.COM”
    

    查看数据库密钥

    klist -t -e -k /var/kerberos/krb5kdc/kafka.keytab
    

    查看方式2

    ktutil
    rkt /var/kerberos/krb5kdc/kafka.keytab
    

    初始化密钥

    kinit -kt /var/kerberos/krb5kdc/kafka.keytab kafka/10.211.55.5@EXAMPLE.COM
    

    启动kerberos

    service krb5kdc restart
    chkconfig krb5kdc on
    

    启动kadmind

    kadmind


    进入kerberos 控制台

    kadmin.local 
    或 
    kadmin

    创建数据库

    kdb5_util create -r HADOOP.COM -s

    启动kdc服务

    service krb5kdc start

    启动kadmin服务

    service kadmin start

    修改当前密码

    kpasswd

    初始化princle

    kinit -k -t /home/chen/cwd.keytab test@HADOOP.COM

    通过keytab文件认证登录

    kinit -kt /home/chen/cwd.keytab test@HADOOP.COM

    查看keytab

    klist -kt /home/chen/cwd.keytab 

    清除缓存

    kdestroy

    生成随机key的principal

    addprinc -randkey root/master@HADOOP.COM

    生成指定key的principal

    addprinc -pw **** admin/admin@HADOOP.COM

    查看principal

    listprincs

    修改admin/admin的密码

    cpw -pw xxxx admin/admin

    添加/删除principle

    addprinc/delprinc admin/admin

    直接生成到keytab

    
    
    ktadd -k /home/chen/cwd.keytab test@HADOOP.COM
    xst -norandkey -k /home/chen/cwd.keytab test@HADOOP.COM 
    #注意:在生成keytab文件时需要加参数”-norandkey”,否则会导致直接使用kinit test@HADOOP.COM初始化时会提示密码错误。

    Kerberos 命令

    本节列出了 Kerberos 产品中包含的部分命令。

    表 27-2 Kerberos 命令

    命令
    说明
    /usr/bin/ftp
    文件传输协议程序
    /usr/bin/kdestroy
    销毁 Kerberos 票证
    /usr/bin/kinit
    获取并缓存 Kerberos 票证授予票证
    /usr/bin/klist
    显示当前的 Kerberos 票证
    /usr/bin/kpasswd
    更改 Kerberos 口令
    /usr/bin/ktutil
    管理 Kerberos 密钥表文件
    /usr/bin/rcp
    远程文件复制程序
    /usr/bin/rdist
    远程文件分发程序
    /usr/bin/rlogin
    远程登录程序
    /usr/bin/rsh
    远程 Shell 程序
    /usr/bin/telnet
    基于 Kerberos 的 telnet 程序
    /usr/lib/krb5/kprop
    Kerberos 数据库传播程序
    /usr/sbin/gkadmin
    Kerberos 数据库管理 GUI 程序,用于管理主体和策略
    /usr/sbin/gsscred
    管理 gsscred 表项
    /usr/sbin/kadmin
    远程 Kerberos 数据库管理程序(运行时需要进行 Kerberos 验证),用于管理主体、策略和密钥表文件
    /usr/sbin/kadmin.local
    本地 Kerberos 数据库管理程序(运行时无需进行 Kerberos 验证,并且必须在主 KDC 上运行),用于管理主体、策略和密钥表文件
    /usr/sbin/kclient
    Kerberos 客户机安装脚本,有无安装配置文件皆可使用
    /usr/sbin/kdb5_ldap_util
    为 Kerberos 数据库创建 LDAP 容器
    /usr/sbin/kdb5_util
    创建 Kerberos 数据库和存储文件
    /usr/sbin/kgcmgr
    配置 Kerberos 主 KDC 和从 KDC
    /usr/sbin/kproplog
    列出更新日志中更新项的摘要
     
     
     
     
     

     
     
     
  • 相关阅读:
    python爬虫之破解javascript-obfuscator的混淆加密
    python反爬之前端加密技术
    轻松截获 Selenium 中的 Ajax 数据
    macos安装selenium+浏览器驱动
    爬虫神器,对ajax加载的数据进行hook截取,无视带有加密参数的接口
    macos 配置apache,mysql,php,nginx环境
    对WX公众号文章的爬取分析
    对app的反爬测试之apk逆向分析-frida绕过ssl pinning检测
    macos 安装frida的坑
    简易OA漫谈之工作流设计(四,怎么支持会签)
  • 原文地址:https://www.cnblogs.com/panpanwelcome/p/14201333.html
Copyright © 2020-2023  润新知