Outil de recherche sur le site :

Salles pédagogiques Serveur web et base de données

Présentation du serveur pedago02a

Le serveur pédagogique pedago02a (alias pedago) est destiné à être utilisé pour les TP de conception web et/ou de base de données.
Il comportera, à terme, des différences par rapport à son prédécesseur pour remédier à certaines lacunes, principalement en terme de sécurité.

Sur ce serveur, vous pouvez utiliser les services suivants :
  • serveur web avec une adresse de la forme https://pedago.univ-avignon.fr/~votre_login
  • base de données PostgreSQL avec un schéma dédié pour vos données
  • phpPgAdmin pour les enseignants
  • base de données MySQL
  • phpMyAdmin pour les enseignants (pas encore installé)

Programmes sur le serveur

Ce serveur est installé sous Debian Jessie et possède donc les programmes avec les versions coorespondantes à cette distribution :
  • Apache : 2.4.10
  • PHP : 5.6.13
  • PostgreSQL : 9.4.4

Pour le reste des programmes, vous pouvez interroger le site https://www.debian.org/distrib/packages ou regarder directement sur le serveur.

En tant qu'étudiant, si vous souhaitez utiliser des programmes qui ne sont pas présents, vous devez en parler avec vos enseignants. Si l'enseignant juge que la demande est pertinente dans le cadre des TPs, il se chargera de faire la demande d'installation du programme.

Connexion au serveur et données personnelles

Le serveur est accessible par le réseau de l'Université seulement. Vous devez donc utiliser le VPN depuis chez vous ou ailleurs.
Lorsque vous vous connectez sur le serveur par shell SSH, vous accédez à vos données personnelles.
Le login et le mot de passe sont ceux de l'ENT.
Lors de la 1ère connexion SSH au serveur, les identifiants PostgreSQL et MySQL sont générés et envoyés par mail. Pour les étudiants, ces identifiants sont supprimés chaque 1er septembre chaque année.

Apache : fonctionnement des sites web personnels

Une fois connecté en SSH sur le serveur, vous êtes dans votre dossier personnel (aussi appelé home directory). Vous retrouvez vos données personnelles.

Le répertoire « public_html » est le répertoire racine de votre site web personnel (il suffit de le créer s'il n'existe pas). Il doit se trouver à la racine de votre dossier personnel et doit avoir les permissions 755 (rwx r-x r-x).
Votre site web personnel est accessible par l'adresse https://pedago.univ-avignon.fr/~mon-login/.

Base de données : PostgreSQL

Les questions suivantes concernent l'utilisation de la base de données PostgreSQL.

La base de données pour la pédagogie est : etd. Elle contient tous les objets des utilisateurs (étudiants et enseignants).
La séparation des objets des différents propriétaires se fait grâce aux schémas. Ainsi, 2 utilisateurs peuvent avoir chacun une table avec le même nom, chacun dans leur schéma. Il faut donc éviter d'utiliser le schéma public.

Lors de la première connexion SSH sur le serveur, le compte de l'utilisateur est créé (rôle + schéma).

Il existe une autre base pour un enseignement particulier avec un unique utilisateur : coursSN.

PostgreSQL : obtention du mot de passe

Lors de la première connexion SSH sur le serveur, le compte de l'utilisateur est créé (rôle + schéma).
Le rôle possède un mot de passe qui est envoyé par mail à l'utilisateur. Si vous êtes étudiant, veillez à ce que vos informations personnelles soit correctement renseignées dans l'ENT et que vous ayez validé votre adresse personnelle.
Ce mot de passe n'est pas demandé dans le cas d'une connexion en local, par exemple via la CLI psql :
mon_login@pedago02a:~$ psql etd
psql (9.4.4)
Type "help" for help.

etd=>
Le mot de passe est nécessaire dans le cas d'une connexion par le réseau, par exemple lorsqu'un script php doit se connceter à la base.

PostgreSQL : comment réinitialiser mon mot de passe ?

En cas de perte du mot de passe du compte PostgreSQL, il suffit d'exécuter cette commande dans un shell :

sudo pgresetpwd

Ne pas oublier de mettre « sudo ».

Comme dans le cas de la première connexion, le mot de passe est envoyé par mail.

PostgreSQL : comment utiliser la base

Techniquement, la base est accessible en local (par socket unix) ou par le réseau. Le mot de passe est requis uniquement avec l'accès par le réseau.
Par le réseau, les connexions sont autorisées depuis :
  • les salles pédagogiques de l'Agroparc et du centre-ville
  • le wifi et le nomade
  • le VPN
  • le VLAN alloué historiquement au CERI (194.57.216.0/24)

En pratique, l'utilisation de l'outil psql, lorsqu'on est sur le serveur pedago, ne requiert pas le mot de passe. Il suffit de taper la commande :
psql etd
Dans ce cas, on accède donc à la base par socket unix.

Pour les outils utilisant le réseau pour atteindre la base de données, les informations suivantes sont nécessaires.
La base à utiliser : etd.
Le nom du serveur : pedago.univ-avignon.fr.
Le nom de l'utilisateur : votre login.
Le mot de passe est celui envoyé par mail.

Vous possédez un schéma dont le nom est votre login. Vous seul pouvez accéder aux objets de votre schéma. il est donc conseillé de créer vos objets dans votre schéma plutôt que dans le schéma public. Ainsi, vous êtes assuré que les autres utilisateurs ne puissent pas accéder à vos données et de pouvoir les appeler comme vous voulez.

PostgreSQL : suppression des données de la base

Une fois par an (le 1er septembre), la base de données etd est nettoyée.
Les actions suivantes sont faites :
  • tous les comptes des étudiants sont supprimés
  • les comptes des enseignants qui n'existent plus dans l'annuaire LDAP sont supprimés
  • les données appartenant aux comptes supprimés sont aussi supprimées
Aucune sauvegarde n'est effectuée.

PostgreSQL : phpPgAdmin, une interface web d'administration

Ce serveur propose une interface web pour gérer ses données en base de données. Il s'agit de phpPgAdmin accessible à l'adresse suivante :
https://pedago.univ-avignon.fr/phppgadmin/

Elle nécessite une authentification (login ENT) et n'est accessible que par les enseignants.

Base de données : MySQL

Les questions qui suivent concernent l'utilisation de la base de données MySQL.

Il y a une base par utilisateur pour la pédagogie dont les noms sont les logins de chacun.

Lors de la première connexion SSH sur le serveur, la base de l'utilisateur est créée.

MySQL : obtention du mot de passe

Lors de la première connexion SSH sur le serveur, la base de l'utilisateur est créé ainsi que les comptes MySQL avec tous les privilèges.
Chacun de ses comptes ont le mot de passe qui est envoyé à son propriétaire par mail à l'adresse de l'Université.
Si vous êtes étudiant, veillez à ce que vos informations personnelles soient correctement renseignées dans l'ENT et que vous ayez validé votre adresse personnelle pour pouvoir recevoir le mot de passe.

Le mot de passe est toujours demandé pour se connceter à la base, même en local.

MySQL : comment réinitialiser mon mot de passe ?

En cas de perte de mot de passe du compte PosrgreSQL, il suffit d'exécuter cette commande dans un shell :

sudo myresetpwd

Ne pas oublier de mettre « sudo ».

Comme dans le cas de la première connexion, le mot de passe est envoyé par mail.

MySQL : comment utiliser la base

Techniquement, la base est accessible uniquement par le réseau (local et distant). Le mot de passe est toujours requis.
Par le réseau, les connexions sont autorisées depuis :
  • les connexions en local (localhost)
  • les salles pédagogiques (centre-ville et Agroparc)
  • le wifi et le nomade
  • le VPN
  • le VLAN alloué historiquement au CERI (194.57.216.0/24)

En pratique, lorsqu'on est sur le serveur pedago, on utilise l'outil mysql. Il suffit de taper la commande :
mysql -p mon_login
Dans ce cas, on accède donc à sa base personnelle par localhost.

Pour les autres outils, les informations suivantes sont nécessaires.
La base à utiliser : votre_login.
Le nom du serveur : pedago.univ-avignon.fr.
Le nom de l'utilisateur : votre_login.
Le mot de passe est celui envoyé par mail.

Vous possédez une base de données pour votre usage unique. Vous seul pouvez accéder à cette base grâce à votre mot de passe. Ainsi, vous êtes assuré que les autres utilisateurs ne peuvent pas accéder à vos données.

MySQL : suppression des bases de données

Une fois par an (le 1er septembre), les bases de données de l'année sont suprpimées.
Les actions suivantes sont faites :

  • toutes les bases des étudiants sont supprimés
  • les bases des comptes des enseignants qui n'existent plus dans l'annuaire LDAP sont supprimées
  • les données appartenant aux bases supprimés sont aussi supprimées

Aucune sauvegarde n'est effectuée.