Table of Contents

Configuration Serveurs pour ePims

PostgreSQL

Accès TCP/IP au serveur PostgreSQL

La configuration de l'accès TCP/IP n'est en réalité pas spécifique d'ePims, et si votre serveur PostgreSQL est déjà configuré pour accepter les connections TCP/IP, ce paragraphe n'est pas utile.

pg_hba.conf :
      // En local, utilisation de la map <nom_map> définie dans pg_ident.conf
      local all all ident <nom_map>
      // A distance, autorisation sur adresse ip. Au minimum l'adresse locale du serveur doit 
      // etre saisie pour les accès de l'application tomcat.
      // L'adresse est soit l'adresse ip soit 127.0.0.1 selon comment est configuré le 
      // fichier hosts.
      // Entrer toutes les adresses ip des pc dont les utilisateurs ont un droit d'accès direct à la BD
      host all all 182.110.182.19 255.255.255.255 md5
      pg_ident.conf : définition de la map <nom_map>, saisir tous les mappings autorisés.
      // utilisateur système (unix ou windows) robert correspond à l’utilisateur postgresql pims_db_user
      <nom_map> robert pims_db_user 
      listen_addresses = '*'
      port = 5432

Remarque pour Linux : Par défaut, PostgreSQL s’installe sous /var/. Selon les installations, l’espace disque de /var est limité et rapidement un problème se pose lorsque la base de données grossit. Il est possible d’installer PostgreSQL sous /usr/local/share/pgsql, par exemple, puis de modifier le fichier /etc/init.d/postgresql ou /etc/sysconfig/pgsql/postgresql.conf (appelé depuis /etc/init.d/postgresql) : export des variables PGLOG (/usr/local/share/pgsql/logs/pgsql) et PGDATA (/usr/local/share/pgsql/data).

Creation de l'utilisateur ePims

Depuis une console ou un terminal. (windows: se mettre dans le répertoire bin de postgres)

createuser –d –P pims_db_user <enter> 
  ou 
createuser -U postgres -d -P pims_db_user <enter>.

Création de la base de données ePims

Une fois la configuration faite, il est possible de créer la base de données utilisées dans ePims :

En ligne de commande

Via pgAdmin

L'outil pgAdmin III permet d'effectuer la création de la base sans pour autant se trouver sur le serveur :

Migration d'une base existante

Si vous utilisiez déjà Pims dans sa version précédente (version 2.x ou 3.x et +), il est possible de migrer les données. Pour cela connectez-vous à la BD PimsDB, avec PgAdmin par exemple, en utilisant le user pims_db_user et exécuter un des fichiers de migration (voir ci-dessous) de la même façon que l'on exécute ePimsModel.sql (cf les chapitres précédents).

A partir de la version 4.0M1 d'ePims, la base de données à une table 'admin-info' qui permet de savoir quel est la version du model de la BD. En fonction de cette version, il est nécessaire d'exécuter les scripts sql des versions suppérieurs. Par exemple, si la version est '3', il faut exécuter le script Data_migration-4.sql qui permet de passer à la version 4 de la BD. Si la version est '2', il faut exécuter les scripts Data_migration-3.sql PUIS Data_migration-4.sql….

Test de la Configuration

Afin de s'assurer que postgresql est correctement installé :

Apache Geronimo 2.0

Installer l'artifact de Postgresql en utilisant la console d'installation de Geronimo:

Remarque : Les informations saisies ici devront être les mêmes que celles spécifiées lors de la configuration/déploiement de ePims (voir application_web). Dans le cas où une des ces informations change, il faut également modifier le fichier de ressources correspondant.

Serveur FTP

Si le serveur choisi permet une authentification des utilisateurs par l'intermedaire d'une BD, le mieux est de le configurer pour qu'il utilise les données de la BD de PimsDB : table actor, champs login et password. C'est le cas de l'exemple ci-dessous avec ProFTP. Dans le cas contraire, un seul et même utilisateur sera utilisé pour toutes les connections au serveur FTP, quel que soit l'utilisateur ePims qui initie la connexion. C'est le cas avec le serveur TYPSoft.

Dans les deux cas, il est nécessaire de configurer l'application eP-Web en fonction du serveur choisi et de son mode d'authentification. Voir le chapitre consacré à l'installation et à la configuration de eP-Web.

ProFTP

Modifier le fichier proftpd.conf (sous /etc/ ou /usr/local/etc/…), donné en exemple ici :

ServerName           "Pims FTP Server"   
ServerType           standalone
DefaultServer        on
DefaultRoot          /local/path/to/pims_root    # Répertoire accessible via FTP
SystemLog            /var/log/proftpd.log        # Fichier de log

# Port 21 is the standard FTP port.
Port                 21

# Umask 022 is a good standard umask to prevent new dirs and files
# from being group and world writable.
Umask                022


MaxInstances         30

# Set the user and group under which the server will run.
User                 ftp        # Utilisateur ftp a déclarer au niveau de l'OS
Group                ftp

# Normally, we want files to be overwriteable.
AllowOverwrite       off        # Les données ne sont accessible qu’en lecture !

# Bar use of SITE CHMOD by default
<Limit SITE_CHMOD>
  DenyAll                       #  Les données ne sont accessible qu’en lecture !
</Limit>

<Limit WRITE>
  DenyAll                       # Les données ne sont accessible qu’en lecture !
</Limit>

<Limit DIRS READ>
  AllowAll
</Limit>

#
# SQL Authentication
#
SQLAuthTypes           Plaintext                              # Les passwords sont en clairs.
SQLAuthenticate        users*
SQLConnectInfo         PimsDB@<servBD> pims_db_user pswd      # connexion a la base pour identification
SQLUserInfo            actor login passwd null null null null # table (actor) et champs pour authentification
SQLDefaultGID          65534
SQLDefaultUID          65534
SQLMinUserGID          100
SQLMinUserUID          500
SQLDefaultHomedir      null
RequireValidShell      off

TYPSoft

Ce serveur FTP ne permet pas d'authentification via une base de donnée. L'authentification par un utilisateur unique est donc nécessaire. Dans l'application,

Test de la configuration

Avant la configuration de l'authentification SQL, autoriser les connexions en anonymous et tenter de se connecter depuis une autre machine. Exécuter 'ftp [ftp_host]' depuis une console/terminal.

Puis ajouter l'authentification SQL et tenter de nouveau de se connecter avec cette fois ci le nom d'un utilisateur existant dans la base de données ePims (créé préalablement un utilisateur “à la main” dans la table actor).



(Continuez vers ⇒ configurationepims)