pam_limits.so fazendo problemas para o sudo

0

Eu tenho um problema com meus servidores tomcat rodando no centos 7. tem 7 ao todo, configurados da mesma forma. 4 foram corrigidos recentemente e reiniciados, permanecendo 3 tem uptime de aproximadamente 2 anos.

quando faço:

sudo -u tomcat ls /tmp

Eu recebo um erro nos servidores recém-corrigidos, informando:

sudo: pam_open_session: Permission denied
sudo: policy plugin failed session initialization

nos servidores não corrigidos eu consigo executar o comando.

/etc/security/limits são idênticos:

tomcat soft nofile 5000000
tomcat hard nofile 5000000
tomcat soft nproc  5000000
tomcat hard nproc  5000000

Eu posso contornar o erro comentando:

/etc/pam.d/sudo:

session    required     pam_limits.so

Eu não entendi?

Estou procurando nos lugares certos?

strace de ambos parecem:

Falha:

strace -e setrlimit sudo -u tomcat ls /tmp
setrlimit(RLIMIT_NPROC, {rlim_cur=RLIM64_INFINITY, rlim_max=RLIM64_INFINITY}) = 0
setrlimit(RLIMIT_NPROC, {rlim_cur=1031015, rlim_max=1031015}) = 0
setrlimit(RLIMIT_NPROC, {rlim_cur=5000000, rlim_max=5000000}) = 0
setrlimit(RLIMIT_NOFILE, {rlim_cur=5000000, rlim_max=5000000}) = -1 EPERM (Operation not permitted)
sudo: pam_open_session: Permission denied
sudo: policy plugin failed session initialization
+++ exited with 1 +++"

trabalhando:

strace -e setrlimit sudo -u tomcat ls /tmp
setrlimit(RLIMIT_NPROC, {rlim_cur=5000000, rlim_max=5000000}) = 0
setrlimit(RLIMIT_NOFILE, {rlim_cur=5000000, rlim_max=5000000}) = -1 EPERM (Operation not permitted)
setrlimit(RLIMIT_NPROC, {rlim_cur=RLIM64_INFINITY, rlim_max=RLIM64_INFINITY}) = 0
hs_err_pid13726.log  hsperfdata_cron  hsperfdata_tokor  hsperfdata_tomcat  systemd-private-U8GAP7
--- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=28963, si_status=0, si_utime=0, si_stime=0} ---
+++ exited with 0 +++

pam versão no trabalho é: pam-1.1.8-12.el7_1.1.x86_64

e no não funcionamento: pam-1.1.8-18.el7.x86_64

    
por MSchultz 19.03.2018 / 11:40

1 resposta

1

Este é um bug no módulo pam_limits , fazendo com que a autenticação falhe. Eu acho que afeta somente o RHEL / Centos 7. Ele afeta usuários sudo que têm uma configuração nofiles ilimitada ou muito alta (maior que fs.nr_open = 1024x1024 = 1024576).

Suas opções são:

  • Remova pam_limits de suas regras do sudo PAM
  • Defina o nofiles para o usuário de destino (tomcat) como algo menor que fs.nr_open
  • Aumentar a configuração do kernel fs.nr_open (em /etc/sysctl.conf ) para ser maior que o seu ulimit
  • Aguarde uma correção?
por 16.05.2018 / 01:40

Tags