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?
- A base de dados onde estão as informações dos meus clientes é MongoDB, onde estou centralizando todas as informações.
- 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.