Página 1 de 2
Problema al ejecutar post-conf en RHEL 8.8
Publicado: 18 de noviembre de 2024 - 14:30
por sílice
Buen día,
Estoy siguiendo la documentación a continuación:
https://www.wapt.fr/fr/doc-2.5/wapt-ser...er-instalar
Y estoy encontrando un problema al ejecutar la postinstalación en RHEL 8.8:
Código: Seleccionar todo
[user@srvwapt ~]$ sudo /opt/wapt/waptserver/scripts/postconf.sh --cspn-toe
Waptserver
Version: 2.5.5.15697-20422a0b
Traceback (most recent call last):
File "/opt/wapt/waptserver/scripts/postconf.py", line 1316, in <module>
main()
File "/opt/wapt/waptserver/scripts/postconf.py", line 885, in main
ensure_postgresql_db(db_name=server_config['db_name'], db_owner=server_config['db_name'], db_password=server_config['db_password'])
File "/opt/wapt/waptserver/scripts/postconf.py", line 592, in ensure_postgresql_db
migrate_db_if_needed()
File "/opt/wapt/waptserver/scripts/postconf.py", line 514, in migrate_db_if_needed
if get_current_running_postgresql_version() < Version('10'):
File "/opt/wapt/waptserver/scripts/postconf.py", line 71, in get_current_running_postgresql_version
version = run("sudo -iu postgres psql -t -c 'SHOW server_version;'").split('(',1)[0].strip()
File "/opt/wapt/waptutils.py", line 2177, in run
raise CalledProcessErrorOutput(proc.returncode, cmd, ''.join(output))
waptutils.CalledProcessErrorOutput: Command b"sudo -iu postgres psql -t -c 'SHOW server_version;'" returned non-zero exit status 126.
Output:/etc/profile: line 31: /usr/bin/id: Permission denied
/etc/profile.d/colorgrep.sh: /usr/libexec/grepconf.sh: /bin/sh: bad interpreter: Permission denied
/etc/profile.d/colorxzgrep.sh: /usr/libexec/grepconf.sh: /bin/sh: bad interpreter: Permission denied
/etc/profile.d/colorzgrep.sh: /usr/libexec/grepconf.sh: /bin/sh: bad interpreter: Permission denied ┌────────────────────────────┐
/etc/profile.d/lang.sh: line 11: /usr/bin/sed: Permission denied │ SELinux correctly │
/etc/profile.d/which2.sh: line 4: /bin/readlink: Permission denied │ configured for Nginx │
/etc/profile.d/which2.sh: line 4: /bin/basename: Permission denied │ reverse proxy │
/etc/profile: line 31: /usr/bin/id: Permission denied │ │
/etc/profile.d/colorgrep.sh: /usr/libexec/grepconf.sh: /bin/sh: bad interpreter: Permission denied │ │
/etc/profile.d/colorxzgrep.sh: /usr/libexec/grepconf.sh: /bin/sh: bad interpreter: Permission denied ├────────────────────────────┤
/etc/profile.d/colorzgrep.sh: /usr/libexec/grepconf.sh: /bin/sh: bad interpreter: Permission denied │ < OK > │
/etc/profile.d/lang.sh: line 11: /usr/bin/sed: Permission denied └────────────────────────────┘
/etc/profile.d/which2.sh: line 4: /bin/readlink: Permission denied
/etc/profile.d/which2.sh: line 4: /bin/basename: Permission denied
-bash: /bin/psql: Permission denied
Sin embargo, cuando ejecuto manualmente el comando problemático, obtengo lo siguiente:
Código: Seleccionar todo
[user@srvwapt ~]$ sudo -iu postgres psql -t -c 'SHOW server_version;'
10.23
¿Podrías iluminarme?
Gracias de antemano
Re: Problema al ejecutar post-conf en RHEL 8.8
Publicado: 19 de noviembre de 2024 - 13:45
por sfonteneau
Hola,
no estoy seguro, pero creo que este problema a veces ocurre al usar `sudo` dentro de otro comando `sudo`. ¿
Has probado a ejecutar `postconf` directamente como root sin privilegios de sudo?
Re: Problema al ejecutar post-conf en RHEL 8.8
Publicado: 19 de noviembre de 2024 - 14:38
por sílice
Buen día,
Gracias por tu respuesta, no había pensado en eso.
Lamentablemente, tengo el mismo problema al iniciar la configuración posterior directamente como root sin sudo

:
Código: Seleccionar todo
[root@srvwapt /]# /opt/wapt/waptserver/scripts/postconf.sh --cspn-toe
Waptserver
Version: 2.5.5.15697-20422a0b
Traceback (most recent call last):
File "/opt/wapt/waptserver/scripts/postconf.py", line 1316, in <module>
main()
File "/opt/wapt/waptserver/scripts/postconf.py", line 885, in main
ensure_postgresql_db(db_name=server_config['db_name'], db_owner=server_config['db_name'], db_password=server_config['db_password'])
File "/opt/wapt/waptserver/scripts/postconf.py", line 592, in ensure_postgresql_db
migrate_db_if_needed()
File "/opt/wapt/waptserver/scripts/postconf.py", line 514, in migrate_db_if_needed
if get_current_running_postgresql_version() < Version('10'):
File "/opt/wapt/waptserver/scripts/postconf.py", line 71, in get_current_running_postgresql_version
version = run("sudo -iu postgres psql -t -c 'SHOW server_version;'").split('(',1)[0].strip()
File "/opt/wapt/waptutils.py", line 2177, in run
raise CalledProcessErrorOutput(proc.returncode, cmd, ''.join(output))
waptutils.CalledProcessErrorOutput: Command b"sudo -iu postgres psql -t -c 'SHOW server_version;'" returned non-zero exit status 126.
Output:/etc/profile: line 31: /usr/bin/id: Permission denied
/etc/profile.d/colorgrep.sh: /usr/libexec/grepconf.sh: /bin/sh: bad interpreter: Permission denied
/etc/profile.d/colorxzgrep.sh: /usr/libexec/grepconf.sh: /bin/sh: bad interpreter: Permission denied
/etc/profile.d/colorzgrep.sh: /usr/libexec/grepconf.sh: /bin/sh: bad interpreter: Permission denied
/etc/profile.d/lang.sh: line 11: /usr/bin/sed: Permission denied
/etc/profile.d/which2.sh: line 4: /bin/readlink: Permission denied
/etc/profile.d/which2.sh: line 4: /bin/basename: Permission denied
/etc/profile: line 31: /usr/bin/id: Permission denied
/etc/profile.d/colorgrep.sh: /usr/libexec/grepconf.sh: /bin/sh: bad interpreter: Permission denied
/etc/profile.d/colorxzgrep.sh: /usr/libexec/grepconf.sh: /bin/sh: bad interpreter: Permission denied
/etc/profile.d/colorzgrep.sh: /usr/libexec/grepconf.sh: /bin/sh: bad interpreter: Permission denied
/etc/profile.d/lang.sh: line 11: /usr/bin/sed: Permission denied
/etc/profile.d/which2.sh: line 4: /bin/readlink: Permission denied
/etc/profile.d/which2.sh: line 4: /bin/basename: Permission denied
-bash: /bin/psql: Permission denied
Re: Problema al ejecutar post-conf en RHEL 8.8
Publicado: 19 de noviembre de 2024 - 15:05
por sfonteneau
En tu caso es el comando:
Eso no funciona en tu caso. ¿Puedes iniciarlo manualmente?
Re: Problema al ejecutar post-conf en RHEL 8.8
Publicado: 19 de noviembre de 2024 - 15:19
por sílice
Eficazmente.
Como indiqué en mi publicación inicial, cuando lo ejecuto manualmente (como usuario), devuelve:
Código: Seleccionar todo
[user@srvwapt /]$ sudo -iu postgres psql -t -c 'SHOW server_version;'
10.23
Pero el enfoque posterior a la conferencia tampoco funciona.
Acabo de probarlo como root (pero dejando "sudo" como en el script):
Código: Seleccionar todo
[root@srvwapt /]# sudo -iu postgres psql -t -c 'SHOW server_version;'
/etc/profile: line 31: /usr/bin/id: Permission denied
/etc/profile.d/colorgrep.sh: /usr/libexec/grepconf.sh: /bin/sh: bad interpreter: Permission denied
/etc/profile.d/colorls.sh: line 26: /usr/bin/tty: Permission denied
/etc/profile.d/colorxzgrep.sh: /usr/libexec/grepconf.sh: /bin/sh: bad interpreter: Permission denied
/etc/profile.d/colorzgrep.sh: /usr/libexec/grepconf.sh: /bin/sh: bad interpreter: Permission denied
/etc/profile.d/lang.sh: line 11: /usr/bin/sed: Permission denied
/etc/profile.d/which2.sh: line 4: /bin/readlink: Permission denied
/etc/profile.d/which2.sh: line 4: /bin/basename: Permission denied
/etc/profile: line 31: /usr/bin/id: Permission denied
/etc/profile.d/colorgrep.sh: /usr/libexec/grepconf.sh: /bin/sh: bad interpreter: Permission denied
/etc/profile.d/colorls.sh: line 26: /usr/bin/tty: Permission denied
/etc/profile.d/colorxzgrep.sh: /usr/libexec/grepconf.sh: /bin/sh: bad interpreter: Permission denied
/etc/profile.d/colorzgrep.sh: /usr/libexec/grepconf.sh: /bin/sh: bad interpreter: Permission denied
/etc/profile.d/lang.sh: line 11: /usr/bin/sed: Permission denied
/etc/profile.d/which2.sh: line 4: /bin/readlink: Permission denied
/etc/profile.d/which2.sh: line 4: /bin/basename: Permission denied
-bash: /bin/psql: Permission denied
Esta prueba me lleva a intentar iniciar la configuración posterior como un usuario sin sudo (ya que hay comandos sudo en el script), y obtengo un error diferente:
Código: Seleccionar todo
[user@srvwapt /]$ /opt/wapt/waptserver/scripts/postconf.sh --cspn-toe
Waptserver
Version: 2.5.5.15697-20422a0b
Traceback (most recent call last):
File "/opt/wapt/waptserver/scripts/postconf.py", line 1316, in <module>
main()
File "/opt/wapt/waptserver/scripts/postconf.py", line 858, in main
selinux_rules()
File "/opt/wapt/waptserver/scripts/postconf.py", line 126, in selinux_rules
run('setsebool -P httpd_can_network_connect 1')
File "/opt/wapt/waptutils.py", line 2177, in run
raise CalledProcessErrorOutput(proc.returncode, cmd, ''.join(output))
waptutils.CalledProcessErrorOutput: Command b'setsebool -P httpd_can_network_connect 1' returned non-zero exit status 255.
Output:Cannot set persistent booleans, please try as root.
Re: Problema al ejecutar post-conf en RHEL 8.8
Publicado: 19 de noviembre de 2024 - 15:31
por dcardon
Hola Kevin,
en tu primer mensaje parece que tienes una configuración de SELinux muy restrictiva. ¿Tienes un perfil público de SELinux para que podamos aplicarlo y ver cómo solucionar este problema?
Respecto a tu último problema, puedes añadir `sudo` antes de `setsebool`; esto sirve precisamente para añadir alguna configuración de SELinux entre el servicio waptserver y el servidor nginx.
Saludos,
Denis
Re: Problema al ejecutar post-conf en RHEL 8.8
Publicado: 19 de noviembre de 2024 - 16:29
por sílice
Estoy usando RHEL 8.8 con una instalación posterior ordenada por el departamento de seguridad de mi organización. Es posible que existan algunas configuraciones bastante restrictivas.
Mis conocimientos de SELinux son limitados; ¿es esto resultado del comando?
semana de exportación ¿En quién estás interesado?
Respecto a tu última sugerencia, agregué `sudo` antes de los dos comandos `setsebool` en postconf.py
Código: Seleccionar todo
def selinux_rules():
""" SELinux httpd security rules """
run('sudo setsebool -P httpd_can_network_connect 1')
run('sudo setsebool -P httpd_setrlimit on')
for sepath in ('wapt', 'wapt-host', 'waptwua','wads'):
try:
run('semanage fcontext -a -t httpd_sys_content_t "/var/www/html/%s(/.*)?"' % sepath)
except:
pass
run('restorecon -R -v /var/www/html/%s' % sepath)
Pero el resultado no es mejor
Código: Seleccionar todo
[user@srvwapt /]$ /opt/wapt/waptserver/scripts/postconf.sh --cspn-toe
Waptserver
Version: 2.5.5.15697-20422a0b
Traceback (most recent call last):
File "/opt/wapt/waptserver/scripts/postconf.py", line 1316, in <module>
main()
File "/opt/wapt/waptserver/scripts/postconf.py", line 885, in main
ensure_postgresql_db(db_name=server_config['db_name'], db_owner=server_config['db_name'], db_password=server_config['db_password'])
File "/opt/wapt/waptserver/scripts/postconf.py", line 598, in ensure_postgresql_db
run('systemctl start %s' % PGSQL_SVC)
File "/opt/wapt/waptutils.py", line 2177, in run
raise CalledProcessErrorOutput(proc.returncode, cmd, ''.join(output))
waptutils.CalledProcessErrorOutput: Command b'systemctl start postgresql' returned non-zero exit status 1.
Output:Failed to start postgresql.service: Interactive authentication required.
See system logs and 'systemctl status postgresql.service' for details.
Re: Problema al ejecutar post-conf en RHEL 8.8
Publicado: 19 de noviembre de 2024 - 17:46
por dcardon
Hola Kevin,
parece que tu usuario no tiene los permisos necesarios para reiniciar el servicio systemd. También puedes añadir `sudo` antes.
Denis
Re: Problema al ejecutar post-conf en RHEL 8.8
Publicado: 20 de noviembre de 2024 - 12:29 p. m.
por sílice
Buen día,
Agregué un sudo delante de todos los comandos systemctl.
Estamos progresando, pero ahora estoy estancado en este paso... mi usuario no tiene acceso de escritura al archivo de configuración de PostgreSQL:
Código: Seleccionar todo
[user@srvwapt ~]$ /opt/wapt/waptserver/scripts/postconf.sh --cspn-toe
[*] postgresql - we suppose that the db does not exist either (or the installation has been screwed up)
[*] postgresql - creating db wapt
[ ] postgresql jsquery extension is not available. This is not mandatory. Check if a package like postgresql-11-jsquery is available for your distribution
Upgrading DB structure.
[*] postgresql changing max_connections parameter in postgres config file /var/lib/pgsql/data/postgresql.conf
Waptserver
Version: 2.5.5.15697-20422a0b
Traceback (most recent call last):
File "/opt/wapt/waptserver/scripts/postconf.py", line 1316, in <module>
main()
File "/opt/wapt/waptserver/scripts/postconf.py", line 889, in main
configure_max_connections()
File "/opt/wapt/waptserver/scripts/postconf.py", line 716, in configure_max_connections
with open(config_file_path, "r+") as config_file:
PermissionError: [Errno 13] Permission denied: '/var/lib/pgsql/data/postgresql.conf'
Re: Problema al ejecutar post-conf en RHEL 8.8
Publicado: 27 de noviembre de 2024 - 12:24 p. m.
por sílice
Hola,
¿tienen alguna idea sobre cómo resolver esta situación? ¿
Debería contactar con el soporte de Wapt?
Saludos.