hoi,
- ik heb een linux scriptje gemaakt op onze remote webserver dat een mysql-dump maakt van een database en deze vervolgens - tezamen met een map met allemaal jpg/gif/png images - zipt.
- ik roep dit linux-scriptje (backup.sh) aan vanuit php, als volgt (snippet):
- het php-script zelf kan alleen uitgevoerd worden als je bent ingelogd (dus mbv sessie).
- de php-sessie loopt over http, dus niet https, waardoor mogelijk 'afgeluisterd' kan worden met welke gegevens iemand inlogt.
- het linux-scriptje (backup.sh) zelf - waarin het mysqldump commando wordt gebruikt - bevat login-gegevens van de database (om de dump te mogen maken).
vragen: behalve dat de "http-login" en de "download-zip-bestand" zwakke plekken zijn, waar moet ik nog meer op letten mbt security? het script backup.sh staat in de hoofdmap van de user root. ik heb eens gelezen dat het onverstandig om als root acties uit te voeren. maar hoe zit dat dan met php: als welke user benadert php de webserver?
ik moet erbij zeggen dat ik weinig van linux weet maar graag wil leren. maar zie door de bomen het bos niet echt.
update: zou het een stuk veiliger worden als ik in php check vanaf welk ip het php-script wordt uitgevoerd en vervolgens al dan niet het linux-script uitvoerd? of kunnen slimme mensen ook dit weer omzeilen?
- ik heb een linux scriptje gemaakt op onze remote webserver dat een mysql-dump maakt van een database en deze vervolgens - tezamen met een map met allemaal jpg/gif/png images - zipt.
- ik roep dit linux-scriptje (backup.sh) aan vanuit php, als volgt (snippet):
code:
1
2
3
4
5
6
7
| $filename = "europe_" . date("Ymd", time());
$output = `bash /backup.sh $filename`;
header ("Content-type: application/force-download");
header ("Content-Disposition: attachment; filename=$filename.zip");
readfile("../backups/$filename.zip");
exit (); |
- het php-script zelf kan alleen uitgevoerd worden als je bent ingelogd (dus mbv sessie).
- de php-sessie loopt over http, dus niet https, waardoor mogelijk 'afgeluisterd' kan worden met welke gegevens iemand inlogt.
- het linux-scriptje (backup.sh) zelf - waarin het mysqldump commando wordt gebruikt - bevat login-gegevens van de database (om de dump te mogen maken).
vragen: behalve dat de "http-login" en de "download-zip-bestand" zwakke plekken zijn, waar moet ik nog meer op letten mbt security? het script backup.sh staat in de hoofdmap van de user root. ik heb eens gelezen dat het onverstandig om als root acties uit te voeren. maar hoe zit dat dan met php: als welke user benadert php de webserver?
ik moet erbij zeggen dat ik weinig van linux weet maar graag wil leren. maar zie door de bomen het bos niet echt.
update: zou het een stuk veiliger worden als ik in php check vanaf welk ip het php-script wordt uitgevoerd en vervolgens al dan niet het linux-script uitvoerd? of kunnen slimme mensen ook dit weer omzeilen?
[ Voor 15% gewijzigd door js303 op 11-10-2004 11:33 ]