Stevie Wonder - I Wish (originalversjonen)

Jeg kjører Apache Worker-MPM, PHP 5.3.2 og FCGID.

Apache går bedre enn før, men jeg la merke til at det er en apache-prosess som kjører som root og en andre prosess som kjører som både root og som wwwdata. Resten av prosessene kjører som wwwdata.

Har noen kommet inn i dette ennå, og er det trygt?

  • Hvordan kjører en av apache-prosessene når to brukere roter og wwwdata? Brukeren den kjører under er angitt i hovedkonfigurasjonsfilen. Jeg vil sjekke servertilgangsloggene dine (ikke apaches) sjekke tilgangs- / bruker- / applikasjonsloggene i / var / log og se om du ser noe mistenkelig
  • Ingen av loggene gir noe uvanlig. Jeg aner ikke hvordan det går slik.
  • @Anagio "Hvordan kjører en av apache-prosessene når to brukere roter og wwwdata?"Jeg tror ikke det handler om en prosess som kjører som to forskjellige brukere (som ikke ville fungere), men bare om to prosesser som kjører som forskjellige brukere. Det er normalt.
  • @Bruno I prosesslisten er det mange Apache-prosesser oppført. Det er en hvis bruker er root, og en som bruker er "root, wwwdata" Slik ser det bare ut. Jeg kan ikke huske at jeg noen gang har sett to brukernavn oppført slik.
  • @flink, hvilken kommando bruker du for å liste opp prosessene?

Apache Httpd starter som en prosess som kjøres av root for å kunne lytte til porter <1024 (80 for HTTP og 443 for HTTPS). Vanlige brukere kan ikke gjøre det.

I tillegg er noen konfigurasjonsfiler bare lesbare av root under lanseringsprosessen. For eksempel din Apache-bruker (f.eks. www-data) trenger ikke å kunne lese din private nøkkelfil hvis du har konfigurert SSL.

Det er en god ting å ikke kjøre alt som rot: På denne måten vil en feil eller en kompromittert tjeneste ikke kunne skade systemet så mye som når det kjører som rot.

REDIGERE:

(Jeg antok bare www-data i stedet for wwwdata, men det spiller ingen rolle, den kjører som brukeren du setter den til å kjøre.)

Ingen av loggene gir noe uvanlig. Jeg aner ikke hvordan det går slik.

Den kjører bare på denne måten: den starter en prosess som root og forkaster deretter andre brukere som brukeren du har valgt.

Hvis du får rotprosess-ID (f.eks. Med ps auwx | grep apache2, eller grep httpd avhengig av fordelingen), og kjør deretter pstree -p -u THE_PROCESS_ID, bør du se hierarkiet tydelig. Foreldreprosessen skal alltid kjøre permanent (ellers vil du også drepe barneprosessene).

Se User dokumentasjon (Apache MPM Common Directives):

Hvis du starter serveren som root, er det normalt at foreldreprosessen fortsatt kjører som root.

  • 1 www-datas UID og GID er under 1000, noe som ikke er tillatt av suexec / fcgid, så jeg opprettet en ny bruker, wwwdata med høyere UID og GID for å kjøre alt.
  • Det var god informasjon. Jeg trenger noen seriøse kommandolinjestudier. Takk!

fungert for deg: Charles Robertson | Ønsker du å kontakte oss?