Problème à l'exécution de la post-conf sur RHEL 8.8

Question about WAPT Server / Requêtes et aides autour du serveur Wapt
Règles du forum
Règles du forum communautaire
* English support on www.reddit.com/r/wapt
* Le support communautaire en français se fait sur ce forum
* Merci de préfixer le titre du topic par [RESOLU] s'il est résolu.
* Merci de ne pas modifier un topic qui est taggé [RESOLU]. Ouvrez un nouveau topic en référençant l'ancien
* Préciser version de WAPT installée, version complète ET numéro de build (2.2.1.11957 / 2.2.2.12337 / etc.) AINSI QUE l'édition Enterprise / Discovery
* Les versions 1.8.2 et antérieures ne sont plus maintenues. Les seules questions acceptées vis à vis de la version 1.8.2 sont liés à la mise à jour vers une version supportée (2.1, 2.2, etc.)
* Préciser OS du serveur (Linux / Windows) et version (Debian Buster/Bullseye - CentOS 7 - Windows Server 2012/2016/2019)
* Préciser OS de la machine d'administration/création des paquets et de la machine avec l'agent qui pose problème le cas échéant (Windows 7 / 10 / 11 / Debian 11 / etc.)
* Eviter de poser plusieurs questions lors de l'ouverture de topic, sinon il risque d'être ignorer. Si plusieurs sujet, ouvrir plusieurs topic, et de préférence les uns après les autres et pas tous en même temps (ie ne pas spammer le forum).
* Inclure directement les morceaux de code, les captures d'écran et autres images directement dans le post. Les liens vers les pastebin, les bitly et autres sites tierces seront systématiquement supprimés.
* Comme tout forum communautaire, le support est fait bénévolement par les membres. Si vous avez besoin d'un support commercial, vous pouvez contacter le service commercial Tranquil IT au 02.40.97.57.55
silica
Messages : 13
Enregistré le : 18 nov. 2024 - 11:02

18 nov. 2024 - 14:30

Bonjour,

Je suis la documentation suivante : https://www.wapt.fr/fr/doc-2.5/wapt-ser ... er-install

Et je rencontre un problème à l'exécution de la post-installation sur RHEL 8.8 :

Code : Tout sélectionner

[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
Quand j'exécute manuellement la commande qui pose problème, j'obtiens pourtant :

Code : Tout sélectionner

[user@srvwapt ~]$ sudo -iu postgres psql -t -c 'SHOW server_version;'
 10.23
Pourriez-vous m'éclairer ?

En vous remerciant par avance
Avatar du membre
sfonteneau
Expert WAPT
Messages : 2084
Enregistré le : 10 juil. 2014 - 23:52
Contact :

19 nov. 2024 - 13:45

Bonjour

Je ne suis pas certain mais je crois que ce problème se présente parfois quand on fait un sudo dans un sudo

Essayer de lancer le postconf sans sudo en root directement ?
silica
Messages : 13
Enregistré le : 18 nov. 2024 - 11:02

19 nov. 2024 - 14:38

Bonjour,

Merci pour votre réponse, je n'y avais pas pensé.

Malheureusement, j'ai le même problème en lançant la post-conf directement en root sans sudo :( :

Code : Tout sélectionner

[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
Avatar du membre
sfonteneau
Expert WAPT
Messages : 2084
Enregistré le : 10 juil. 2014 - 23:52
Contact :

19 nov. 2024 - 15:05

Dans votre cas c'est la commande :

Code : Tout sélectionner

sudo -iu postgres psql -t -c 'SHOW server_version;'
Qui ne fonctionne pas dans votre cas. Vous pouvez la lancer manuellement ?
silica
Messages : 13
Enregistré le : 18 nov. 2024 - 11:02

19 nov. 2024 - 15:19

Effectivement.

Comme indiqué dans mon poste initial, quand je la lance manuellement (en user), elle retourne :

Code : Tout sélectionner

[user@srvwapt /]$ sudo -iu postgres psql -t -c 'SHOW server_version;'
 10.23
Mais la post-conf ne fonctionne pas pour autant.

Je viens d'essayer en root (mais en laissant "sudo", comme quand le script) :

Code : Tout sélectionner

[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


Ce test m'amène a essayer de lancer la post-conf en utilisateur sans sudo (vu qu'il y a des sudo dans le script), et j'obtiens une erreur différente :

Code : Tout sélectionner

[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.
Avatar du membre
dcardon
Expert WAPT
Messages : 1717
Enregistré le : 18 juin 2014 - 09:58
Localisation : Saint Sébastien sur Loire
Contact :

19 nov. 2024 - 15:31

Bonjour Kévin,

dans vos premier message, il semble que vous ayez une configuration selinux super serrée. Est ce que avez le profile selinux en public pour qu'on puisse l'appliquer pour voir comment gérer ce cas de figure?

Par rapport à votre dernier problème, vous pouvez rajouter un sudo devant setsebool , c'est justement pour rajouter un peu de conf selinux entre le service waptserver et le serveur nginx.

Cordialement,

Denis
Denis Cardon - Tranquil IT
Communiquez autour de vous sur WAPT! Envoyez nous vos url de blog et d'articles dans la catégorie votre avis du forum, nous les mettrons en avant sur le site WAPT
silica
Messages : 13
Enregistré le : 18 nov. 2024 - 11:02

19 nov. 2024 - 16:29

J'utilise une RHEL 8.8 avec une post-installation imposée par le département sécurité de mon organisation. Il est possible qu'il y ait des conf assez restrictives.

Mes compétences SElinux sont limitées, est-ce le résultat de la commande semanage export qui vous intéresse ?

Concerant votre dernier conseil, j'ai ajouté un sudo devant les 2 commandes setsebool dans le postconf.py

Code : Tout sélectionner

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)
Mais le résultat n'est pas mieux :(

Code : Tout sélectionner

[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.
Avatar du membre
dcardon
Expert WAPT
Messages : 1717
Enregistré le : 18 juin 2014 - 09:58
Localisation : Saint Sébastien sur Loire
Contact :

19 nov. 2024 - 17:46

Bonjour Kévin,

il semble que votre utilisateur n'a pas les délégations sur la relance de service systemd. Vous pouvez aussi rajouter un sudo devant.

Denis
Denis Cardon - Tranquil IT
Communiquez autour de vous sur WAPT! Envoyez nous vos url de blog et d'articles dans la catégorie votre avis du forum, nous les mettrons en avant sur le site WAPT
silica
Messages : 13
Enregistré le : 18 nov. 2024 - 11:02

20 nov. 2024 - 12:29

Bonjour,

J'ai ajouté un sudo devant toutes les commandes systemctl.

On avance mais je suis maintenant bloqué à cette étape.. mon utilisateur n'a pas le droit d'ouvrir le fichier de conf postgre en écriture :

Code : Tout sélectionner

[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'
silica
Messages : 13
Enregistré le : 18 nov. 2024 - 11:02

27 nov. 2024 - 12:24

Bonjour,

Avez-vous une idée pour débloquer la situation ?

Dois-je faire appel au Support Wapt ?

Cordialement
Répondre