Geo*_*son 5 linux active-directory samba
我正在尝试使用 kickstart 设置一个主机块,并且有两个命令需要输入密码。一个是 kinit,因为它很容易生成一个 keytab 文件并使用 -t 传递它,另一个是当我执行 authconfig 命令时间接调用的网络连接。
有没有办法通过凭证文件或使用密码哈希来提交密码?显然我不想把它作为纯文本传递。
@ewwhite 谢谢你的链接,我去看看。我不确定任何事情,如果 SSSD 让我完成完全相同的事情并且允许无人值守配置,我绝对不反对为此使用 SSSD。我使用 Samba/Winbind 与我对它们的舒适程度有关。你能建议我如何使用 SSSD 做同样的事情,记住我不想手动输入密码吗?
相关kickstart内容:
cat << EOF > /etc/samba/smb.conf
[global]
encrypt passwords = yes
# logs split per machine
log file = /var/log/samba/log.%m
# max 50KB per log file, then rotate
max log size = 50
passdb backend = tdbsam
EOF
chkconfig smb on
chkconfig nmb on
service smb restart
service nmb restart
cat << EOF > /etc/krb5.conf
[logging]
default = FILE:/var/log/krb5libs.log
kdc = FILE:/var/log/krb5kdc.log
admin_server = FILE:/var/log/kadmind.log
[libdefaults]
default_realm = AD.DOMAIN.NET
dns_lookup_realm = true
dns_lookup_kdc = true
allow_weak_crypto = false
ticket_lifetime = 24h
renew_lifetime = 7d
rdns = false
forwardable = true
[realms]
AD.DOMAIN.NET = {
admin_server = dc01.ad.domain.net
default_domain = ad.domain.net
kdc = dc01.ad.domain.net
}
[domain_realm]
.ad.domain.net = AD.DOMAIN.NET
ad.domain.net = AD.DOMAIN.NET
EOF
net time set -S dc01.ad.domain.net
/usr/bin/kinit -k -t addom.keytab Administrator@AD.DOMAIN.NET
authconfig --update \
--kickstart \
--enablewinbind \
--enablewinbindauth \
--smbsecurity=ads \
--smbrealm=AD.DOMAIN.NET \
--winbindjoin=administrator@AD.DOMAIN.NET \
--winbindtemplatehomedir=/home/DOMAIN/%U \
--winbindtemplateshell=/bin/bash \
--enablewinbindusedefaultdomain \
--enablelocauthorize \
--smbservers=dc01.ad.domain.net \
--enablemkhomedir \
--smbidmaprange=100000-200000
Run Code Online (Sandbox Code Playgroud)
事实证明,net 命令有一个使用 kerberos keytab 的选项,只需比以前更好地阅读手册页即可。这对我有用:
在域控制器上
ktpass princ host/test.ad.domain.net@AD.DOMAIN.NET mapuser AD\Administrator -pass * out test.keytab
Run Code Online (Sandbox Code Playgroud)
在执行连接的计算机上
kinit -k -t /tmp/test.keytab
net ads join -k
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5303 次 |
| 最近记录: |