Kerberos Server и логи
Я пытаюсь настроить сервер Kerberos и столкнулся с какой-то проблемой с сообщением о конфигурации. К сожалению, демон отказывается говорить мне, что пошло не так; он говорит мне "увидеть файл журнала", но никогда не упоминает, какой файл журнала.
# service krb5-kdc start
krb5kdc: cannot initialize realm EXAMPLE.COM - see log file for details
# ls /var/log/k*
/var/log/kern.log
# krb5kdc
krb5kdc: cannot initialize realm EXAMPLE.COM - see log file for details
# strace krb5kdc 2>&1 | grep write
write(2, "krb5kdc: cannot initialize realm"..., 72krb5kdc: cannot initialize realm EXAMPLE.COM - see log file for details
#
Это врет мне? Существует ли вообще файл журнала?
2 ответа
/var/log/auth.log
, Я бы никогда не посмотрел туда.
Вот как я нашел это:
- Заметил, что был
sendto
в выводе strace, который начинался с даты / времени, как в журнале. Изолированные это:
# strace krb5kdc -n 2>&1 | grep sendto sendto(3, "<35>Feb 13 17:43:41 krb5kdc[2400"..., 115, MSG_NOSIGNAL, NULL, 0) = 115
Поиск звонка
socket
, чтобы увидеть, куда это идет.# strace krb5kdc -n 2>&1 | grep 'socket\|connect' socket(PF_FILE, SOCK_DGRAM|SOCK_CLOEXEC, 0) = 3 connect(3, {sa_family=AF_FILE, path="/dev/log"}, 110) = 0
Выяснить, где
/dev/log
идет, но я вычисляю системный регистратор на этом этапе:# netstat -xp | grep /dev/log unix 5 [ ] DGRAM 7731 671/rsyslogd /dev/log
На самом деле не говорит мне, где, но возвращаясь к оригиналу
strace
мы можем спроситьstrace
не обрезать строку:# strace -s 1000 krb5kdc -n 2>&1 | grep sendto sendto(3, "<35>Feb 13 17:47:05 krb5kdc[24194]: LDAP bind dn value missing - while initializing database for realm EXAMPLE.COM", 115, MSG_NOSIGNAL, NULL, 0) = 115
rsyslog
вероятно, входит где-то в/var/log
и теперь у меня есть сообщение журнала. Простоgrep
для этого:# cd /var/log && grep -R * -e 'LDAP bind dn' «tons of hits in auth.log»
Ведение журнала для KDC обычно настраивается в /etc/krb5kdc/kdc.conf
(иногда /var/lib/krb5kdc/…
) или глобальный /etc/krb5.conf
, (Это не имеет значения, какой.) Оба krb5.conf
а также kdc.conf
есть справочные страницы.
[logging]
kdc = SYSLOG
# kdc = STDERR
Мое первое предположение состоит в том, что вы еще не создали область, используя kdb5_util create
,