Back-End

27 set, 2010

Criando um servidor FTP com Python

Publicidade

Semana passada, escrevi um artigo sobre como criar um Daemon HTTP via Python. Hoje, vamos ver como criar um servidor de FTP.

Onde podemos usar e por que fazer um servidor de FTP?

Nos dias de hoje, no mundo Linux, temos alguns servidores de FTP muito bons (vsftpd, proftpd e outros), mas quando vamos para o ambiente Microsoft Windows não conheço muitos servidores leves. Por esse motivo, acho muito interessante termos alguma solução para esse ambiente usando Python.

Vou explicar como fazer o daemon, depois vai da criatividade de cada um de como aplicar no dia a dia.

Tenho um cluster de servidores onde rodo sistemas de cliente – a parte de FTP rodava com vsFTPd, hoje está rodando com um daemon em Python, o mesmo que vamos fazer aqui no artigo, só que trabalho com uma base de usuário no MongoDB (usuário, senha e pasta).

Por que eu migrei de vsFTPd para um daemon em Python?

  1. A base de dados onde estão as informações dos meus clientes é MongoDB, onde estou centralizando todas as informações.
  2. Consigo fazer meu daemon interagir com outros aplicativos Python que rodam no meu servidor

Para escrever este artigo, vamos usar a biblioteca pyftpdlib, que é mantida pelo Giampaolo Rodola.