ActiveDirectory/FileShare
Доменный файловый сервер
Примечание: HOST SPN, например Host/ws1, включает CIFS SPN, поэтому не нужно отдельно создавать CIFS SPN — cifs/ws1.
1. Вводим компьютер в домен, как написано в ActiveDirectory/Login.
2. Создаём SPN на контроллере домена (см. Создание SPN и Keytab файла).
# samba-tool spn add cifs/ws1 petrov
где:
- petrov
- имя доменного пользователя
- cifs
- тип службы
- ws1
- имя хоста
3. Экспортируем в keytab на контроллере домена:
# samba-tool domain exportkeytab ws1.keytab --principal=cifs/ws1
# klist -ke ws1.keytab
Keytab name: FILE:ws1.keytab
KVNO Principal
---- --------------------------------------------------------------------------
2 cifs/ws1@TEST.ALTLINUX (arcfour-hmac)
2 cifs/ws1@TEST.ALTLINUX (des-cbc-md5)
2 cifs/ws1@TEST.ALTLINUX (des-cbc-crc)
4. Передаём ws1.keytab на хост ws1.
5. Включаем ws1.keytab в системный /etc/krb5.keytab на хосте ws1.
5.1 Устанавливаем пакет krb5-kadmin.
5.2 Запускаем ktutil из пакета krb5-kadmin:
# ktutil
ktutil: rkt /etc/krb5.keytab
ktutil: rkt ws1.keytab
ktutil: wkt /etc/krb5.keytab
ktutil: quit
5.3 Проверяем, что службы включены в системный keytab:
# klist -ke /etc/krb5.keytab | grep cifs/
2 cifs/ws1@TEST.ALTLINUX (arcfour-hmac)
2 cifs/ws1@TEST.ALTLINUX (des-cbc-md5)
2 cifs/ws1@TEST.ALTLINUX (des-cbc-crc)
6. Перезапускаем smb:
# service smb restart
7. Проверяем доступность службы с аутентификацией по Kerberos:
Примечание: В настоящее время, в команде smbclient вместо опции -k, необходимо использовать --use-kerberos. Например:
$ smbclient --use-kerberos=required -L ws1
# kinit petrov
Password for petrov@TEST.ALTLINUX:
# klist
Ticket cache: KEYRING:persistent:0:0
Default principal: petrov@TEST.ALTLINUX
Valid starting Expires Service principal
25.09.2017 13:24:33 25.09.2017 23:24:33 krbtgt/TEST.ALTLINUX@TEST.ALTLINUX
renew until 02.10.2017 13:24:27
# smbclient -k -L ws1
OS=[Windows 6.1] Server=[Samba 4.6.7]
Sharename Type Comment
--------- ---- -------
public Disk Public
IPC$ IPC IPC Service (Samba 4.6.7)
Cups-PDF Printer Cups-PDF
petrov Disk Home Directories
OS=[Windows 6.1] Server=[Samba 4.6.7]
Server Comment
--------- -------
Workgroup Master
--------- -------
TEST WS1
# klist
Ticket cache: KEYRING:persistent:0:0
Default principal: petrov@TEST.ALTLINUX
Valid starting Expires Service principal
25.09.2017 13:24:55 25.09.2017 23:24:33 cifs/ws1@TEST.ALTLINUX
renew until 02.10.2017 13:24:27
25.09.2017 13:24:33 25.09.2017 23:24:33 krbtgt/TEST.ALTLINUX@TEST.ALTLINUX
renew until 02.10.2017 13:24:27
# kdestroy
# smbclient -k -L ws1
SPNEGO: Could not find a suitable mechtype in NEG_TOKEN_INIT
session setup failed: NT_STATUS_INTERNAL_ERROR