Pagina 1 di 2

Problema nell'esecuzione di post-conf su RHEL 8.8

Pubblicato: 18 novembre 2024 - 14:30
dalla silice
Buongiorno,

Sto seguendo la documentazione qui sotto: https://www.wapt.fr/fr/doc-2.5/wapt-ser ... ehm-installa

E ho riscontrato un problema durante l'esecuzione della post-installazione su RHEL 8.8:

Codice: Seleziona tutto

[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
Tuttavia, quando eseguo manualmente il comando problematico, ottengo quanto segue:

Codice: Seleziona tutto

[user@srvwapt ~]$ sudo -iu postgres psql -t -c 'SHOW server_version;'
 10.23
Potresti illuminarmi?

Grazie in anticipo

Re: Problema nell'esecuzione di post-conf su RHEL 8.8

Pubblicato: 19 novembre 2024 - 13:45
di sfontenau
Ciao,

non ne sono certo, ma credo che questo problema si verifichi a volte quando si usa `sudo` all'interno di un altro comando `sudo`.

Prova ad avviare `postconf` direttamente come root senza privilegi di sudo.

Re: Problema nell'esecuzione di post-conf su RHEL 8.8

Pubblicato: 19 novembre 2024 - 14:38
dalla silice
Buongiorno,

Grazie per la risposta, non ci avevo pensato.

Purtroppo ho lo stesso problema quando avvio la post-configurazione direttamente come root senza sudo :( :

Codice: Seleziona tutto

[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 nell'esecuzione di post-conf su RHEL 8.8

Pubblicato: 19 novembre 2024 - 15:05
di sfontenau
Nel tuo caso, è il comando:

Codice: Seleziona tutto

sudo -iu postgres psql -t -c 'SHOW server_version;'
Nel tuo caso non funziona. Puoi avviarlo manualmente?

Re: Problema nell'esecuzione di post-conf su RHEL 8.8

Pubblicato: 19 novembre 2024 - 15:19
dalla silice
In modo efficace.

Come affermato nel mio post iniziale, quando lo avvio manualmente (come utente), restituisce:

Codice: Seleziona tutto

[user@srvwapt /]$ sudo -iu postgres psql -t -c 'SHOW server_version;'
 10.23
Ma anche l'approccio post-conferenza non funziona.

Ho appena provato come root (ma lasciando "sudo" come nello script):

Codice: Seleziona tutto

[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


Questo test mi porta a provare ad avviare la post-configurazione come utente senza sudo (dato che nello script sono presenti comandi sudo) e ottengo un errore diverso:

Codice: Seleziona tutto

[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 nell'esecuzione di post-conf su RHEL 8.8

Pubblicato: 19 novembre 2024 - 15:31
di dcardon
Ciao Kevin,

dal tuo primo messaggio sembra che tu abbia una configurazione SELinux molto restrittiva. Hai un profilo SELinux pubblico in modo che possiamo applicarlo e vedere come gestire questo scenario?

Per quanto riguarda il tuo ultimo problema, puoi aggiungere `sudo` prima di `setsebool`; questo serve proprio ad aggiungere una configurazione SELinux tra il servizio waptserver e il server nginx.

Cordiali saluti,

Denis

Re: Problema nell'esecuzione di post-conf su RHEL 8.8

Pubblicato: 19 novembre 2024 - 16:29
dalla silice
Utilizzo RHEL 8.8 con una post-installazione imposta dal reparto sicurezza della mia organizzazione. È possibile che ci siano configurazioni piuttosto restrittive.

Le mie competenze in SELinux sono limitate; è questo il risultato del comando? settimana delle esportazioni A chi sei interessato?

Per quanto riguarda il tuo ultimo suggerimento, ho aggiunto `sudo` prima dei due comandi `setsebool` in postconf.py

Codice: Seleziona tutto

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)
Ma il risultato non è migliore :(

Codice: Seleziona tutto

[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 nell'esecuzione di post-conf su RHEL 8.8

Pubblicato: 19 novembre 2024 - 17:46
di dcardon
Ciao Kevin,

sembra che il tuo utente non abbia i permessi necessari per riavviare il servizio systemd. Puoi anche aggiungere `sudo` prima.

Denis

Re: Problema nell'esecuzione di post-conf su RHEL 8.8

Pubblicato: 20 novembre 2024 - 12:29
dalla silice
Buongiorno,

Ho aggiunto un sudo davanti a tutti i comandi systemctl.

Stiamo facendo progressi, ma ora sono bloccato a questo passaggio... il mio utente non ha accesso in scrittura al file di configurazione di PostgreSQL:

Codice: Seleziona tutto

[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 nell'esecuzione di post-conf su RHEL 8.8

Pubblicato: 27 novembre 2024 - 12:24
dalla silice
Salve,

avete qualche suggerimento su come risolvere questa situazione?

Dovrei contattare l'assistenza clienti di Wapt?

Cordiali saluti