Примечание
# samba-tool dns zonecreate dc1 0.168.192.in-addr.arpa -Uadministrator
Password for [TEST\administrator]:
Zone 0.168.192.in-addr.arpa created successfully
где dc1 — имя контроллера домена.
# samba-tool dns add dc1 0.168.192.in-addr.arpa 150 PTR web.test.alt
#samba-tool user add --random-password webauth
#samba-tool user setexpiry webauth
#samba-tool spn add HTTP/web.test.alt webauth
# samba-tool domain exportkeytab /tmp/httpd.keytab --principal=HTTP/web.test.alt@TEST.ALT
Export one principal to /tmp/httpd.keytab
/etc/httpd2/conf/
, установить права на него, так чтобы Apache мог читать, но не изменять keytab-файл:
#chown root:apache /etc/httpd2/conf/httpd.keytab
#chmod 640 /etc/httpd2/conf/httpd.keytab
#apt-get install apache2-mod_auth_gssapi
#a2enmod auth_gssapi
#a2enmod authn_core
#a2enmod authz_user
#service httpd2 condreload
<Location "/login.html"> AuthType GSSAPI AuthName "GSSAPI Login" #GssapiBasicAuth On GssapiCredStore keytab:/etc/httpd2/conf/httpd.keytab GssapiAllowedMech krb5 Require valid-user </Location>
# systemctl restart httpd2
$Попытаться прочитать содержимое сайта, используя аутентификацию Kerberos:kinit ivanov
Password for ivanov@TEST.ALT: $klist
Ticket cache: KEYRING:persistent:500:krb_ccache_5VitJSL Default principal: ivanov@TEST.ALT Valid starting Expires Service principal 28.04.2023 15:54:41 29.04.2023 01:54:41 krbtgt/TEST.ALT@TEST.ALT renew until 05.05.2023 15:54:38
$ curl --negotiate -u : http://web.test.alt/login.html
<html><body><h1>It works!</h1></body></html>
Получено содержимое страницы.
$Попытаться прочитать содержимое сайта, используя аутентификацию Kerberos:kdestroy
$klist
$ curl --negotiate -u : http://web.test.alt/login.html
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
<title>Authentication required!</title>
</head>
<body>
<h1>Authentication required!</h1>
…
<h2>Error 401</h2>
<address>
<a href="/">web.test.alt</a><br />
<span>Apache/2.4.57 (Unix) mod_auth_gssapi/1.6.3 OpenSSL/1.1.1u</span>
</address>
</body>
</html>
Содержимое страницы не доступно.