probleempje met beveiliging cronjob filles

Status
Niet open voor verdere reacties.

JB'tje

Gebruiker
Lid geworden
31 mei 2004
Berichten
556
hallo weer,

Mijn website heeft een hele tijd goed gewerkt, totdat 2 klasgenoten dachten: "laten we die site eens gaan hacken....".

oftewel, ik heb een groot/klein probleempje met de beveiliging.... alles wat met passwords te maken heeft heb ik al opgelosd, maar ik zit met de cronjobs....

Hoe kan ik mijn cronjob filles (de filles die geactiveerd moeten worden) zodanig beveiligen dat het niet makkelijk word om in te loggen ? maar, dat ze wel geactiveerd kunnen worden door een 'cronjob'.

alvast bedankt voor de hulp,

JB'tje
 
Gaat het hier om PHP of perl scripts?

Je kan ze sowieso het beste uit je HTML webserver root laten, dan kan niemand erbij via het web.
Mocht je ze toch daarbinnen willen houden, omdat ze toch ook op webniveau bereikbaar moeten zijn, dan kan je een .htaccess bestand plaatsen in de map waar die bestanden staan, en dan IP restricties opgeven.

Ook kan je de bestanden alleen lezen rechten geven met CHMOD , en de juiste owner toe kennen, en ook van deze owner gebruik laten maken door de cron.
 
Gaat het hier om PHP of perl scripts?
het gaat hier om een PHP script, 4 stuks....

Je kan ze sowieso het beste uit je HTML webserver root laten, dan kan niemand erbij via het web.
Mocht je ze toch daarbinnen willen houden, omdat ze toch ook op webniveau bereikbaar moeten zijn,
Het leifst zet ik za natuurlijk niet in een map die op de een of andere manier bereikbaar is met internet, maar helaas kan ik niet anders....
dan kan je een .htaccess bestand plaatsen in de map waar die bestanden staan, en dan IP restricties opgeven.
Die fille .htaccess had ik er al staan... die was dus 'gehackd' password was ook niet al te goed !
maar, hoe kan ik IP restricties opgeven?

Ook kan je de bestanden alleen lezen rechten geven met CHMOD , en de juiste owner toe kennen, en ook van deze owner gebruik laten maken door de cron.
ja, zo stonden ze al....maar, als men vervolgens op de ftp server kan komen, dan kun je de filles helaas alsnog kopiëren....

JB'tje :D
 
Je .htaccess bestand ziet er dan zo uit:

<Limit GET POST>
order deny,allow
deny from all

allow from 127.0.0.1
allow from 1.1.1.1

</Limit>


1.1.1.1 verander je uiteraard in het IP Adres wat je wilt toestaan, en je kan zoveel van die regels aanmaken als je wilt.

127.0.0.1 (localhost) heb ik er ook instaan, omdat ik m'n php scripts met de cron via wget laat aanroepen.
Ik had geen tijd om uit te zoeken hoe je php scripts direct vanuit de shell runned, maar zo werkt het ook bij mij.

Uiteraard is een wat sterk wachtwoord voor je FTP en password files wel aan te raden.
 
Ik weet niet precies hoe cronjobs werken maar laat ik er maar van uitgaan dat je gewoon de filename op moet geven (mijn lycos accountje hebben ze uitgezet..)

Je geeft gewoon 'n url als dit op:
cronjob.php?key=sdf89fd8adfhgia8df58g76ayihfdg7a8df58gayf7a9dfyg7f8d8a7yg

En je zet deze code bovenin cronjob.php
PHP:
<?

if(isset($_GET['key']) == FALSE)
{
  die('Ga eens weg kleutertje..');
}

if($_GET['key'] != 'sdf89fd8adfhgia8df58g76ayihfdg7a8df58gayf7a9dfyg7f8d8a7yg')
{
  die('Nu moet je echt kappen');
}

?>

Tenminste, als et zo werkt dan eh :)
 
sorry voor de late reactie...
ik heb eerst alles getest of het werkt, maar, het werkt perfect !!!:D

ik heb helaas nog wel een klein probleempje.... dat met die .htaccess.... het lukt me niet om die 'goed' te krijgen, waar moet ik b.v. het password neerzetten? (anders zou lycos het voor me kunnen doen, maar dat lukt helaas niet)
zou je me willen zeggen hoe ik het pessword en username in de .htacces moet zette, en of het tussen die <Limit></Limit> tags moet. :)

Voor de rest werkt het allemaal.... en in de fille's heb ik de code van masterprut gezet... alleen iets meer tekens ;) heel erg bedankt !!!

JB'tje:thumb:

p.s. uit .htacces tutorials ben ik niet veel weizer geworden :'(
 
hallo weer,

het is me na (eer)gisteren gelukt om de .htaccess fille te maken (iets langer moeten doorzoeken :) )
de beveiliging van de cronjobs kan volgens mij niet beter ;)

maar, ik heb nog een klein probleempje....
als eerst zou ik graag een (java)scriptje willen hebben die dit doet:
ik vul ik een textbox "10" in dan klik ik op een button en ga ik naar de pagina: $pagine.'?rankings&page='. *en dan datgene wat in de textbox staat*
het lukt me niet om dit te maken.... (en, als iemand nog een goede javascripttutorial weet, vertel het me dan :))

nog één probleempje: ik moet in de mysql database zoeken naar een trefwoord... hoe doe ik dat, kan tot nu toe nog nix vinden in php.net.

Gegroet, JB'tje :thumb:
 
Geplaatst door JB'tje
als eerst zou ik graag een (java)scriptje willen hebben die dit doet:
ik vul ik een textbox "10" in dan klik ik op een button en ga ik naar de pagina: $pagine.'?rankings&page='. *en dan datgene wat in de textbox staat*
PHP:
<script type="text/javascript">
<!--
  function doe()
  {
  window.location.href = ('<? echo $_SERVER['PHP_SELF']; ?>?rankings&page=' + document.getElementById('tekstveld').value);
  }
//-->
</script>


<input type="text" id="tekstveld" /> 
<input type="button" value="Klik mij !" onclick="javascript:doe()" />
nog één probleempje: ik moet in de mysql database zoeken naar een trefwoord... hoe doe ik dat, kan tot nu toe nog nix vinden in php.net.
Hint: LIKE :)

Op phpfreakz.nl staat in de artikelen btw ook iets over MATCH ... AGAINST. Wellicht ook niftig om door te nemen.

// Edit: Van 'java script' 'javascript' maken. Parser werkt weer eens tegen.
 
Laatst bewerkt:
hallo weer, (beetje heel erg late reactie, maar ik had helaas nog geen tijd gehad om te reageren :))

21:00 uur (afgelopen vrijdag) mensen gaan zich opeens registreren op mijn site ???????
het blijkt, iemand heeft reclame gemaakt, en ik zit nu met meer dan 70 fanatieke spelers ;)

dus die verwachten dat de site snel klaar is.... (lijkt mij)
maar, toen kreeg ik natuurlijk weer problemen,
@JPeetje, het script dat jij in de post boven mij hebt werkt weer eens perfect, heel erg bedankt dus... (het werkte eerst niet omdat ik die button tussen <form> tags had staan, lekker dom.... :) )

ik zal ook ff kijken bij: LIKE, MATCH, AGAINST. Van like wist ik al (kon 't helaas niet vinden op PHP.net maar die andere 2 heb ik ook veel !!! Thanx....)

ooh, ik had toch nog een vraagje....
ik heb een code nodig voor een .htacces fille die je automatisch doorstuurd naar http://www.battlesoftime.com/maintenance.php
dit zou moeten kunnen met "redirect"(ofzoiets) maar ik krijg het niet aan de praat....

Gegroet, JB'tje
 
Geplaatst door JB'tje
ik zal ook ff kijken bij: LIKE, MATCH, AGAINST. Van like wist ik al (kon 't helaas niet vinden op PHP.net maar die andere 2 heb ik ook veel !!! Thanx....)
Dat is dan ook SQL taal, geen PHP :p
Zie www.mysql.com ;)
ooh, ik had toch nog een vraagje....
ik heb een code nodig voor een .htacces fille die je automatisch doorstuurd naar http://www.battlesoftime.com/maintenance.php
dit zou moeten kunnen met "redirect"(ofzoiets) maar ik krijg het niet aan de praat....
*klik*
 
Dat is dan ook SQL taal, geen PHP
Zie www.mysql.com
oeps.... je hebt geleik....
ik kijk nooit op de mysql site (dommmm) ik denk altijd 'je gebruikt het in php, dan zal het wel php zijn' zonder verder na te denken.. ik zal er zo ff kijken

die .htaccess fille zal nu wel werken..... (ik had het kunnen weten dat je dat soort info op mijnhomepage.nl kunt vinden....) :confused:

verder zit ik met een aardig dom probleem.....
als je naar een willekeurige pagina op mijn site gaat krijg je bovenaan dit te zien: !!! } ?>
vraag me niet wat het is.....
ik ben er achter gekomen dat het ergens in dit stuk script MOET staan.
PHP:
<?PHP
if (!isset($_SESSION['toegang']))
{
  echo '<script language=\'Javascript\'>';
  echo 'document.location=\'?index\'';
  echo '</script>';
  exit();
}
unset($_SESSION['userlogin']);

// een eenvoudige site die de 'website' ophaald.... b.v.  index.php?base , nu moet ie 'base' ophalen
$keuze = array('base', 'armory', 'attack', 'attacklog', 'battlereport', 'blacksmith', 'forgotpass', 'index', 'logout', 'market',
               'messages', 'personalizepass', 'rankings', 'recruit', 'register', 'stats',
			   'tos', 'training', 'write-messages', 'attack-formule', 'configuration', 'upgrade', '');
foreach($keuze AS $site)
{
  if(isset($_GET[$site]) == TRUE)
  {
	break;
  }
}
if(@$site == FALSE OR @$site == 'index')
{
  $site = 'index2';
}

$B_boven_niet = array('index2'=>1, 'tos'=>1, 'register'=>1, 'personalizepass'=>1, 'rankings'=>1);
if(@$site == 'personalizepass')
{
  $blackout = TRUE;
}
?>
maar in deze site staan geen !!! :(

JB'tje alvast heel erg bedankt.... :)
/--------------------------------------------------\
het leven is ZO hart !!!!
ik haal de spaties weg (in die array $keuze) en opeens werkt ALLES weer..... ik vind php nog steeds onvoorstelbaar !!!!
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan