Hébergement web

vendredi 8 juillet 2011, par Jacquelin Charbonnel

Créer et gérer un site web

 Pré-requis

Le service d’hébergement de sites web est strictement conditionné par :

  • l’acceptation de cette convention d’hébergement
  • la déclacration d’un directeur de publication et d’un directeur de rédaction
  • l’engagement de veiller au suivi des mises à jour des outils installés en fonction des avis de sécurité les concernant
  • le respect des recommandations de sécurité qui seront diffusées par la PLM Team


Ce service n’est pas destiné à héberger des pages personnelles. Pour cela, utiliser le service Publication et partage de fichiers.

 Créer son site web

Pour disposer d’un site web, il suffit d’en faire la demande auprès de support@math.cnrs.fr en indiquant :

  • le nom et l’objet du site à créer
    • pour les sites .math.cnrs.fr, nous créons le nom de domaine,
    • pour les autres, vous devez faire une demande de création de nom de domaine auprès d’un fournisseur de noms de domaine (le nom de domaine doit être opérationnel avant de demander la création du site)
  • la liste des webmasters (et leurs logins sur la PLM) qui auront accès en écriture à l’espace disque

Le création d’une base de données (MySQL) dédiée au site peut également être demandée à cette occasion.

Les webmasters doivent avoir un compte sur la PLM. Voir la procédure de création de comptes sur http://plm.math.cnrs.fr/comptes.

Une fois le site créé, le transfert des pages se fait au choix par scp, sftp ou rsync.

 Gérer son site web

  • Comment importer des fichiers (pages HTML, scripts PHP, etc.) sur le serveur ? Voici par exemple 3 possibilités :
scp mes_fichiers mon_login@cms.mathrice.fr:mon_site
sftp mon_login@cms.mathrice.fr:mon_site
rsync -r mon_dir mon_login@cms.mathrice.fr:mon_site

où :

    • mes_fichiers est le nom des fichiers à importer,
    • mon_dir est le nom d’un répertoire à importer,
    • mon_login est un compte de la PLM,
    • mon_site est le nom du site concerné.
  • Comment se connecter interactivement sur le serveur ?
    ssh mon_login@cms.mathrice.fr
Au plus 2 erreurs consécutives de mot de passe sont possibles (principe de la carte bleue). La 3ème blackliste l’IP.


Avant de pouvoir accéder interactivement à n’importe quel serveur de la PLM, l’utilisateur doit s’être défini au préalable un shell valide (/bin/bash, par exemple).

Il peut réaliser cette opération une fois pour toute à partir de sa page Paramétrage de compte sur https://webmail.math.cnrs.fr.

Les serveurs d’hébergement web ne sont pas des machines de développement. Elles ne disposent ni d’outils interactifs, ni d’outils de développement. Par contre, des synchronisations (automatiques ou non) peuvent être mises en place entre ces serveurs et vos machines de développement.
  • Comment donner les droits d’écriture dans un répertoire ’’mondir’’ au serveur ?
    nfs4_setfacl -a "A:fd:apache:rwaxt" mondir

Attention !

Les ACEs (Access Control Entry) se cumulent dans une ACL (Access Control List) : si une ACE pour apache existe déjà (ce qui doit généralement être le cas), la commande précédente en ajoute une seconde, sans enlever la première.

Pour effacer l’ACE n’autorisant que la lecture à apache, regarder d’abord l’ACL en place :

nfs4_getfacl mondir

ce qui doit donner quelque chose comme :

A:fd:apache@angers:rxt
A::OWNER@:rwaxtTnNcCo
A:g:GROUP@:rwaxtnc
A::EVERYONE@:tnc

puis la supprimer :

nfs4_setfacl -x "A::apache@angers:rxt" mondir

Pour des raisons évidentes de sécurité, ne pas faire de chmod 777 ! (et de toute façon, cela ne fera pas ce que vous escomptez !)

Mais malgré cela, ne jamais laisser de permissions à 777 !

Recommandations

Evitez d’installer un CMS par upload HTTP (par exemple avec un loader), car dans ce cas, tous les fichiers du CMS sont la propriété du serveur. Cela fragilise énormément la sécurité de votre site.

Importez plutôt une archive par scp, sftp ou rsync, puis installez-la via ssh.

 Consulter les logs

Les webmasters peuvent accéder aux logs du serveur HTTP, via le répertoire .httpd_log situé à la racine du site

 Accéder aux backups

Les webmasters peuvent accéder aux backups de leur site :

  • le répertoire racine du site possède un répertoire .snapshots contenant des liens vers les derniers backups
  • le répertoire racine du site possède aussi un répertoire .dbdump contenant le dernier dump quotidien des bases

 .htaccess et .htpasswd

Pour des raisons de performance, les fichiers .htaccess ne sont pas actifs par défaut, mais peuvent le devenir sur simple demande de votre part.

Si vous souhaitez y référencer des fichiers, par exemple un .htpasswd, il faut que ce dernier soit situé dans l’arborescence du site web, et soit référencé comme /htdocs/mon_site/.../.htpasswd.

Tout fichier dont le nom commence par .ht est interdit de téléchargement via HTTP. C’est donc une bonne idée d’appeler les fichiers de login/mot de passe .htpasswd

 Modifier le filtrage réseau sortant

On parle ici de connexions initiées depuis le serveur HTTP. Cela ne concerne pas les connexions initiées par le serveur cms.

Pour des raisons de sécurité, votre site n’est pas autorisé à se connecter sur quelque host d’Internet que ce soit. Pour l’autoriser, créez un fichier .iptables à la racine du site.

La syntaxe de ce fichier est :

// commentaire
# commentaire
host port [commentaire]
network/24 port [commentaire]

Exemple :

ccwebcast.in2p3.fr 80   webcast IN2P3

ouvre en sortie le port 80 à destination de ccwebcast.in2p3.fr

193.54.80.0/24 80

ouvre en sortie le port 80 à destination du réseau 193.54.80.0

il peut s’écouler jusqu’à une heure entre le moment où le fichier .iptables a été créé/modifié, et le moment où cela est pris en compte

 HTTPS

HTTPS peut être mis en oeuvre sur les sites qui le demandent. Nous fournir dans ce cas le certificat de votre site et la clé privée associée.

Cette fonctionnalité utilise SNI (Server Name Indication), une extension des protocoles SSL et TLS, et ne peut être utilisée que par les navigateurs qui la supporte.

Documents joints

SPIP | | Plan du site | Suivre la vie du site RSS 2.0
Habillage visuel © digitalnature sous Licence GPL