[PHP] hosting panel fail2ban & selinux issues

Pagina: 1
Acties:
  • 449 views

Vraag


Acties:
  • 0 Henk 'm!

  • DJMaze
  • Registratie: Juni 2002
  • Niet online
Mijn vraag
Ik ben bezig met het ontwikkelen van een simpel opensource hosting panel in PHP ter vervanging van Plesk, cPanel en DirectAdmin.
Waarom? Omdat die panels niet doen wat ik wil.
Het systeem is nog in ontwikkeling en niet optimaal beveiligd, en daarvoor wil ik fail2ban uitbreiden en SELinux op 'enforce' kunnen draaien (staat nu op 'permissive').

Hiervoor parse ik de logs in PHP en voer commando's uit zoals
code:
1
2
3
4
setsebool -P httpd_enable_homedirs 1
setsebool -P httpd_enable_cgi 0
setsebool -P httpd_unified 1
setsebool -P httpd_read_user_content 1


Echter loop ik met mijn beperkte SELinux kennis hier vast:
code:
1
2
3
4
5
type=AVC msg=audit(1594117565.267:6992110): avc:  denied  { write } for  pid=18263 comm="php-fpm" path="/home/username/public_html/wp-content/temp-write-test-5f044dbd418d40-63918170" dev="vda1" ino=795466 scontext=system_u:system_r:httpd_t:s0 tcontext=system_u:object_r:httpd_user_content_t:s0 tclass=file permissive=1
    Was caused by:
        Missing type enforcement (TE) allow rule.

        You can use audit2allow to generate a loadable module to allow this access.
pad
code:
1
2
3
/home                  drwxr-xr-x root root   system_u:object_r:home_root_t:s0
/home/user             drwx--x--x user user   unconfined_u:object_r:user_home_dir_t:s0
/home/user/public_html drwxr-x--- user apache unconfined_u:object_r:httpd_user_content_t:s0

Moet ik php-fpm en apache herstarten of mis ik een setup voor php-fpm?
PHP-FPM draait voor elke user zijn eigen pool (geen eigen service).

En fail2ban lijkt niet te werken op mijn jail/filters
code:
1
2
3
4
5
6
7
[INCLUDES]
before = common.conf
[Definition]
_daemon = whmpanel-php
failregex = auth failed: user=.* ip=<HOST>$
ignoreregex =
journalmatch = _SYSTEMD_UNIT=whmpanel-php.service SYSLOG_FACILITY=10

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
[whmpanel]
filter  = whmpanel
port    = 2083
backend = systemd
maxretry = 3

[whmpanel-nohome]
filter  = apache-nohome
port    = http,https
logpath = /home/whmpanel/logs/*_error.log
maxretry = 1

[whmpanel-noscript]
filter  = apache-noscript
port    = http,https
logpath = /home/whmpanel/logs/*_error.log
maxretry = 1


Relevante software en hardware die ik gebruik
CentOS 8
scm.dragonflycms.org/whmpanel/

Wat ik al gevonden of geprobeerd heb
Veel google/duckduckgo laat resultaten zien voor CentOS 6 en 7, maar die zijn niet relevant omdat RedHat de setup strenger/strikter heeft gemaakt.
Ik kom er dus niet uit.

Iemand suggesties?

edit:
kan dit naar 'Non-Windows Operating Systems'?

[ Voor 5% gewijzigd door DJMaze op 08-07-2020 08:27 ]

Maak je niet druk, dat doet de compressor maar

Alle reacties


Acties:
  • 0 Henk 'm!

  • Creepy
  • Registratie: Juni 2001
  • Laatst online: 15:36

Creepy

Tactical Espionage Splatterer

Volgens mij heb je hier niet een programmeer probleem te pakken, maar eerder iets dat in de NOS hoek thuishoort omdat je vraag over SELinux en fail2ban gaat. Dat zie je ondertussen zelf ook. Verplaatsen lijkt me op dit moment echter niet handig omdat je twee verschillende vragen hebt. Het lijkt me beter om ze op te splitsen en in NOS dan nieuwe topics te openen. En dat is dan ook de reden dat ik deze sluit ipv verplaats.

Ik denk dat het ook wel goed is om dan meer info toe te voegen. Met je fail2ban probleem geef je nu alleen de regels die je nu hebt en dat het niet werkt, maar wat je nu al hebt geprobeerd e.d., dat zien we nergens terug. Hetzelfde met je vraag over fpm. Je kan zelf even een herstart uitproberen voordat je dat vraagt ;)

[ Voor 27% gewijzigd door Creepy op 08-07-2020 09:06 ]

"I had a problem, I solved it with regular expressions. Now I have two problems". That's shows a lack of appreciation for regular expressions: "I know have _star_ problems" --Kevlin Henney


Dit topic is gesloten.