增加离线登录的票证生命时间

时间:2017-07-11 10:50:40

标签: linux authentication active-directory kerberos samba

我使用Mint发行版18.1。 我将笔记本电脑配置为加入Windows 2008R2服务器上的AD域。

这里是我的配置:

的/etc/krb5.conf

Process process = new ProcessBuilder("c:\\Program Files (x86)\\Internet Explorer\\iexplore.exe", file.toURI().toURL().toExternalForm()).start();
process.waitFor();

的/etc/samba/smb.conf

[libdefaults]
    default_realm     =     ACMEAD.COM
    clockskew     =     300
    ticket_lifetime    =    60d
    forwardable     =       true
    proxiable       =       true
    dns_lookup_realm =      true
    dns_lookup_kdc  =       true
    krb4_config = /etc/krb.conf
    krb4_realms = /etc/krb.realms
    kdc_timesync = 1

  [realms]
   PRIMEURAD.COM = {
    kdc     =     AD.ACME.COM:88
    admin_server = AD.ACME.COM:749
     default_domain = ACMEAD.COM
    ticket_lifetime    =    60d

    }

   [domain_realm]
    .kerberos.server = ACMEAD.COM
.acmead.com = ACMEAD.COM
acmead.com = ACMEAD.COM
acmead    = ACMEAD.COM
ticket_lifetime    =    60d

[appdefaults]
  pam = {
     ticket_lifetime     = 60d
     renew_lifetime         = 60d
     forwardable         = true
     proxiable         = false
     retain_after_close     = false
     minimum_uid         = 0
     debug             = false
 }

 [logging]
    default         = FILE:/var/log/krb5libs.log
    kdc             = FILE:/var/log/kdc.log
    admin_server            = FILE:/var/log/kadmind.log
 [login]
    krb4_convert = true
    krb4_get_tickets = false

/etc/security/pam_winbind.conf

[global]
workgroup = primeurad
realm = primeurad.com
netbios name = lap-pc-1976
security = ADS
dns forwarder = 172.16.0.3
idmap config * : backend = tdb
idmap config *:range = 50000-1000000

template homedir = /home/%D/%U
template shell = /bin/bash

winbind use default domain = true
winbind offline logon = yes
winbind nss info = rfc2307
winbind enum users = yes
winbind enum groups = yes
winbind separator = +
winbind cache time = 300
winbind refresh tickets = yes

vfs objects = acl_xattr
map acl inherit = Yes
store dos attributes = Yes
preferred master = no
dns proxy = no
wins server = ad.primeur.com
wins proxy = no
inherit acls = Yes
acl group control = yes

load printers = no
debug level = 3
use sendfile = no

我能够登录并验证自己的身份。我将我的PC添加到域中没有问题。当我离线时,我也可以登录,这是我最想要的。 我试图将票证有效期延长到60天,现在如果我输入 klist ,这就是我所看到的

[global]
  debug = no
  debug_state = no
  try_first_pass = yes
  krb5_auth = yes
  krb5_ccache_type = FILE
  cached_login = yes
  silent = no
# mkhomedir = yes

在我看来,默认值为10小时而不是60天。 我怎样才能增加它?

1 个答案:

答案 0 :(得分:2)

此处优先使用Active Directory域默认值。

最佳做法是让Kerberos服务票证的最长生命周期保持默认值为10小时。在各种技术指南和Active Directory组策略中,您将看到该值写为600分钟,即10小时,但显示为600分钟。我从来不知道为什么他们这样做。如果要更改该值,则必须打开Active Directory域组策略管理控制台工具(GPMC.msc)并编辑"默认域策略"组策略对象。打开GPO后,导航到以下路径,并将600分钟更改为等效的60天,即86400.

计算机配置\ Windows设置\安全设置\帐户策略\ Kerberos策略\服务票证的最长生命周期

参考:Maximum lifetime for service ticket

请注意,更改此设置会考虑安全风险,因为它会为潜在的黑客提供更多时间来潜在地解密服务票证并自行使用。只是google"银票攻击"。这就是为什么将10小时设置为默认值的原因。它也是使用Kerberos的所有主要Identity Management实施的默认设置,而不仅仅是Active Directory。它被认为是安全性和可用性之间的权衡。你还问过#34;我看到我还要增加kerberos校长,但不知道该怎么做"。那是什么意思?你是说"服务主要名称"?或机票授予票?还是用户帐号?你是什​​么意思"增加它?"如果您打算增加其他Kerberos票证生命周期,例如票证授予票证,AKA"用户票证",那么您也可以在上述GPO的相同区域中修改它们。在该GPO中,票证授予票证(TGT)被写为"用户票证"。它具有10小时的相同寿命。下面的屏幕截图来自我的实验室,以默认值显示所有内容:

enter image description here

EDIT / UPDATE: 要允许在未连接到网络的情况下离线登录到已加入AD域的Windows PC,或者在域控制器不可用的情况下,您将必须允许所谓的"缓存凭据&#34 ;。这允许PC重新使用服务票据而不会被提示去获取新的服务票证。您可以在一台机器上为一台机器执行此操作,也可以通过GPO在域范围内执行此操作。两种方法描述如下:

For a single machine, just edit the Registry

For a domain-wide method, use a GPO

上述注意事项:在加入AD的Linux OS上,此设置将被忽略,因为Linux上没有注册表。简而言之,您不能允许缓存(离线)登录到Linux笔记本电脑的AD域 - 这是仅限Windows操作系统的功能。