я создал keytab файл в домашнем каталоге пользователя $HOME/client.keytab. Файл кэша проверки подлинности находится в папке по умолчанию /tmp/krb5cc_%U (где %U-UID). Теперь у меня есть этот простой systemd unit файл для запуска сервиса и получения ключей аутентификации:
[Unit]
Description=Initializes, caches and renews Kerberos tickets for user
After=default.target
[Service]
Type=oneshot
RemainAfterExit=yes
ExecStartPre=/usr/bin/kdestroy -q -c /tmp/krb5cc_%U
ExecStart=/usr/bin/kinit -V -l 30d -r 365d -k -t %h/client.keytab -c /tmp/krb5cc_%U %i@EXAMPLE.COM
ExecStartPost=/usr/bin/krenew -b -K 60 -k /tmp/krb5cc_%U
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=KerberosTicketing
[Install]
WantedBy=default.target
это работает отлично, и создает и хранит билеты проверки подлинности Kerberos, если After указывает на default.target. Впрочем, почему default.target? Это довольно поздно в процессе загрузки. Я бы предпочел она работала в multi-user.target, так что я могу использовать сгенерированные билеты для монтирования удаленных файловых систем с серверов, которые не принимают публичную/частную аутентификацию.
EDIT: если After ничего, кроме default.target или позже, kinit выдает ошибку kinit: Cannot find KDC for realm "EXAMPLE.COM" while getting initial credentials.
я в основном пытаюсь сделать это:sshfs автоматически монтируется через FSTAB с помощью Kerberos (GSSAPI).
Komp






















