Taille: 3535
Commentaire:
|
← Version 13 à la date du 2022-02-06 16:46:07 ⇥
Taille: 4429
Commentaire: Simplify htaccess for recent Apache
|
Texte supprimé. | Texte ajouté. |
Ligne 2: | Ligne 2: |
Ligne 6: | Ligne 5: |
En utilisant un fichier ''.htaccess'', on peut restreindre l'accès à certains dossiers stockés dans ''www''. Pour cela il faut créer deux fichiers: |
En utilisant un fichier ''.htaccess'', on peut restreindre l'accès à certains dossiers stockés dans ''www''. Pour cela il faut créer deux fichiers: |
Ligne 14: | Ligne 11: |
Ligne 19: | Ligne 15: |
AuthGroupFile /dev/null | |
Ligne 22: | Ligne 17: |
<Limit GET POST> Require valid-user </Limit> |
Require valid-user |
Ligne 27: | Ligne 19: |
Ligne 31: | Ligne 22: |
Ligne 35: | Ligne 25: |
nom_utilisateur:mot_de_passe_crypté | nom_utilisateur:mot_de_passe_chiffré |
Ligne 37: | Ligne 27: |
'''''Exemple:''''' On autorise deux utilisateurs: | |
Ligne 38: | Ligne 29: |
'''''Exemple:''''' On autorise deux utilisateurs: |
|
Ligne 51: | Ligne 40: |
Pour chiffrer les mots de passe, il y a plusieurs solutions : | |
Ligne 52: | Ligne 42: |
Pour crypter les mots de passe, il y a plusieurs solutions: | |
Ligne 55: | Ligne 44: |
* Le plus simple reste l'utilisation de {{{htpasswd}}}. | * Le plus simple reste l'utilisation de la commande {{{htpasswd}}}. |
Ligne 58: | Ligne 48: |
}}} demandera le mot de passe de toto et créera le fichier {{{/home/nom_utilisateur/.htpasswd}}}[[BR]] Puis {{{ |
}}} demandera le mot de passe de toto et créera le fichier {{{/home/nom_utilisateur/.htpasswd}}} <<BR>> Puis {{{ |
Ligne 63: | Ligne 54: |
Pour modifier le mot de passe de "toto" ou rajouter d'autres couples "login/mot de passe" (changer "toto" en conséquence) Plus d'informations sur cette commande en faisant {{{man htpasswd}}} sur zamok |
Pour modifier le mot de passe de "toto" ou rajouter d'autres couples "login/mot de passe" (changer "toto" en conséquence) Plus d'informations sur cette commande en faisant {{{man htpasswd}}} sur zamok |
Ligne 66: | Ligne 56: |
* On notera que le fichier {{{.htpasswd}}} sera lisible par tous les utilisateurs du Cr@ns. C'est pas le mieux en termes de sécurité même si les mots de passes qu'il contient sont chiffrés. | * On notera que le fichier {{{.htpasswd}}} sera lisible par tous les utilisateurs du Cr@ns. C'est pas le mieux en termes de sécurité même si les mots de passes qu'il contient sont chiffrés. |
Ligne 68: | Ligne 58: |
== Interdire l'accès en ssh aux autres utilisateurs du cr@ns == Ce n'est qu'une histoire d'autorisation sur le dossier en question: |
== Interdire l'accès en ssh aux autres utilisateurs du Cr@ns == Ce n'est qu'une histoire d'autorisation sur le dossier en question : |
Ligne 76: | Ligne 65: |
Malheureusement cette méthode n’empêche pas les clubs (qui n'appartiennent pas au groupe {{{users}}} mais au groupe {{{clubs}}}) de pouvoir accéder à nos fichiers. Il est donc préférable d'utiliser {{{setfacl}}} : {{{ chmod -R go-rwx le_dossier setfacl -R -m u:www-data:rx le_dossier }}} (on pourrait veiller à ne mettre le droit d’exécution uniquement sur les dossiers mais bon…) . /!\ Le programme setfacl agit localement, il doit être exécuté sur zamok pour être pris en compte par les pages perso. |
|
Ligne 78: | Ligne 76: |
Pour empêcher les moteurs de recherches comme google d'indexer vos pages, rien de plus simple, il faut créer un fichier robots.txt | Pour empêcher les moteurs de recherches comme google d'indexer vos pages, rien de plus simple, il suffit de créer un fichier {{{robots.txt}}} |
Ligne 80: | Ligne 78: |
Ce fichier ce place à la racine de vos pages (dans le dossier www) et peut contenir les commandes suivantes : | Ce fichier se place à la racine de vos pages (dans le dossier {{{www/}}}) et peut contenir les commandes suivantes : |
Ligne 82: | Ligne 80: |
* User-Agent: permet de préciser le robot concerné par les directives suivantes. La valeur * signifie "tous les moteurs de recherche". * Disallow: permet d'indiquer les pages à exclure de l'indexation. Chaque page ou chemin à exclure doit être sur une ligne à part et doit commencer par /. La valeur / seule signifie "toutes les pages du site". |
* User-Agent: permet de préciser le robot concerné par les directives suivantes. La valeur * signifie "tous les moteurs de recherche". * Disallow: permet d'indiquer les pages à exclure de l'indexation. Chaque page ou chemin à exclure doit être sur une ligne à part et doit commencer par /. La valeur / seule signifie "toutes les pages du site". Le chemin doit être relatif à votre page perso, donc pour interdire toutes les pages de votre page perso, il faut mettre {{//?action=content|/|width="100%"}} et il ne faut pas mettre {{{/~login_crans/}}} ou {{{/login_crans/}}}. |
Ligne 85: | Ligne 83: |
/!\ ''' Le fichier robots.txt ne doit contenir aucune ligne vide ! ''' | Les modifications que vous effectuez dans votre fichier {{{robots.txt}}} apparaîtront sous une heure sur http://perso.crans.org/robots.txt . /!\ ''' Le fichier robots.txt ne doit contenir aucune ligne vide ! ''' |
Ligne 89: | Ligne 89: |
* Exclusion de toutes les pages : | * Exclusion de toutes les pages : |
Ligne 94: | Ligne 95: |
* Exclusion d'une ou plusieurs pages : | * Exclusion d'une ou plusieurs pages : |
Ligne 101: | Ligne 103: |
* Exclusion de toutes les pages d'un répertoire et ses sous-dossiers : | * Exclusion de toutes les pages d'un répertoire et ses sous-dossiers : |
Ligne 106: | Ligne 109: |
---- CatégoriePagePublique |
Restreindre l'accès a certains fichiers déposés sur Zamok
Sommaire
Avec un fichier .htaccess
En utilisant un fichier .htaccess, on peut restreindre l'accès à certains dossiers stockés dans www. Pour cela il faut créer deux fichiers:
un fichier nommé .htaccess dans le dossier dont on veut restreindre l'accès;
un fichier nommé .htpasswd dans /home/nom_utilisateur.
Contenu du fichier .htaccess
# .htaccess AuthUserFile /home/nom_utilisateur/.htpasswd AuthName "Acces restreint" AuthType Basic Require valid-user
Qui fait référence au chemin d'accès du fichier .htpasswd
Contenu du fichier .htpasswd
Ce fichier contient une liste des utilisateurs autorisés. La syntaxe de la liste est la suivante:
nom_utilisateur:mot_de_passe_chiffré
Exemple: On autorise deux utilisateurs:
papa qui a pour mot de passe noel;
pere qui a pour mot de passe fouettard.
Qui donne le fichier suivant:
# .htpasswd papa:KZjIAGTjhe4Ys pere:pC2IXXpDUjAl.
Pour chiffrer les mots de passe, il y a plusieurs solutions :
- savoir le faire de tête (mieux vaut être salement nerd pour ça)
savoir se tourner vers des gens qui savent le faire, comme par exemple ce site: http://perso.nerim.net/htpasswd.php
Le plus simple reste l'utilisation de la commande htpasswd.
htpasswd -c /home/nom_utilisateur/.htpasswd toto
demandera le mot de passe de toto et créera le fichier /home/nom_utilisateur/.htpasswd
Puis
htpasswd /home/nom_utilisateur/.htpasswd toto
Pour modifier le mot de passe de "toto" ou rajouter d'autres couples "login/mot de passe" (changer "toto" en conséquence) Plus d'informations sur cette commande en faisant man htpasswd sur zamok
On notera que le fichier .htpasswd sera lisible par tous les utilisateurs du Cr@ns. C'est pas le mieux en termes de sécurité même si les mots de passes qu'il contient sont chiffrés.
Interdire l'accès en ssh aux autres utilisateurs du Cr@ns
Ce n'est qu'une histoire d'autorisation sur le dossier en question :
chmod -R g-rwx,o+r le_dossier chmod o+x le_dossier
Malheureusement cette méthode n’empêche pas les clubs (qui n'appartiennent pas au groupe users mais au groupe clubs) de pouvoir accéder à nos fichiers. Il est donc préférable d'utiliser setfacl :
chmod -R go-rwx le_dossier setfacl -R -m u:www-data:rx le_dossier
(on pourrait veiller à ne mettre le droit d’exécution uniquement sur les dossiers mais bon…)
Le programme setfacl agit localement, il doit être exécuté sur zamok pour être pris en compte par les pages perso.
Préciser aux robots d'indexation quelles pages peuvent être indexées
Pour empêcher les moteurs de recherches comme google d'indexer vos pages, rien de plus simple, il suffit de créer un fichier robots.txt
Ce fichier se place à la racine de vos pages (dans le dossier www/) et peut contenir les commandes suivantes :
- User-Agent: permet de préciser le robot concerné par les directives suivantes. La valeur * signifie "tous les moteurs de recherche".
Disallow: permet d'indiquer les pages à exclure de l'indexation. Chaque page ou chemin à exclure doit être sur une ligne à part et doit commencer par /. La valeur / seule signifie "toutes les pages du site". Le chemin doit être relatif à votre page perso, donc pour interdire toutes les pages de votre page perso, il faut mettre et il ne faut pas mettre /~login_crans/ ou /login_crans/.
Les modifications que vous effectuez dans votre fichier robots.txt apparaîtront sous une heure sur http://perso.crans.org/robots.txt
Le fichier robots.txt ne doit contenir aucune ligne vide !
Voici des exemples de fichier robots.txt :
- Exclusion de toutes les pages :
User-Agent: * Disallow: /
- Exclusion d'une ou plusieurs pages :
User-Agent: * Disallow: /repertoire/chemin/page.html Disallow: /repertoire/chemin/page2.html Disallow: /repertoire/chemin/page3.html
- Exclusion de toutes les pages d'un répertoire et ses sous-dossiers :
User-Agent: * Disallow: /repertoire/