Per a què serveix l'arxiu .htaccess?
L'arxiu de text permet a l'autor de pàgines web establir les propietats seleccionades del servidor. A més, no necessita accés complet d'administrador i només afecta el comportament del servidor per al directori i subdirectori seleccionat al servidor. WordPress bàsicament el fa servir per establir el comportament de les URL generades perquè siguin compatibles amb els motors de cerca.
On puc trobar l'arxiu .htaccess?
L'arxiu es troba a la carpeta arrel (root) del seu allotjament web. Simplement entri per FTP amb l'ajuda del client FTP seleccionat i hauria de veure l'arxiu.
De vegades, no es pot veure l'arxiu després d'iniciar sessió en un client FTP. En aquest cas, n'hi ha prou a forçar la visualització d'arxius ocults en la configuració del programa (habitualment Total Commander, WinSCP o FileZilla).
Si encara no veu l'arxiu, el pot pujar manualment al servidor, o simplement faci clic a "Configuració"> "Enllaços permanents" en la configuració de WordPress per canviar la configuració a una altra que no sigui bàsica i guardar. Ara ja hauria de veure l'arxiu al servidor. A continuació, pot canviar de nou els ajustos.
Com editar .htaccess?
Per editar l'arxiu, pot usar qualsevol editor de text des del Bloc de notes a l'editor de desenvolupament PSPad. Abans d'editar l'arxiu, faci una còpia de seguretat de l'arxiu en el seu PC per poder restablir la configuració en cas de problemes.
1. Bloquejar l'administració per evitar hostes no convidats
Pot fer servir l'arxiu .htaccess per administrar el seu lloc web per adreça IP. Podrà connectar-se a l'administració del lloc web només des d'adreces IP i ubicacions específiques. Aquest mètode és útil quan es connecta regularment des d'un PC o diversos PC amb una adreça IP estàtica. Pot fer servir aquest el codi i copiar-lo en l'arxiu .htaccess:
AuthUserFile /dev/null
AuthGroupFile /dev/null
AuthName "WordPress Admin Access Control"
AuthType Basic
<LIMIT GET>
order deny,allow
deny from all
# Enabled IP address 1:
allow from xx.xx.xx.xxx
# Enabled IP address 2:
allow from xx.xx.xx.xxx
</LIMIT>
Recordi reemplaçar l'adreça IP permesa per la seva. Hi pot haver tantes adreces permeses com vulgui.
2. Protegir l'administració amb una altra contrasenya
Si es connecta a WordPress des de diferents llocs i no vol estar limitat per una adreça IP específica, es pot utilitzar la contrasenya de seguretat. Primer generi un arxiu .htpasswds usant un generador en línia i després carregui'l en una carpeta que no sigui públicament accessible. L'ideal seria:
/home/user/.htpasswds/public_html/wp-admin/passwd/
Ara pot accedir a l'arxiu .htaccess, en el qual ha de copiar les següents línies de codi:
AuthName "Admins Only"
AuthUserFile /home/yourdirectory/.htpasswds/public_html/wp-admin/passwd
AuthGroupFile /dev/null
AuthType basic
require user putyourusernamehere
<Files admin-ajax.php>
Order allow,deny
Allow from all
Satisfy any
</Files>
Asseguri's de reemplaçar la ruta de l'arxiu com "AuthUserFile" per la ruta que correspon a la seva estructura d'allotjament web..
3. Deshabilitar carpetes de navegació
Per evitar que els atacants vegin quins arxius estan en el seu allotjament web, pot desactivar l'exhibició pública de carpetes. Aquest pas és recomanat per la majoria dels experts en seguretat.
Per activar, simplement afegeix aquesta única línia a l'arxiu .htaccess:
Options -Indexes
4. Deshabilitar l'execució d'arxius PHP en carpetes seleccionades de WordPress
Sovint, els atacants intenten entrar en el sistema de gestió de continguts utilitzant l'anomenat backdoor (backgates). Sovint, aquest és un arxiu que portarà a l'atacant a colar-se en el seu allotjament web perquè després pugui a executar comandaments addicionals i controlar el seu lloc web.
Una de les solucions preventives és inserir el següent codi en un nou arxiu .htaccess:
<Files *.php>
deny from all
</Files>
A continuació, carregui l'arxiu en cadascuna de les següents carpetes:
- /wp-content/uploads/
- /wp-includes/
5. Protegir l'arxiu de configuració wp-config.php
Un dels arxius més importants en el seu lloc de WordPress és wp-config.php. Incluye acceso a la base de datos, incluidas las contraseñas.
Per protegir l'arxiu wp.config.php, enganxi el següent codi a l'arxiu .htaccess principal:
<files wp-config.php>
order allow,deny
deny from all
</files>
6. Deshabilitar l'accés a adreces IP específiques
Ha notat un nombre inusualment alt de sol·licituds per al seu lloc web des d'adreces IP específiques? Si creu que aquest comportament és sospitós, pot bloquejar l'accés al seu lloc web per adreces IP específiques.
Afegeixi les següents línies a l'arxiu .htaccess i reemplaci xxx per aquesta adreça IP en concret:
<Limit GET POST>
order allow,deny
deny from xxx.xxx.xx.x
allow from all
</Limit>
7. Desactivar escàners en WordPress
La tècnica favorita de l'atacant és l'anomenat atac de força bruta. L'escaneig començarà quan els atacants detectin els noms d'inici de sessió dels autors en el lloc web. Després d'això, només necessiten fer un atac de diccionari o de força bruta a les seves contrasenyes per accedir a la seva administració de WordPress.
La manera més fàcil de fer-ho és bloquejar l'escaneig d'autors a través de l'arxiu .htaccess:
# BEGIN block author scans
RewriteEngine On
RewriteBase /
RewriteCond %{QUERY_STRING} (author=\d+) [NC]
RewriteRule .* - [F]
# END block author scans
8. Deshabilitar l'accés d'aplicacions externes a WordPress
Cada instal·lació de WordPress oculta l'arxiu xmlrpc.php. L'arxiu permet que els serveis de tercers accedeixin a WordPress. Si no utilitza cap d'aquests serveis, els experts en seguretat recomanen que bloquegi l'accés a aquest arxiu.
Hi ha més formes de fer-ho, però podem fer-ho de nou inserint la següent línia de codi a .htaccess:
# Block WordPress xmlrpc.php requests
<Files xmlrpc.php>
order deny,allow
deny from all
</Files>
El nostre suggeriment final: Protegeixi el propi arxiu .htaccess d'accés no autoritzat
Com es pot veure a dalt, .htaccess pot afectar moltes coses. És per això que és bo protegir aquest arxiu dels atacants. Faci servir les següents línies de codi per fer-ho:
<files ~ "^.*\.([Hh][Tt][Aa])">
order allow,deny
deny from all
satisfy all
</files>