És possible protegir el contingut d’un directori de manera que només aquells que vulguem hi puguin accedir.
Hi han diferents maneres de fer-ho:
Directori sub
Si creeu un directori anomenat sub, tot el contingut d’aquest directori només podrà ser accessible des de màquines amb IP de la de la UB.
Protecció amb fitxer .htaccess
El fitxer .htaccess l’haureu de crear vosaltres i es pot crear amb qualsevol editor de textos, com per exemple la Llibreta del Windows. Has de tenir en compta que no ha de tenir cap extensió; així, per exemple, la Llibreta de Windows per defecte li posa la extensió .txt, així que hauries de renombrar-lo i deixar-lo com a .htaccess
Aquest fitxer conté un seguit de directrius de permisos i restriccions que definireu segons la vostra necessitat. Al directori on coloquem aquest fitxer, i als subdirectoris que en pengin, s’aplicarà la política de restricció o permís que es defineixi el fitxer .htaccess.
Atenció!! Algunes sol.lucions son diferents depenent de la versió de Apache en la que s’està executant el vostre espai de hostatgeria web. Per saber quina versió de Apache és podeu consultar:
https://www.ub.edu/tecnicweb/quina-versio-de-apache-sesta-executant-en-el-meu-espai-dhostatgeria/
Exemples de directrius
- Restricció per IP: només hi poden accedir-hi les IP 161.116.111.222 i 161.116.222.333
Apache 2.2
<Limit GET POST>
order deny,allow
deny from all
allow from 161.116.111.222 161.116.222.333
</Limit>
Apache 2.4
<Limit GET POST>
Require ip 161.116.111.222 161.116.222.333
</Limit>
- Restricció per IP: només poden accedir-hi les IP que començen per 161.116 (IP de la UB)
Apache 2.2
<Limit GET POST>
order deny,allow
deny from all
allow from 161.116
</Limit>
Apache 2.4
<Limit GET POST>
Require ip 161.116
</Limit>
- Directriu que s’aplica als fitxers que compleixin un patró (en aquest cas ~ “\.pl$” correspon als arxius amb extensio .pl. En aquest cas es permet l’accés als fitxers *.pl a tohotm.
Apache 2.2
<Files ~ "\.pl$">
order deny,allow
allow from all
</Files>
Apache 2.4
<Files ~ "\.pl$">
Require all granted
</Files>
- Directriu que permet l’accés mitjançant codi i contrasenya
AuthType Basic
AuthName "Etiqueta de la finestra d'autenticació de l'aplicació"
AuthUserFile <camí>passwords.pw
Require valid-user
El fitxer passwords.pw l’heu de crear vosaltres amb l’utilitat htpasswd.exe. i s’ha de colocar en el mateix lloc que el fitxer .htaccess.
<camí> es el camí absolut dins la màquina i per a un usuari anomenat nom_usuari prodria ser: /www/wub/nom_usuari
- Directriu que permet l’accés mitjançant autenticació UB. L’autenticació UB és el codi i contrasenya que tots els col·lectius de la UB (PDI, PAS i alumnat) tenen i que, entre altres coses, ens permeten accedir al correu UB, intranet, ...
AuthType UB
UBAuthType mi_var (opcional)
Require valid-user o Require [user mail1 mail2…|group col1col2 …]
AuthType UB |
Indica que el tipus d’autenticació serà la pròpia de la UB |
UBAuthType mi_var |
Indica amb quina dada de l’autenticació (mi_var) identificarem l’usuari. Un cop l’usuari estigui identificat, el valor per a meu_var passa a la variable d’entorn REMOTE_USER. Els valors possibles són:
|
MAIL : adreça de correu @ub.edu de l’usuari UB autenticat . |
|
DNI : dni de l’usuari UB autenticat . |
|
UID : codi amb el qual s’accedeix a l’autenticació UB . |
|
NIUB : número d’identificació UB de l’usuari UB autenticat. |
Aquesta línia és opcional. Si no es posa, s’assumeix per defecte UBAuthType MAIL. Cal anar amb compte a fer servir el DNI i el NIUB, ja que no s’assegura la unicitat per a diferents colectius.
|
Require |
Indica quina és la condició requerida per accedir-hi:
- valid-user: indica que hi podrà accedir tothom que tingui una autenticació UB correcta.
- user valor1 valor2 …: indica que tothom que tingui el camp indicat en UBAuthType igual als valors indicats, hi podrà accedir. Es pot combinar amb l’opció group
- (en Apache 2.2) group grup1 grup2… : indica que només determinats col·lectius hi poden accedir. Es pot combinar amb l’opció user.
- (en Apache 2.4) ubgroup grup1 grup1 … : indica que només determinats col·lectius hi poden accedir. Es pot combinar amb l’opció user.
- Valors possibles de l’opció group i ubgroup (els més habituals):
|
PDI : personal docent i investigador |
|
PAS : PTGAS (personal tècnic, de gestió i d’administració i serveis) |
|
PER2 : personal amb perfil doble (PDI i PTGAS) |
|
PEX : personal extern (no contractat) |
|
FPE : codis assignats a unitats, no a persones |
|
CAR : càrrecs |
|
EST : estudiants |
|
ANT : antics alumnes |
|
Exemples:
Permís d’accés a tothom que estigui autenticat correctament a la UB.
AuthType UB
Require valid-user
El valor de la variable d’entorn REMOTE_USER és l’adreça de correu de l’usuari autenticat.
Permís d’accés a uns usuaris amb adreça de correu determinada amb autenticació UB prèvia.
AuthType UB
UBAuthType MAIL
Require user fulano@ub.edu mengano@ub.edu
El valor de la variable d’entorn REMOTE_USER és l’adreça de correu de l’usuari autenticat.
Permís d’accés a uns usuaris amb UID determinat amb autenticació UB prèvia.
AuthType UB
UBAuthType UID
Require user 3589999 23666454
El valor de la variable d’entorn REMOTE_USER és el UID de l’usuari autenticat .
Tenen permís els usuaris prèviament autenticats a la UB que tinguin com a UID 3589999 i 23666454.
Permís d’accés als membres del col·lectiu PDI amb autenticació UB prèvia.
Apache 2.2
AuthType UB
Require group PDI
Apache 2.4
AuthType UB
Require ubgroup PDI
Permís d’accés per a usuaris i col·lectiu.
Apache 2.2
AuthType UB
UBAuthType DNI
Require user 3589999 23666454 group PDI
Apache 2.4
AuthType UB
UBAuthType DNI
Require user 3589999 23666454 ubgroup PDI
Tenen permís els usuaris prèviament autenticats a la UB que tinguin els DNI 3589999 i 23666454 i que pertanyin al col·lectiu PDI .
Aquestes diferents directrius es poden combinar entre elles.
Permís d’accés a tothom des de ordinadors connectats a la xarxa UB o que estiguin autenticats correctament a la UB.
Apache 2.2
AuthType UB
Require valid-user
Order allow,deny
Allow from 161.116
Satisfy any
Apache 2.4
AuthType UB
<RequireAny>
Require valid-user
Require ip 161.116
</RequireAny>
Podeu trobar més informació