/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
Unix error code: 251
Fra : Schultz Consult - [R~


Dato : 04-06-02 23:39

Jeg køre en php fil som modtager nogle input, men det lader til at når disse
consol komandore blive kørt gennem php scriptet kan den ikke oprette
bibliotekerne...

Er det et rettigheds problem? kan dette evt. løses ved brug af ren shell
scripts?

php scriptet ser således ud:
<?php
$line1 = exec("/home/vpopmail/bin/vadduser $address $pass", $output,
$error);
// noget plader for at se hvad der sker...
while (list(,$line) = each($output)){
echo $line, "<BR>\n";
}
if ($error){
echo "Unix error code: $error<BR>\n";
exit;
}
?>
den bliver kørt fra /var/www/html/test på en RedHat 7.3 og bliver kaldt
sådanher index.php?address=test@testdomain.com&pass=123

Er krydspostet til dk.edb.internet.webdesign.serverside.php og
dk.edb.system.unix

followup dk.edb.internet.webdesign.serverside.php

--
Med venlig hilsen / Best Regards
René Madsen



 
 
Christian Joergensen (05-06-2002)
Kommentar
Fra : Christian Joergensen


Dato : 05-06-02 00:03

On Wed, 05 Jun 2002 00:38:32 +0200, Schultz Consult - [René Madsen] wrote:

> Er det et rettigheds problem? kan dette evt. løses ved brug af ren shell
> scripts?

> php scriptet ser således ud:

> $line1 = exec("/home/vpopmail/bin/vadduser $address $pass", $output,
> $error);

Jeg ville starte med at tjekke hvilken bruger din apache kører som - og
om denne har adgang til at udføre ovenstående handling. Prøv evt. at køre
programmet som denne bruger (hint: su).

Den fejlkode du får bør du kunne slå op i dokumentation til vpopmail.

Oprindelig FUT overruled - FUT: dk.edb.system.unix

--
Christian Jørgensen | The knack of flying is learning how to throw
http://www.razor.dk | yourself at the ground and miss.

[Schultz Consult] - ~ (05-06-2002)
Kommentar
Fra : [Schultz Consult] - ~


Dato : 05-06-02 10:01

"Christian Joergensen" <mail@phpguru.dk> wrote in message
news:pan.2002.06.04.23.02.55.83308.6447@phpguru.dk...
> On Wed, 05 Jun 2002 00:38:32 +0200, Schultz Consult - [René Madsen] wrote:
> Jeg ville starte med at tjekke hvilken bruger din apache kører som - og
> om denne har adgang til at udføre ovenstående handling. Prøv evt. at køre
> programmet som denne bruger (hint: su).
>
> Den fejlkode du får bør du kunne slå op i dokumentation til vpopmail.

Takker.

Jeg lavede den nemme løsning simpelthen at lavde apache køre som vpopmail i
stedet for, serveren kan alligevel ikke kontaktes af andre end 1 interne IP
adresse, så der er ikke noget sikkerheds problem for vores vedkommende.


--
Med venlig hilsen / Best Regards
René Madsen



Rasmus Bøg Hansen (05-06-2002)
Kommentar
Fra : Rasmus Bøg Hansen


Dato : 05-06-02 11:17

[Schultz Consult] - René Madsen wrote:

> "Christian Joergensen" <mail@phpguru.dk> wrote in message
> news:pan.2002.06.04.23.02.55.83308.6447@phpguru.dk...
>> On Wed, 05 Jun 2002 00:38:32 +0200, Schultz Consult - [René Madsen]
>> wrote: Jeg ville starte med at tjekke hvilken bruger din apache kører som
>> - og om denne har adgang til at udføre ovenstående handling. Prøv evt. at
>> køre programmet som denne bruger (hint: su).
>>
>> Den fejlkode du får bør du kunne slå op i dokumentation til vpopmail.
>
> Takker.
>
> Jeg lavede den nemme løsning simpelthen at lavde apache køre som vpopmail
> i stedet for, serveren kan alligevel ikke kontaktes af andre end 1 interne
> IP adresse, så der er ikke noget sikkerheds problem for vores vedkommende.

Ellers kunne man køre den gennem sudo og så kun give rettighed til
apache-brugeren.

/Rasmus

--
-- [ Rasmus "Møffe" Bøg Hansen ] ---------------------------------------
Beware of bugs in the above code;
I have only proved it correct, not tried it.
- Donald Knuth
----------------------------------[ moffe at amagerkollegiet dot dk ] --

Schultz Consult - [R~ (05-06-2002)
Kommentar
Fra : Schultz Consult - [R~


Dato : 05-06-02 21:25

"Rasmus Bøg Hansen" <moffe47@hotmail.com> wrote in message
news:adkoe0$hb$1@carlsberg.amagerkollegiet.dk...

> Ellers kunne man køre den gennem sudo og så kun give rettighed til
> apache-brugeren.

Det er en løsning som jeg vil arbejde med, men da det er under tidspres blev
det den anden løsning.
Jeg kunne ikke lige finde dokumentation omkring sudo hvordan man sætter det
op til at virke sammen med etkald fra apache, jeg blev tilsyneladende nægtet
adgang til /usr/bin/sudo via apache.

Redhat 7.3 køres der på maskinen...

--
Med venlig hilsen / Best Regards
René Madsen --- reneXXZQ@schultzconsult.com remove XXZQ
Schultz Consult --- www.schultzconsult.com/WHP.doc midlertidige priser
Din IT Leverandør --- tlf. 64 73 35 45





Claus Albøge (04-06-2002)
Kommentar
Fra : Claus Albøge


Dato : 04-06-02 23:58

"Schultz Consult - [René Madsen]" <rene@schultzconsult.com> writes:

> Jeg køre en php fil som modtager nogle input, men det lader til at når disse
> consol komandore blive kørt gennem php scriptet kan den ikke oprette
> bibliotekerne...
>
> Er det et rettigheds problem? kan dette evt. løses ved brug af ren shell
> scripts?
>
> php scriptet ser således ud:
> <?php
> $line1 = exec("/home/vpopmail/bin/vadduser $address $pass", $output,
> $error);
> // noget plader for at se hvad der sker...
> while (list(,$line) = each($output)){
> echo $line, "<BR>\n";
> }
> if ($error){
> echo "Unix error code: $error<BR>\n";
> exit;
> }
> ?>
> den bliver kørt fra /var/www/html/test på en RedHat 7.3 og bliver kaldt
> sådanher index.php?address=test@testdomain.com&pass=123
>
> Er krydspostet til dk.edb.internet.webdesign.serverside.php og
> dk.edb.system.unix
>
> followup dk.edb.internet.webdesign.serverside.php

Problemet ligger sikkert i, at den bruger din webserver kører som, ikke
har adgang til at oprette emailkonti med vadduser. Det er normalt kun
vpopmail brugeren og root, der kan det.

Du kan evt. løse det ved at give webserverbrugeren sudo rettigheder til
at køre vadduser. Tag et kig på man-siden til sudo. Alternativt kan du
smidde de indtastede data (fra .phpscriptet) i en database, og lade et
cronjob om at foretage den endelige oprettelse ved at køre vadduser på
de data, der er i databasen.


/Claus A

Søg
Reklame
Statistik
Spørgsmål : 177520
Tips : 31968
Nyheder : 719565
Indlæg : 6408661
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste