Magento site afschermen met een .htaccess bestand

Bij een Magento installatie wordt er vaak gebruik gemaakt van het .htaccess bestand om bepaalde zaken af te schermen en bekende Magento lekken te dichten. Het is van belang om deze lekken te dichten om te voorkomen dat hackers jouw site kunnen overnemen en toegang krijgen tot gevoelige data.

Bij het afschermen van een site die online staat, biedt een .htaccess bestand de mogelijkheid om toegang te kunnen beheren op map-niveau. Dit kan op basis van een IP adres of een wachtwoord. In dit artikel wordt er onder andere behandeld hoe het admin panel van Magento afgeschermd kan worden en je kan aangeven welke IP adressen worden toegelaten. Ook gaan we dieper in op hoe bekende lekken gedicht kunnen worden door in een map een .htaccess bestand aan te maken met bepaalde regels erin.

Denk hierbij aan de volgende lekken:

• Magento cacheleak;

• Magento development map;

• Versiebeheerders (bijvoorbeeld .git);

• Magmi.

Hieronder gaan we nader in op deze lekken.

Magento cacheleak, development map en versiebeheerders

Het is van belang om de var, dev, en .git map af te schermen zodat hackers hier geen toegang tot krijgen.

Magento cache bestanden (var)

De var map bevat namelijk onder andere de Magento cache bestanden die gevoelige informatie kunnen bevatten. Denk hier bijvoorbeeld aan database wachtwoorden.

Magento testomgeving (dev)

De dev map bevat een een Magento testomgeving die standaard niet wordt afgeschermd. Magento zelf geeft ook aan dat het niet de bedoeling is dat deze toegankelijk is in productieomgevingen. Wanneer deze map in een productieomgeving publiekelijk benaderbaar is dan kan hier misbruik van gemaakt worden.

Git, subversion en andere versiebeheerders

Dit soort pakketten maken vaak verborgen directory’s aan (bij git bijvoorbeeld de map .git). Deze map bevat vaak gevoelige informatie en hier kan misbruik van gemaakt worden. Wanneer er gebruik gemaakt wordt van git is het aan te raden deze map af te schermen.

De mappen afschermen met htaccess

Om de var, dev en .git mappen af te schermen plaatsen we een .htaccess bestand in deze mappen met daarin de volgende regels:

Order deny,allow

Deny from all

Wanneer het bestand met de bovenstaande regels in de var, dev en .git staan, zijn deze niet publiekelijk te benaderen en kan hier dus ook geen misbruik van gemaakt worden.

Magento Admin panel afschermen met htaccess

Wij raden aan om het Magento Admin panel af te schermen en alleen benaderbaar te maken voor bepaalde IP adressen. Dit regel je door onderstaande regels toe te voegen bovenaan in het .htaccess bestand onder de directory public_html .

RewriteCond %{REQUEST_URI} ^/(index.php/)?beheer [NC,OR]

RewriteCond %{REQUEST_URI} ^/(index.php/)?admin [NC,OR]

RewriteCond %{REQUEST_URI} ^/(index.php/)?adminpanel [NC,OR]

RewriteCond %{REQUEST_URI} ^/downloader/ [NC]

RewriteCond %{REMOTE_ADDR} !^ip-adres

RewriteCond %{REMOTE_ADDR} !^2e-ip-adres

RewriteRule ^(.*)$ https://%{HTTP_HOST}/ [R=302,L]

Wijzig hierin het IP adres en 2e IP adres in het IP adres die je toegang wilt geven en pas eventueel beheer aan naar de naam waarop jouw Magento backend staat, indien deze anders is als /beheer.

Magmi

Magmi (Magento mass importer) is een product import tool die betere performance levert dan de standaard Magento importer. Het is een krachtige maar ook erg gevaarlijke tool omdat een oude versie van Magmi een beveiligingslek bevat. Wij hebben bij meerdere klanten reeds misbruik waargenomen via de Magmi tool door hackers. Door het achterdeurtje in de verouderde Magmi tool kunnen hackers makkelijk toegang krijgen tot gevoelige informatie.

Het is ten sterkste aan te raden om de Magmi map af te schermen met een .htaccess bestand /de Magmi tool te upgraden naar de laatste versie. Door de onderstaande regels in deze map te plaatsen scherm je Magmi af op IP basis.

order deny, allow

deny from all

allow from ip-adres

Wijzig hierin het IP adres in het IP adres die je toegang wilt geven.

De laatste Magmi versie is hier te vinden.

Contact

Mocht je nog vragen hebben naar aanleiding van deze handleiding, neem dan contact met ons op. Dit kan via info@skyberate.nl of 0316-712000

in Magento 1Magento 2
Was dit artikel behulpzaam?