在 Slackware 15(Samba 版本 4.15.10)上,我想做 smbclient,使用 gssapi/kerberos 身份验证。当然,kerberos 客户端缓存是在登录时设置的,我可以在 tmp 目录中看到文件缓存。Pam 配置为使用 pam_krb5 进行密码会话和身份验证
如果我使用新的 --use-kerberos.. 询问密码!
smbclient -U pino --use-kerberos=required \\\\myhost\\Pub
Password for [MYDOM\pino]:
如果我删除 -U pino,我会执行 sudo su - Pino 或使用 Pino 登录,同样的事情。
如果我使用已弃用的 -k..works
smbclient -U pino -k \\\\myhost\\Pub
Password for [MYDOM\pino]:
WARNING: The option -k|--kerberos is deprecated!
Try "help" to get a list of possible commands.
smb: \>
如何使用 kerberos.. without -k 进入?
编辑:可能是一个错误..或我的错误配置,但使用 smbclient -U pino \\myhost\Pub
询问密码..我按回车并使用kerberos!
案例1:有票,要求通行证..我按回车并使用kerberos
smbclient \\\\myhost\\Pub
Password for [[email protected]]:
Try "help" to get a list of possible commands.
smb: \>
案例 2:kdestroy,身份验证失败(并且是合乎逻辑的,好的,正确的)
kdestroy
smbclient \\\\myhost\\Pub
Password for [[email protected]]:
gensec_spnego_client_negTokenInit_step: Could not find a suitable mechtype in NEG_TOKEN_INIT
session setup failed: NT_STATUS_INVALID_PARAMETER
现在的问题是..为什么仍然要求输入密码?
edit2:选项 -N 解决所有问题
我在这里处于劣势,因为在我用于测试的机器上,我运行的是
smbclient
(4.9.5-Debian) 的早期版本。但是,根据samba.org 上的手册页,似乎独立的首选替代品-k
是表明您希望如何使用 Kerberos :所以,我希望你应该使用一个有点像这样的场景,
请注意,如果我使用旧形式的
smbclient
命令,则不会提示输入密码:与您的情况的这种差异向我表明您的
kinit
失败或票已过期。与其依赖文件的存在,不如/tmp
运行klist
以确认您的票证的有效性:找到解决方案。
需要使用 kerberos(由于用户 roaima,也可以在 smb.conf 中设置永久)。并且 -N 不要求通过。
也适用于“旧”语法