У меня нет достаточного количества представителей, чтобы комментировать ответ Легата, но я хотел бы поделиться, что этот ответ помог нам в другом случае использования:
1.) рассматриваемая учетная запись - это локальная учетная запись службы, на которой выполняется приложение, а не учетная запись конечного пользователя.
2.) Конечные пользователи ssh в качестве самих себя, и sudo /bin/su <user>
стать пользователем и администрировать приложение из-за требования контрольного журнала, что учетная запись службы не может иметь возможность прямого входа в систему.
3.) Учетная запись службы должна иметь допустимую оболочку (а /bin/bash
не /sbin/nologin
), потому что платформа планирования предприятия (агент запускается как root локально) должна иметь возможность, su - <user>
а не su -s /bin/bash <user>
способность полной оболочки, и необходима для удаленного запуска заданий. для больших пакетных операций, охватывающих несколько серверов и баз данных.
Итак ...
passwd -l <user>
Не удовлетворяет ограничениям, потому что аутентификация с открытым ключом обходит PAM и все еще позволяет прямой вход в систему.
usermod -s /sbin/nologin <user>
Не удовлетворяет ограничениям, потому что нарушает планировщик предприятия
usermod --lock --expiredate 1970-01-01 <user>
Это наш победитель. Удаленный вход в систему отключен, но root все еще может su <user>
, как и другие пользователи, sudo
так что планировщик функционирует должным образом, и авторизованные конечные пользователи могут стать целевой учетной записью службы по мере необходимости.
Спасибо за решение!