FTP védelme PHP-val
Folyamatosan gondot okoz, ez a fránya FTP jelszó lopó honlapvírusosító dolog. Egy általános megoldást csináltam most pár ügyfél oldalára, azóta nincs vírus :)
A dolog lényege, hogy mielőtt FTP kapcsolatot létesítenénk böngészőből meg kell hívni egy sima PHP fileot, ami az aktuális IP címet fehasználva létrehozza a megfelelő .ftpaccess -t ilyen formában:
<Limit ALL> Allow IP_CÍMÜNK DenyAll </Limit>Így csak mi fogunk tudni bejelentkezni FTP-n.
A PHP kód nagyon egyszerű. Bármilyen általunk preferrált authentikációt beépíthetünk én most a a legegyszerűbbett mutatom:
<?
if ( $_POST['pass']=='VALAMIJELSZÓ' ) {
$f = fopen('.ftpaccess','w');
$s = '<Limit ALL>
Allow '.$_SERVER['REMOTE_ADDR'].'
DenyAll
</Limit>';
fwrite($f,$s);
fclose($f);
echo('ok');
}
?>
<form method="post" action="<?=$_SERVER['PHP_SELF']?>">
<input type="text" name="pass" />
<input type="submit" />
</form>
A dolog csak akkor működhet, ha van írási jogunk az .ftpaccess file-ra. A teszteléssel óvatosan! :) amikor tesztelgettem jópárszor kitiltottam magam. Szóval előny, ha máshogyan is hozzáférhetünk a fileokhoz, ha esetleg megtörténne a baj. (pl. plesk, directadmin, ssh (bár akkor minek FTP :) ) )

Hali Barna. Hogy is van ez?
VálaszTörlésCsinálok egy .ftpaccess nevű fájlt és hogyan tovább? Ez hogy működik együtt az ftp-s progikkal? Bocs a hülye kérdésért... :)
Az FTP programoktól ez független. Vagy működik, vagy nem :) Úgy képzeld el, mint az apache-nál a .htaccess fileot, csak FTP-re.
VálaszTörlésegy kis segítség:
http://www.proftpd.org/localsite/Userguide/linked/x1021.html
http://integrity.hu/ftpaccess/
Köszi! :)
VálaszTörlésMa beszélgettünk egy kollégával erről és szó szerint ezt a megoldást ötlötte ki :)
VálaszTörlésSzép húzás amúgy, bomba biztos a férgek ellen.