Почему root должен вводить пароль при выполнении определенных команд?

На некоей машине RHEL5, когда root выполняет команды, такие как passwd someuser или любая другая привилегированная команда, пароль root запрашивается для проверки, и команда не может быть выполнена без него.

Пример:

 # id uid=0(root) gid=0(root) groups=0(root),10(wheel) # passwd someuser Password:(need to enter root verification password to proceed) New user password: Retype new password: 
  • пользователь root присутствует в /etc/sudoers как показано ниже:

     root ALL=(ALL) ALL 
  • Все базовые файлы в /etc/pam.d/ такие как login , passwd , password-auth , password-auth-ac , system-auth-ac , system-auth , sudo , sudo-l такие же, как на другой машине что не ведет себя одинаково.

  • SElinux отключен.

  • /etc/nsswitch.conf не изменяется и соответствует другим машинам.

     passwd: files ldap group: files ldap shadow: files ldap hosts: files dns networks: files protocols: files services: files ethers: files rpc: files netgroup: files sudoers: files ldap 
  • Не так много информации видно из файлов журналов, перечисленных ниже при выполнении команды passwd:

    /etc/log/secure – empty (К сожалению, мне не разрешено касаться rsyslog)

    /etc/log/auth.log

     sshd[xxxxx]: Accepted keyboard-interactive/pam for root from 127.0.0.XX port XXXXX ssh2 sshd[xxxxx]: pam_unix(sshd:session): session opened for user root by (uid=0) 
  • То же самое происходит при непосредственном подключении (без ssh) к консоли.

Кто-нибудь испытал подобное поведение?

Или вы можете рекомендовать любой флаг отладки или метод, который может помочь найти причину проблемы?

2 Solutions collect form web for “Почему root должен вводить пароль при выполнении определенных команд?”

Это, скорее всего, связано с вашей настройкой pam. Я не уверен, что это точно так же в RHEL 5, но в RHEL 6 аутентификация по учетной записи успешно выполнена по умолчанию для пользователей с UID <500, потому что /etc/pam.d/system-auth содержит строку:

 account sufficient pam_succeed_if.so uid < 500 quiet 

Как и другие инструменты, связанные с аутентификацией в RHEL, /usr/bin/passwd использует pam и конфигурацию в /etc/pam.d .

Восстановление /etc/pam.d/system-auth путем запуска yum reinstall pam или извлечения /etc/pam.d/system-auth из rpm – это, вероятно, ваша самая безопасная ставка. Существующий файл system-auth не может быть перезаписан, но написан как system-auth.rpmnew .

Во-первых, благодарю вас за вашу помощь.

Проблема была решена после создания новых ключей ssh:

 # ssh-keygen -t rsa 

Я нашел несоответствие между файлами authorized_keys2 и id_rsa.pub и таким образом создал новые ключи. Я, честно говоря, понятия не имел, что это может решить проблему, поскольку я перестала подозревать ssh, так как я заметил, что проблема также происходит и на консольном соединении.

  • Устанавливать пакет локально для лучших пользователей?
  • Что такое эквивалент Linux для C: \ Program Files?
  • Ограничить доступ для пользователя RedHat к одному каталогу
  • chmod + изменить владельца на все файлы под папкой
  • Использование акций Samba без использования Winbind
  • Как сделать сценарии ведения журнала Apache не выполнимыми как root?
  • Установка .NET на RedHat
  • NFS Share Locking рабочие станции в закрытой сети
  • Каковы потенциальные негативы включения учета процессов (пакет psacct)?
  • linux + grub.conf не существует
  • Сценарий Bash и база данных
  • Linux и Unix - лучшая ОС в мире.