Ограничение на количество попыток входа в систему

Для каждого пользователя допускается от 1 до <login_attempts_count> попыток входа в систему (<login_attempts_count> – параметр из файла /opt/VPNagent/etc/auth_login.ini). Если все попытки входа в систему оказываются неуспешными, для пользователя включается режим длительного ожидания ввода пароля. Неуспешные попытки входа в систему в режиме длительного ожидания возможности ввода пароля в данном файле не фиксируются, но в логе они присутствуют.

 

Создается файл со счетчиком ошибочных попыток входа в систему. В него записывается начальное значение 0.

Если на этом этапе произошла ошибка, выполнение операции прерывается. Выдается сообщение об ошибке:

 % Error: system error (e.g. insufficient disk space)

При создании пользователей с однофакторной аутентификацией создается файл с отметкой времени создания пользователя.

 

При успешном входе в систему количество оставшихся попыток входа в систему возвращается к своему начальному значению (<login_attempts_count>).

Счетчик количества неудачных попыток входа в систему хранится в файле: /var/cspvpn/.auth_login_count_{72216863-F47D-400D-B4DD-E9DB000E8CCE}.<name>, где <name> – имя пользователя.

Формат файла бинарный (Owner – root, Group – root, Mode – 0600). Длина файла – 1 байт. В этом байте в виде числа хранится количество неудачных попыток входа в систему.

Начальное значение – число 0. Файл будет создан при создании пользователя.

Если файл отсутствует, то для пользователя включается режим длительного ожидания возможности ввода пароля.

Если файл имеет неправильный формат (длина отлична от 1), то для пользователя также включается режим длительного ожидания возможности ввода пароля.

Отличить данную ситуацию от предыдущей можно по коду ошибки (см. раздел  «Протоколирование событий», Таблица 2). Также данную ситуацию можно отличить по выводу параметра Status по команде show user: LONG WAIT before login (corrupted data).

 

Администратор может разблокировать пользователя с помощью команды:

unblock user <username>

Пользователь административно разблокируется. Кроме того обнуляется количество неудачных попыток входа в систему данного пользователя.

Можно задавать эту команду для:

·       административно заблокированного пользователя;

·       пользователя, для которого по любой причине включен режим длительного ожидания возможности ввода пароля (пользователь переводится в штатное состояние);

·       штатного пользователя (имеет смысл для обнуления количества неудачных попыток входа в систему).

 

Администратор может принудительно заблокировать пользователя с помощью команды:

block user <username>

Невозможно заблокировать самого себя. В этом случае будет выдано сообщение:

% You can't block current user

По данной команде выставляется специальный статус административной блокировки.