Pular para o conteúdo

Pure-ftpd: Servidor de FTP com MySQL, quota e usuários virtuais

Este artigo demonstra de forma didática, como ter um servidor de FTP no Linux robusto e confiável, integrado com MySQL.
Emerson Araujo araujoprog
Hits: 42.010 Categoria: Linux Subcategoria: Internet
  • Indicar
  • Impressora
  • Denunciar
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

Preparando o ambiente

Bom, primeiramente quero agradecer a oportunidade de estar escrevendo meu primeiro artigo no VOL, espero que possa ajudar várias pessoas. A intenção de escrever este artigo surgiu depois de "lutar" bastante para configurar um servidor de FTP que fosse fácil de gerenciar (afinal nem sempre estou com saco pra ouvir o pessoal do comercial pedir pra criar conta de FTP) e robusto ao mesmo tempo.

Um amigo meu havia instalado, mas eu precisava entender seu funcionamento, então resolvi desinstalar e instalar tudo novamente. Apanhei muito mas consegui, pois os tutoriais disponíveis sempre deixam de fora pequenos detalhes, e por incrível que pareça são justamente esses pequenos detalhes que impedem o serviço de funcionar do jeito que queremos.

Pure-Ftpd - Servidor com foco em segurança

Como diz o próprio site do pure-ftpd, ele foi desenvolvido pensando em segurança, daí ele tem inúmeras vantagens, como suporte a SSL/TLS, usuários virtuais e outros que veremos a seguir.

Os sistemas utilizados foram Ubuntu Linux 8.04 e 8.10, ambos funcionaram perfeitamente.

Instalando o software necessário

Neste artigo utilizaremos o MySQL como base de dados para autenticação dos usuários, logo se você não o tem instalado, seguem os comandos:

(só pra lembrar # = root)

# apt-get install mysql-server mysql-client

Durante a instalação deve ser questionado a senha do usuário root do MySQL, se por acaso acontecer execute:

# mysqladmin -u root password senha (substituir "senha" pela senha de sua preferência)

Pronto, temos o servidor MySQL rodando (se não deu nenhum erro rsrsrs).

Vamos partir então para a instalação do Pure-ftpd, no caso do Ubuntu o mesmo está nos repositórios, portanto não há dificuldade na instalação, bastando somente escolher o pacote com suporte ao MySQL.

Para instalar o pure-ftpd com suporte ao MySQL execute o seguinte comando:

# apt-get install pure-ftpd-mysql

Se durante a instalação for questionado sobre o modo de execução (inetd ou standalone), escolha standalone, a segunda pergunta é só responder "no" (yes = root e não queremos rodar ele como root).

Pronto, se deu tudo certo já temos instalados todos os softwares necessários para a configuração do nosso servidor FTP.

O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.
   1. Preparando o ambiente
   2. Configuração do pure-ftpd
Nenhum artigo encontrado.

Instalando e configurando o aMule (Debian)

Configurando o a1200i Motorola Motoming para acessar internet em seu Linux Slackware

Como configurar uma rádio virtual no Linux (Fedora Core 4)

Configurando a internet e compartilhando a rede local, com o Kurumin 6 (IPs estáticos)

Texto puro - BitchX - cliente IRC

#1 Comentário enviado por alexandre.nas em 14/11/2008 - 00:51h
Gostaria de saber se esse FTP permite a geração de logs de FTP para cada usuário. Por exemplo: O usuário teste publica seus arquivos e será gerado um arquivo em /var/log/pure-ftpd/teste.log.

Obrigado!
#2 Comentário enviado por araujoprog em 17/11/2008 - 22:10h
Amigo ele gera os logs em arquivo unico, mas detalhado por usuários.
#3 Comentário enviado por dramos em 10/04/2009 - 22:24h
Olá, primeiramente obrigado pelo tutorial, está muito bem explicado, o que é ótimo para mim que sou inciante em linux. vamos lá..... Fiz tudo exatamente como a explicação, não deu erro nenhum, mas nao ta funfando.... nem encontra o host, estou tentando conectar de outro micro pela rede local mesmo (192.168.1.XXX), será que tem que liberar algo a mais?
#4 Comentário enviado por killer_val em 30/01/2010 - 13:54h
ola belo tuto deu tudo certinho
agora como que faz para add mais usuarios tem algum script ou software
#5 Comentário enviado por calangoloco em 24/01/2013 - 09:14h
Testado e aprovado no Debian 6
#6 Comentário enviado por Carlos_Cunha em 15/07/2013 - 18:04h
Quem tiver com problemas na hora da criação da DATABASE na ultima linha no tipo de BASE ") TYPE=MyISAM;", isso pode ser(pelo menos comigo) pq nas versões mais novas do Msyql(usando 5.5) para determinar um tipo da DB de usa dessa forma ") ENGINE=MyISAM;" , ajustando isso funcionou.

Obrigado pelo HOW TO :-D

Usado em Debian 7 64Bits
#7 Comentário enviado por allanbarcelos em 20/03/2014 - 02:07h
existe uma forma de fazer um update ou um insert existe algum comando no pure-ftpd ?
#8 Comentário enviado por removido em 06/03/2022 - 19:18h

estamos no ano de 2022 e mysql apresenta o seguinte erro de version:
GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP ON pureftpd.* TO 'pureftpd'@'localhost' IDENTIFIED BY 'senha';
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'IDENTIFIED BY 'senha' at line 1

alguem sabe porque?
#9 Comentário enviado por allanbarcelos em 06/03/2022 - 19:49h
Tenta assim:

GRANT ALL PRIVILEGES ON 'pureftpd'.* TO 'pureftpd'@'localhost' IDENTIFIED BY 'senha';

So vim responder porque você ressuscitou um tópico com 14 anos :)

Contribuir com comentário

Entre na sua conta para comentar.