Pull to refresh

Проблема с доступом и интересный ключ реестра Windows

Reading time3 min
Views36K
Цель данной статьи — рассказать об интересном ключе реестра Windows:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\LSA\CrashOnAuditFail

Пару лет назад он подарил мне несколько часов напряженного траблшутинга проблем доступа к общим папкам и, так как ни тогда, ни сейчас я не вижу объяснения этой проблемы в поиске, я решил его описать. Если вам интересно, как может получиться, что права доступа у вас и вашего коллеги есть, но получить доступ к общей папке может только один из вас, то добро пожаловать под кат.

Ситуация была очень простой и не обещала ничего любопытного — мы только начали переход на WIndows Server 2012 R2 и поставили новый сервер под File Server и Pull Print решение от стороннего интегратора. Проблемы начались после того, как, через несколько дней, этот сервер упал в BSOD. Пользователи начали жаловаться, что они не могут получить доступ к общим папкам и печатать на принтерные очереди опубликованные с этого сервера. В стек серверной команды инцидент пришёл с довольно непонятной историей — кто-то из агентов Service Desk, проверявших инцидент подтверждал, что у него тоже нет доступа к общими папкам, кто-то говорил, что доступ есть. Аналогичная ситуация наблюдалась и с принтерными очередями. У меня прекрасно работал доступ и к тому и к другому.

Здесь нужно отметить, что так как Pull Print решение было от сторонней компании, то по договорённости с заказчиком, мы поддерживали сам сервер, а при любых проблемах с ним, интегратор рекомендовал ребилд (там действительно была очень простая процедура и, вкупе с автоматизированной установкой сервера, восстановление получалось очень быстрым, а так как роль эту делили несколько серверов, то и вывести один из них на ребилд было легко). Поэтому, поразмышляв минут 10-15 о том, почему может так странно работать сервер после BSOD, я его переустановил. После ребилда все, естественно, заработало, однако вскоре сервер снова упал в BSOD и проблема проявилась снова.

Теперь уже стало понятно, что ребилдом не отделаешься и нужно понять почему так происходит. Тесты показали, что у всех в нашей команде доступ есть, а вот у пользователей нет. Гипотеза появилась сразу и, проверив ее для тех агентов Service Desk, мы убедились — к общим папкам могут получить доступ только те, кто имеет права локального админа. Поискав похожие проблемы (ограниченный доступ к общим ресурсам) в интернете я ничего не нашёл. А вот поискав с боллее общими параметрами я нашёл этот любопытный ключ реестра:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\LSA\CrashOnAuditFail

Здесь можно почитать о нём. Этот ключ, установленный в значение «1» переводит ограничивает доступ к системе в случае переполнения Security Event Log. То есть, если у вас переполнился лог и сервер упал, то ключ получает значение «2», изменить которое администратор должен вручную, а до этого никого кроме администратора на сервер не пустит.

Теперь всё стало ясно. В наших предыдущих билдах этот ключ не использовался и имел значение «0». А в новом безопасники решили выставить его в «1». Кроме того, настройки Security Log на этих серверах, после установки приложения предполагали ручную очистку событий. Ну, а дальше, всё понятно — лог переполняется, сервер падает в BSOD, поднимается и пускает только админов. Всё как положено при использовании этого ключа. Вся сложность с поиском источника проблемы была только с тем, что мы подошли к ней с неожиданной стороны — жалобы доступ к общей папке и принтерной очереди.

Я не знал о существовании этого ключа до того, как столкнулся с этой проблемой, но почитав о нём подробнее, выяснил, что он может послужить причиной самых разных проблем. Надеюсь изложенная информация поможет кому-то сэкономить время, при попадании в такую ситуацию.
Tags:
Hubs:
Total votes 51: ↑48 and ↓3+45
Comments28

Articles