« DBMS/PostgreSQL/Brief » : différence entre les versions
(Page créée avec « == Ajouter un compte utilisateur et fixer les permissions des bases de données == === Ajouter un utilisateur Linux/UNIX appelé koji === Les commandes suivantes vont aj... ») |
Aucun résumé des modifications |
||
| Ligne 7 : | Ligne 7 : | ||
# passwd koji | # passwd koji | ||
=== Devenir le super-utilisateur === | === Devenir le super-utilisateur postgres === | ||
Ici nous avons besoin de se connecter avec le compte super-utilisateur du serveur PostgreSQL. Le plus simplement en devenant l'utilisateur propriétaire du processus PostgreSQL depuis le compte super-utilisateur du système: root. | Ici nous avons besoin de se connecter avec le compte super-utilisateur du serveur PostgreSQL. Le plus simplement en devenant l'utilisateur propriétaire du processus PostgreSQL depuis le compte super-utilisateur du système: root. | ||
| Ligne 14 : | Ligne 14 : | ||
=== Ajout de l'utilisateur koji === | === Ajout de l'utilisateur koji === | ||
$ createuser koji | $ createuser koji | ||
=== Mise en place d'un mot de passe pour l'utilisateur koji === | |||
$ psql | |||
postgres=# ALTER USER shinken WITH PASSWORD 'shinkenpasswd'; | |||
ALTER ROLE | |||
=== Ajout de la base de données koji === | === Ajout de la base de données koji === | ||
On ajoute une base de données nommée koji et on l'affecte à l'utilisateur postgres koji | On ajoute une base de données nommée koji et on l'affecte à l'utilisateur postgres koji | ||
| Ligne 31 : | Ligne 37 : | ||
Il faut remplacer localhost par *, et PostgreSQL se mettra à l'écoute sur toutes les interfaces réseaux. Il est possible de spécifier plusieurs adresses IP ( séparées par un espace ). | Il faut remplacer localhost par *, et PostgreSQL se mettra à l'écoute sur toutes les interfaces réseaux. Il est possible de spécifier plusieurs adresses IP ( séparées par un espace ). | ||
Fichier <path>/var/lib/pgsql/data/ | Fichier <path>/var/lib/pgsql/data/postgresql.conf</path> | ||
<pre> | <pre> | ||
listen_addresses = '*' | listen_addresses = '*' | ||
| Ligne 37 : | Ligne 43 : | ||
</pre> | </pre> | ||
Autoriser la connexion distante depuis l'adresse IP 192.168.0.148 avec l'utilisateur shinken | Autoriser la connexion distante depuis l'adresse IP 192.168.0.148 avec l'utilisateur shinken ( connexion avec mot de passe ) | ||
Fichier <path>/var/lib/pgsql/data/pg_hba.conf</path> | Fichier <path>/var/lib/pgsql/data/pg_hba.conf</path> | ||
<pre> | <pre> | ||
# TYPE DATABASE USER CIDR-ADDRESS METHOD | # TYPE DATABASE USER CIDR-ADDRESS METHOD | ||
host all shinken 192.168.0.148/32 | host all shinken 192.168.0.148/32 md5 | ||
</pre> | </pre> | ||
Version du 4 mars 2013 à 14:09
Ajouter un compte utilisateur et fixer les permissions des bases de données
Ajouter un utilisateur Linux/UNIX appelé koji
Les commandes suivantes vont ajouter un utilisateur standard au système
# adduser koji # passwd koji
Devenir le super-utilisateur postgres
Ici nous avons besoin de se connecter avec le compte super-utilisateur du serveur PostgreSQL. Le plus simplement en devenant l'utilisateur propriétaire du processus PostgreSQL depuis le compte super-utilisateur du système: root.
# su - postgres
Ajout de l'utilisateur koji
$ createuser koji
Mise en place d'un mot de passe pour l'utilisateur koji
$ psql postgres=# ALTER USER shinken WITH PASSWORD 'shinkenpasswd'; ALTER ROLE
Ajout de la base de données koji
On ajoute une base de données nommée koji et on l'affecte à l'utilisateur postgres koji
$ createdb -O koji koji
Accès distant
Par ssh
Le moyen le plus simple ( et surtout le plus sécurisé ) est de se connecter en ssh.
En effet Mettre le démon PostgreSQL à l'écoute du réseau LAN/WAN est considérer comme une faille de sécurité.
Configurer l'écoute du démon
Il est toutefois possible de configurer PostgreSQL afin qu'il écoute d'autres interfaces réseaux que la boucle local ( lo ).
Il faut remplacer localhost par *, et PostgreSQL se mettra à l'écoute sur toutes les interfaces réseaux. Il est possible de spécifier plusieurs adresses IP ( séparées par un espace ).
Fichier <path>/var/lib/pgsql/data/postgresql.conf</path>
listen_addresses = '*' port = 5432
Autoriser la connexion distante depuis l'adresse IP 192.168.0.148 avec l'utilisateur shinken ( connexion avec mot de passe )
Fichier <path>/var/lib/pgsql/data/pg_hba.conf</path>
# TYPE DATABASE USER CIDR-ADDRESS METHOD host all shinken 192.168.0.148/32 md5
Redémarrage de PostgreSQL
systemctl restart posgresql
ou
service postgresql restart
Test
Depuis un poste distant on teste:
$ psql -h <HOST> -U <USER> -W <DATABASE>
- -h <HOST>: spécifier l'hôte distant
- -U <USER>: spécifier l'utilisateur distant
- -W: forcer la demande du mot de passe
- <DATABASE>: spécifier la base
exemple
$ psql -h koji.b2pweb.com -U shinken -W koji