Instalando e customizando o Proftpd

Colaboração: André Jaccon

Neste artigo daremos um exemplo de instalação e configuração do servidor de FTP Proftpd no Debian Gnu/Linux.

Considerações iniciais:

Sistema Operacional usado para este artigo Debian Gnu/Linux 3.0 R4, kernel 2.4.28

Hardware: Pentium III 500 Mhz, 128 MB Ram 40 GB de HD.

Distribuição das partições no sistema do servidor de FTP ( O particionamento deverá ser planejado de acordo com as necessidades da empresa junto ao servidor de FTP ).

  /boot - 30 MB
  /swap - 256 MB
  /var - 10 GB
  /usr - 2GB
  /home - 27 GB ( partição no qual iremos usar para armazenar as contas de FTP )

Instalação:

A instalação do servidor de FTP Proftpd é aparentemente simples, em nosso caso usaremos o apt-get para baixar os pacotes necessários, para isso entre como super-usuário logo após abra um terminal e execute os comandos abaixo:

  # apt-cache search profptd

Verifique se a lista de mirrors configurada em seu Apt-Get possui o pacote proftpd caso não adicione as linhas abaixo em seu arquivo /etc/apt/sources.list:

  deb http://security.debian.org/ stable/updates main
  deb http://fsbox.org/mirror-debian debs/
  deb http://ftp.br.debian.org/debian/ testing main
  deb-src http://ftp.br.debian.org/debian/ testing main

Atualize a base de arquivos do Apt-Get com o comando:

  # apt-get update

Tendo os mirrors adicionados em seu Apt-Get com o devido pacote necessário, execute o comando abaixo para instalar o Proftpd:

  # apt-get install proftpd

O pacote será instalado e logo após da ser concluida o backend Debconf fará algumas perguntas no qual você deverá responder para configurar o Proftpd em seu sistema, a primeira é:

  Run proftpd from inetd or standalone ?

Caso queira que o proftpd seja configurado sob o "super daemon" Inetd selecione com o cursor e tecle "Enter", caso queira usar o proftpd como Daemon selecione "standalone" e tecle "Enter".

Dica: Caso você tenha muitos aplicativos que estão configurados para rodar pelo Inetd e você irá efetuar muitos testes no que diz reiniciar o Proftpd muitas vezes até ficar de acordo com suas necessidades, acho melhor você configurar o Proftpd para iniciar pelo próprio daemon proftpd.

Abaixo, um exemplo de arquivo de configuração do Protftpd:

  # =======================================
  # Exemplo do arquivo /etc/proftpd.conf
  # Neste arquivo tentei exemplificar um modelo de arquivo
  # no qual possui requisitos mínimos de segurança.
  # Caso queira customizar o proftpd.conf aconselho ler o Man Page
  # ou consultar o site do projeto.
  # André Jaccon
  # =======================================
  
  # This is a basic ProFTPD configuration file (rename it to
  # 'proftpd.conf' for actual use. It establishes a single server
  # and a single anonymous login. It assumes that you have a user/group
  # "nobody/nogroup" and "ftp" for normal operation and anon.
  
  ServerName "Meu Servidor de FTP"
  ServerType standalone
  DeferWelcome off
  ServerIdent off
  
  MultilineRFC2228 on
  DefaultServer on
  ShowSymlinks on
  AllowOverwrite on
  
  DirFakeUser on
  DirFakeGroup on
  
  TimeoutNoTransfer 600
  TimeoutStalled 600
  TimeoutIdle 1200
  
  DisplayLogin welcome.msg
  DisplayFirstChdir .message
  ListOptions "-l"
  
  DenyFilter \*.*/
  
  WtmpLog off
  SystemLog /var/proftpd/proftpd.log
  TransferLog /var/proftpd/xferlog
  
  Port 21
  
  MaxInstances 30
  
  User nobody
  Group nogroup
  DefaultRoot ~ # chroot Jail support
  Umask 022 022
  
  AllowOverwrite on
  
  ##proftpd.deb anon access##
  ##proftpd.deb anon access## User ftp
  ##proftpd.deb anon access## Group nogroup
  ##proftpd.deb anon access## # We want clients to be able to login with "anonymous" as well as "ftp"
  ##proftpd.deb anon access## UserAlias anonymous ftp
  ##proftpd.deb anon access##
  ##proftpd.deb anon access## RequireValidShell off
  
  RequireValidShell off
  #AuthUserFile /etc/proftpd/passwd.proftpd
  
  ##proftpd.deb anon access##
  ##proftpd.deb anon access## # Limit the maximum number of anonymous logins
  ##proftpd.deb anon access## MaxClients 10
  ##proftpd.deb anon access##
  ##proftpd.deb anon access## # We want 'welcome.msg' displayed at login, and '.message' displayed
  ##proftpd.deb anon access## # in each newly chdired directory.
  ##proftpd.deb anon access## DisplayLogin welcome.msg
  ##proftpd.deb anon access## DisplayFirstChdir .message
  ##proftpd.deb anon access##
  ##proftpd.deb anon access## # Limit WRITE everywhere in the anonymous chroot
  ##proftpd.deb anon access##
  ##proftpd.deb anon access##
  ##proftpd.deb anon access## DenyAll
  ##proftpd.deb anon access##
  ##proftpd.deb anon access##
  ##proftpd.deb anon access##
  ##proftpd.deb anon access## # Uncomment this if you're brave.
  ##proftpd.deb anon access## #
  ##proftpd.deb anon access## # # Umask 022 is a good standard umask to prevent new files and dirs
  ##proftpd.deb anon access## # # (second parm) from being group and world writable.
  ##proftpd.deb anon access## # Umask 022 022
  ##proftpd.deb anon access## #
  ##proftpd.deb anon access## # DenyAll
  ##proftpd.deb anon access## #
  ##proftpd.deb anon access## #
  ##proftpd.deb anon access## # AllowAll
  ##proftpd.deb anon access## #
  ##proftpd.deb anon access## #
  ##proftpd.deb anon access##
  ##proftpd.deb anon access##


Como criar uma empresa de sucesso

Conheça algumas das táticas que a Microsoft emprega para ter sucesso nos negócios.

Artigo publicado no Seattle Weekly