login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Htaccess IP toestaan, anders wachtwoord

Offline Dark_Paul - 07/11/2006 12:59
Avatar van Dark_PaulPHP ver gevorderde Hej,

Ik wil mijn PHPMyAdmin beveiligen, voordat 't van buitenaf bereikbaar is. Ik had gedacht om een .htaccess in de map PHPMyAdmin te zetten. In die .htaccess accepteer ik dan verbindingen van mijn lokale IP, en bij verbindingen van andere ip's moet er een een wachtwoord worden gevraagd (via .htpasswd).
Met
order deny,allow
deny from all

allow from 127.0.0.1
allow from 1.1.1.1
kan ik IP's blokkeren en toelaten. Maar hoe moet ik mijn .htaccess maken, als ik mijn .htpasswd wil gebruiken bij IP's die geen 127.0.0.1 zijn?

12 antwoorden

Gesponsorde links
Offline Thomas - 07/11/2006 13:47
Avatar van Thomas Moderator Gewoon IP's toevoegen met allow from <IP>?
Offline Dark_Paul - 07/11/2006 14:57
Avatar van Dark_Paul PHP ver gevorderde Dat zou kunnen, maar dat is niet wat ik wil. Als ik dan bijvoorbeeld het school-ip toevoeg, kan de hele school er zomaar inkomen.
Ik wil het maken dat de gehele map beveiligd is met een .htacces en .htpasswd, maar dat er niet om een inlog wordt gevraagd als ik met het ip 127.0.0.1 verbinding probeer te maken (local).
Offline Thomas - 07/11/2006 15:18
Avatar van Thomas Moderator Naast .htaccess username/password instelling in config.inc.php?
Offline Dark_Paul - 07/11/2006 17:04 (laatste wijziging 07/11/2006 17:39)
Avatar van Dark_Paul PHP ver gevorderde Okej, dat was gewoon dom. Ik had mijn config.inc.php ingesteld met $cfg['Servers'][$i]['user'] en ['password'] (dus iedereen kon zo binnen).
Nu heb ik mijn config.inc.php zo gemaakt:
  1. <?php
  2. $cfg['blowfish_secret'] = '***'; // use here a value of your choice
  3.  
  4. $i=0;
  5. $i++;
  6. $cfg['Servers'][$i]['auth_type'] = 'cookie';
  7. if ($_SERVER['REMOTE_ADDR'] == '127.0.0.1') {
  8. $cfg['Servers'][$i]['user'] = '***';
  9. $cfg['Servers'][$i]['password'] = '***'; // use here your password
  10. }
  11. ?>

Nu moet 't zo zijn, dat ik vanaf local (127.0.0.1) geen wachtwoord in hoeft te typen. Toch moet ik dat wel..

Ik heb 't opgelost:
  1. <?php
  2. $i=0;
  3. $i++;
  4. if ($_SERVER['REMOTE_ADDR'] == '127.0.0.1') {
  5. $cfg['Servers'][$i]['auth_type'] = 'config';
  6. $cfg['Servers'][$i]['user'] = '***';
  7. $cfg['Servers'][$i]['password'] = '***'; // use here your password
  8. }
  9. else {
  10. $cfg['Servers'][$i]['auth_type'] = 'cookie';
  11. }
  12. ?>

Offline webrik - 07/11/2006 17:26
Avatar van webrik HTML interesse moet je dan niet in de if ook nog de auth_type de conf mee geven?
Offline Ultimatum - 07/11/2006 17:41 (laatste wijziging 07/11/2006 17:44)
Avatar van Ultimatum PHP expert Je kan het ook via dos doen, zo heb ik het namelijk gedaan..

Zal even de tutorial voor je zoeken.

Zie laatste screen hier:
http://www.site...amp;id=334

als je die gewoon doet en dan op de user root, kan je een wachtwoord invullen en dan moet je dat ook doen als je gewoon naar localhost/phpmyadmin oid gaat. Volgens mij had ik niets in die configuratie toegevoegd maar weet niet zeker

tip: back up alles want mij was het pas na 3x proberen gelukt
Offline ikkedikke - 07/11/2006 18:46
Avatar van ikkedikke PHP expert "satisfy any" in je .htaccess, op de site van apache zal wel meer te vinden zijn;-)
Offline Dark_Paul - 07/11/2006 20:21 (laatste wijziging 07/11/2006 20:46)
Avatar van Dark_Paul PHP ver gevorderde @Ultimatum:
Ik had 'm ook geconfigureerd en een wachtwoord opgegeven voor mijn root-user, maar het probleem was dat ik via mijn config.inc.php instant-access gaf (iedereen die de map phpMyAdmin opende werd meteen doorgestuurd met mijn username en password omdat dat zo ingesteld was).
Ik heb 'm nu opgelost, door de auth-type af te laten hangen van het IP (alleen mijn local komt zo binnen, de rest moet inloggen).
@ikkedikke
Die ga ik zeker eens bestuderen, is de moeite waard Zoiets zal ik straks ook nodig gaan hebben om mijn map met cronjobs te beveiligen ('t zou niet zo mooi zijn als iedereen dalijk de cronjobs op kan roepen, ben namelijk bezig met een spel )
't ziet er naar uit dat ik mn map met de cronjobs nog niet beveiligd krijg. Ik voer een geldige username en password in, maar toch kom ik niet binnen.
De .htaccess
AuthUserfile .htpasswd
AuthName Cronjobs
AuthType basic
Allow From 127.0.0.1
Require valid-user
Satisfy Any

Het gaat hier om mijn map met Cronjobs die ik wil beveiligen. In .htpasswd staan de wachtwoorden encrypt zoals in de tut staat (http://www.sitemasters.be/?pagina=tutorials/tutorials&cat=10&id=108)
Offline ikkedikke - 08/11/2006 14:43
Avatar van ikkedikke PHP expert je moet een absoluut pad naar je .htpassw bestand opgeven
Offline Dark_Paul - 08/11/2006 16:19
Avatar van Dark_Paul PHP ver gevorderde Ik heb al verschillende paden geprobeerd, van /tcb/cronjobs/.htpasswd tot C:\apache\www\tcb\cronjobs\.htpasswd, geeneen werkt er..
Offline Thomas - 08/11/2006 16:25
Avatar van Thomas Moderator Echo $_SERVER['DOCUMENT_ROOT'] eens en gebruik die als inspiratiebron voor het opstellen van het juiste absolute pad.
Offline Dark_Paul - 08/11/2006 17:16
Avatar van Dark_Paul PHP ver gevorderde Het werkt, het was niet C: \... maar C:/apache/www/tcb/cronjobs/.htpasswd
Nu nog een encryptie eromheen gooien, want het wachtwoord moet plain-text in het htpasswd-bestand staan. Niet bepaald wat ik wil, als het aan mij ligt md5 en een extra encryptie.
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.2s