====== Instalação no CentOS ====== ===== Instalação dos pacotes ===== # yum install postgresql-server postgresql Inicializando o DataBase # postgresql-setup initdb Initializing database ... OK # systemctl start postgresql.service # systemctl enable postgresql.service ln -s '/usr/lib/systemd/system/postgresql.service' '/etc/systemd/system/multi-user.target.wants/postgresql.service' # systemctl status postgresql.service postgresql.service - PostgreSQL database server Loaded: loaded (/usr/lib/systemd/system/postgresql.service; enabled) Active: active (running) since Ter 2015-04-28 11:30:33 BRT; 2min 4s ago Main PID: 11864 (postgres) CGroup: /system.slice/postgresql.service ├─11864 /usr/bin/postgres -D /var/lib/pgsql/data -p 5432 ├─11865 postgres: logger process ├─11867 postgres: checkpointer process ├─11868 postgres: writer process ├─11869 postgres: wal writer process ├─11870 postgres: autovacuum launcher process └─11871 postgres: stats collector process Abr 28 11:30:33 pgsql.rascunhos.wiki.br systemd[1]: Started PostgreSQL database server. ===== Criando um usuário para administrar o DataBase ===== # su - postgres -bash-4.2$ psql psql (9.2.10) Digite "help" para ajuda. postgres=# CREATE USER gean WITH SUPERUSER LOGIN PASSWORD 'senha'; CREATE ROLE postgres=# \q -bash-4.2$ exit logout ===== Mudando a forma de altenticação para MD5 ===== # vim /var/lib/pgsql/data/pg_hba.conf [...] # TYPE DATABASE USER ADDRESS METHOD # "local" is for Unix domain socket connections only local all all md5 # IPv4 local connections: host all all 127.0.0.1/32 md5 # IPv6 local connections: host all all ::1/128 md5 [...] ===== Liberando o acesso externo ===== # vim /var/lib/pgsql/data/postgresql.conf [...] listen_addresses = '*' # what IP address(es) to listen on; [...] ===== Configuração do FirewallD ===== # firewall-cmd --add-rich-rule 'rule family="ipv4" source address="172.16.200.0/24" service name="postgresql" accept' --permanent success # firewall-cmd --reload success # firewall-cmd --list-all public (default, active) interfaces: enp0s3 sources: services: dhcpv6-client ssh ports: masquerade: no forward-ports: icmp-blocks: rich rules: rule family="ipv4" source address="172.16.200.0/24" service name="postgresql" accept ===== Testando o acesso ===== # systemctl restart postgresql.service # psql -U gean postgres Senha para usuário gean: psql (9.2.10) Digite "help" para ajuda. postgres=# \l Lista dos bancos de dados Nome | Dono | Codificação | Collate | Ctype | Privilégios de acesso -----------+----------+-------------+-------------+-------------+----------------------- postgres | postgres | UTF8 | pt_BR.UTF-8 | pt_BR.UTF-8 | template0 | postgres | UTF8 | pt_BR.UTF-8 | pt_BR.UTF-8 | =c/postgres + | | | | | postgres=CTc/postgres template1 | postgres | UTF8 | pt_BR.UTF-8 | pt_BR.UTF-8 | =c/postgres + | | | | | postgres=CTc/postgres (3 registros) postgres=# \q