Instalação do PostgreSQL com Apache 2, PHP 5, OpenSSL no Debian Wheezy 7.7 64 bits com systemd e chroot

Instalação praticamente completa, feita majoritariamente em linha de comando.

[ Hits: 27.989 ]

Por: Buckminster em 10/11/2014


PostgreSQL



Esta instalação do PostgreSQL, última versão, pode ser executada também mesmo sem ser como chroot, assim tu terás o PostgreSQL mais atual do que aquele do aptitude ou apt-get do Debian.

Estando ainda como chroot: instalando pacotes gerais e necessários:

# aptitude install build-essential libaal-dev wget liblzo2-dev gzip libncurses5 libncurses5-dev dpatch udev

# apt-get install apt-transport-https #Para o APT entender HTTPS.

Crie o arquivo:

# vim /etc/apt/sources.list.d/pgdg.list #Usei o Vim; tu uses o teu editor de texto preferido.

Coloque dentro do arquivo:

deb https://apt.postgresql.org/pub/repos/apt/ wheezy-pgdg main

Salve e saia.

# wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | apt-key add - #Instalando a chave; deverá terminar com OK.
# apt-get update

Instalando dependências para o pgAdmin 3:

# aptitude install libcanberra-gtk-module libatk1.0-dev libglib2.0-dev libgtk2.0-dev libpango1.0-dev

Aqui uma advertência, não sei até que ponto a instalação desses pacotes interfere na segurança, mas acredito que não tenha impacto nenhum, pois o chroot previne qualquer acesso externo.

# aptitude install postgresql-9.3 postgresql-server-dev-9.3 pgadmin3

Iniciando o PostgreSQL:

# /etc/init.d/postgresql start

Saia do chroot:

# exit

Execute:

# xhost +

Dará o aviso:

  access control disabled, clients can connect from any host

Entre no chroot:

# chroot /var/chroot

Para abrir o pgAdmin 3 digite no terminal:

# pgadmin3 #Teste a instalação abrindo e fechando o pgAdmin 3 e saia do chroot.

# exit
# xhost -

Dará o aviso:

  access control enabled, only authorized clients can connect

Antes de entrar no chroot, tu deves executar o comando xhost +, para habilitar o acesso ao GTK e poder abrir o pgAdmin 3; e depois que sair do chroot, execute sempre xhost - para desabilitar.

Tu podes também criar um arquivo na máquina real para iniciar o PostgreSQL dentro do chroot durante o boot do sistema, mas veja bem, daí tu não precisas colocar o PostgreSQL para iniciar com o chroot.

Para isso, saia do chroot e crie um novo arquivo:

# exit
# vim /etc/init.d/postgreschroot #Dê o nome que quiser.

Dentro deste arquivo, adicione o seguinte:

#!/bin/sh
mount --bind /proc/ /var/chroot/proc
chroot /var/chroot  /etc/init.d/postgresql start

Salve, saia e dê permissão de execução a este script que acabamos de criar e use o update-rc.d para adicioná-lo à sequência de inicialização:

# chmod +x /etc/init.d/postgreschroot
# update-rc.d postgreschroot start 29 2 3 4 5 .

Verificando:

# updatedb
# locate K01postgreschroot

E veja se o arquivo postgreschroot está na listagem apresentada. Deverá estar em: rc0.d, rc1.d e rc6.d.

Aconselho a desinstalar ou desabilitar o PostgreSQL no sistema real, para evitar confusões.

Página anterior     Próxima página

Páginas do artigo
   1. Introdução
   2. chroot
   3. PostgreSQL
   4. Apache 2
   5. PHP 5
   6. Conclusão
Outros artigos deste autor

Manual do IPtables - Comentários e sugestões de regras

Instalação do Ventoy, programa para criar pendrives inicializáveis

Tradução do artigo do filósofo Gottfried Wilhelm Leibniz sobre o sistema binário

Instalação do PAP (PostgreSL, Apache2 e PHP7) no Debian Jessie

Manual traduzido do Squid - Parte 2

Leitura recomendada

DJVU o formato que pode ameaçar o reinado do PDF

Instalando OpenBSD no vmware

Compartilhando a tela do Computador no Celular via Deskreen

FreeIPA - uma solução integrada de identidade e autenticação para ambientes de rede Linux/UNIX

Por quê?

  
Comentários
[1] Comentário enviado por danniel-lara em 11/11/2014 - 08:18h

Parabéns muito bom o artigo
principalmente a parte do chroot

[2] Comentário enviado por Buckminster em 11/11/2014 - 13:38h


[1] Comentário enviado por danniel-lara em 11/11/2014 - 08:18h:

Parabéns muito bom o artigo
principalmente a parte do chroot


Obrigado conterrâneo.

[3] Comentário enviado por Tacioandrade em 14/11/2014 - 00:00h

Amigo uma duvida sobre o chroot, gostaria de instalar o chroot apenas para alguns usuários do sistema, para que ao invés do ftp o meu cliente possa enviar os arquivos via sftp para seu /home/usuário.

No seu caso o /var/chroot/dev por exemplo vai ser usado por todos os usuários do sistema que logarem via ssh como o /dev padrão, seria isso?


Agradeço desde já. =)

[4] Comentário enviado por Buckminster em 14/11/2014 - 06:48h


[3] Comentário enviado por Tacioandrade em 14/11/2014 - 00:00h:

Amigo uma duvida sobre o chroot, gostaria de instalar o chroot apenas para alguns usuários do sistema, para que ao invés do ftp o meu cliente possa enviar os arquivos via sftp para seu /home/usuário.

No seu caso o /var/chroot/dev por exemplo vai ser usado por todos os usuários do sistema que logarem via ssh como o /dev padrão, seria isso?


Agradeço desde já. =)


Sim. No artigo o chroot encapsula toda instalação que for colocada dentro dele.

Para o que tu quer fazer teria que criar o usuário dentro do chroot. Veja os links abaixo para te dar uma idéia:

http://www.thegeekstuff.com/2012/03/chroot-sftp-setup

https://wiki.archlinux.org/index.php/SFTP_chroot

http://fabricafiles.blogspot.com.br/2010/04/vsftpd-com-usuarios-em-chroot.html

[5] Comentário enviado por Tacioandrade em 14/11/2014 - 13:41h


[4] Comentário enviado por buckminster em 14/11/2014 - 06:48h:


[3] Comentário enviado por Tacioandrade em 14/11/2014 - 00:00h:

Amigo uma duvida sobre o chroot, gostaria de instalar o chroot apenas para alguns usuários do sistema, para que ao invés do ftp o meu cliente possa enviar os arquivos via sftp para seu /home/usuário.

No seu caso o /var/chroot/dev por exemplo vai ser usado por todos os usuários do sistema que logarem via ssh como o /dev padrão, seria isso?


Agradeço desde já. =)

Sim. No artigo o chroot encapsula toda instalação que for colocada dentro dele.

Para o que tu quer fazer teria que criar o usuário dentro do chroot. Veja os links abaixo para te dar uma idéia:

http://www.thegeekstuff.com/2012/03/chroot-sftp-setup

https://wiki.archlinux.org/index.php/SFTP_chroot

http://fabricafiles.blogspot.com.br/2010/04/vsftpd-com-usuarios-em-chroot.html


Perfeito cara era exatamente isso que eu queria. =D No caso pensei em dar um ssh básico inicialmente com o nano, ls, etc para meus "clientes", porem olhando isso vi que poderia abrir falhas de segurança, como por exemplo poder para que o usuário usasse algum exploit para subir de permissões e quem sabe danificar o servidor.

Obrigado mesmo pelos tutoriais ajudará demais.

PS: Estou montando um mini curso para o evento de nginx com múltiplos domínios + SFTP + Fail2Ban, assim que terminar farei um tutorial e colocarei aqui no Viva o Linux. =D

[6] Comentário enviado por Buckminster em 15/11/2014 - 23:51h

Tacioandrade;

de nada.

Será bem vindo teu tutorial.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts