Toon posts:

[centOS 5.2] httpd permissions

Pagina: 1
Acties:

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Ik huur al een tijdje een VPS met CentOS om een webapplicatie te hosten, en dat gaat erg goed. Nu heb ik op mijn eigen PC vmware geinstalleerd en daarop CentOS (32bit), zodat ik een servertje heb waar ik een beetje mee kan prutsen voordat ik het echt online zet. Echter mijn applicaties deden het geen van alle op mijn eigen server.

In de error log van httpd (apache) staan steeds 'permission denied' errors. Het lijkt erop alsof de httpd standaard met lagere privileges wordt gerunned. Hoe komt het dat op het ene systeem de httpd standaard wel root heeft, en het andere niet? Ik heb al geprobeerd de dir's waarin hij moet schrijven 777 permissions te geven, maar ik krijg nog steeds permission denied errors. Hoe kan ik dit het beste aanpassen zodat mijn applicaties weer werken?

Acties:
  • 0 Henk 'm!

Verwijderd

Laten we wedden >:) De problemen die je nu hebt komen waarschijnlijk omdat je SELinux hebt draaien ;)

Met het commando: # sestatus

Zie je waarschijnlijk zoiets:

code:
1
2
3
4
5
6
SELinux status:                 enabled
SELinuxfs mount:                /selinux
Current mode:                   enforcing
Mode from config file:          enforcing
Policy version:                 21
Policy from config file:        targeted


En in je /var/log/syslog of /var/log/messages van dit soort meldingen (let even niet op die Postfix meldingen dit is maar een voorbeeld):

code:
1
2
3
4
type=AVC msg=audit(1218128130.653:334): avc:  denied  { connectto } for  pid=9111 comm="smtpd" path="/var/spool/postfix/postgrey/socket"
scontext=system_u:system_r:postfix_smtpd_t:s0 tcontext=system_u:system_r:initrc_t:s0 tclass=unix_stream_socket
type=AVC msg=audit(1218128130.653:334): avc:  denied  { write } for  pid=9111 comm="smtpd" name="socket" dev=sda6 ino=39977017
scontext=system_u:system_r:postfix_smtpd_t:s0 tcontext=system_u:object_r:postfix_spool_t:s0 tclass=sock_file


Een oplossing is of SELinux uitzetten of de SELinux policies aanpassen. Met dat laatste wens ik je veel succes >:)

[ Voor 5% gewijzigd door Verwijderd op 06-02-2009 22:34 ]


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
hehe weddenschap gewonnen :P Thanks very much dude, ik ben blij dat ik het even gevraagd heb. Was al bijna van plan in mn apache config enzo te gaan rommelen om de privileges op te schroeven.

Acties:
  • 0 Henk 'm!

  • riddles
  • Registratie: April 2000
  • Laatst online: 26-05 15:33
Nou is het natuurlijk de bedoeling om niet selinux uit te gaan zetten, maar er via aanpassingen voor te zorgen dat je website met selinux werkt. Als je een website aan internet hangt, lijkt gebruik van selinux me een verstandige zet ;)

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Wat voor extra veiligheid voegt selinux toe aan een goede firewall en automatisch updaten van packages? Is dat in de sfeer van stel dat er een root exploit komt voor apache/php oid, dat ik daarmee voorkom dat de hele bak gehacked wordt?

[ Voor 57% gewijzigd door Verwijderd op 07-02-2009 20:42 ]


Acties:
  • 0 Henk 'm!

  • riddles
  • Registratie: April 2000
  • Laatst online: 26-05 15:33
Wikipedia: Mandatory access control

In het kort, je voorkomt dat iemand zo maar allerlei code op je systeem kan uitvoeren. Bij bijvoorbeeld een bug in php/apache of je php applicatie, zou het voor iemand mogelijk zijn om onder de apache user allerlei zaken op je systeem uit te voeren. Met selinux geef je de httpd maar een beperkte set rechten, waardoor iemand die jouw php applicatie hackt, niet direct alle systeemtoegang krijgt.

Acties:
  • 0 Henk 'm!

Verwijderd

Theoretisch zijn systemen als SELinux prachtig. Nu de praktijk >:)

In de praktijk zet 99% van de Linux/Unix systeembeheerders SELinux uit omdat het een niet of nauwelijks te beheren c.q. te bevatten security framework is. Wat dat betreft zit Apparmor een stuk eenvoudiger in elkaar ;)
Pagina: 1