Servidor FTP

Net_Holer

Power Member
Boas.

Queria criar no Ubuntu 8.04 um servidor de FTP para estar ligado 24h por dia.


Experimentei vários programas mas achei todos limitados, no windows estava habituado aos servidor de FTP ter montes de opções.


O que pretendia fazer era poder criar utilizadores que apenas podem fazer o download de ficheiros, mas queria fazer certas limitações:

- Escolher o limite de downloads para cada utilizador. Penso que se chamem quotas!?
Por exemplo, uma conta de utilizador (utilizador1, imaginemos) só podia fazer o download de 2 gygas de ficheiros no total, quando esse limite fosse atingido (obviamente que nao seria com uma so ligacao nem num so dia) o utilizador fosse informado disso.

- Limitar a velocidade de download do servidor de FTP para que o upload da minha ligação não seja todo "comido" por ele.

- Se possível fazer a conta ou a password da conta expirar ao fim de x dias (1 mês por exemplo)


Existe maneira de o fazer em linux, de certeza.

Alguém me sabe dizer como? Já tentei montes de programas que fui encontrando pelo google e no synaptic mas nenhum tem essas opções.


Se me pudessem ajudar ficava muito agradeçido :D

PS: Não, não é para nada de pirataria... enviar a 20Kb/s havia de ser bonito....
 
Última edição:
Pessoal experto do linux ninguem me sabe ajudar?

É que isto é uma coisa tão simples no windows (basta sacar o programa certo) e no linux não consigo encontrar nada. (Nao vale mandar voltar pro windows :-D)

Cumps.
 
A título de exemplo, na faq do ProFTPd
16. Bandwidth controlA new patch providing the TransferRate directive has been provided and is slated for inclusion in 1.2.8, this gives per-connection bandwidth limits with Class support. The limits are more effective against downloads than uploads.
There is no method to control the total bandwidth a single VirtualHost context can use.

....


18. How can I limit the size of uploaded files?

As of 1.2.7rc1 there are two new directives MaxRetrieveFileSize and MaxStoreFileSize to control the maximum size of files being transfered to or from the server.
e do vsftpd
Features

Despite being small for purposes of speed and security, many more complicated FTP setups are achievable with vsftpd! By no means an exclusive list, vsftpd will handle:
  • Virtual IP configurations
  • Virtual users
  • Standalone or inetd operation
  • Powerful per-user configurability
  • Bandwidth throttling
  • Per-source-IP configurability
  • Per-source-IP limits
  • IPv6
  • Encryption support through SSL integration
  • etc...
  • Por isso é de todo incorrecto dizer que são limitados... estão aptos para fazer as funções que pedes (e são os mais seguros do mercado). Agora convém é ler a documentação. Exemplo de um GUi para o vsftpd.
 
Última edição:
Por isso é de todo incorrecto dizer que são limitados... estão aptos para fazer as funções que pedes (e são os mais seguros do mercado). Agora convém é ler a documentação.

O Net_Holer já leu a documentação, já virou estes dois servidores de FTP (que, penso eu, são os mais utilizados em todo o mundo) de alto a baixo e acha que são limitados. Que é que podemos dizer ou sugerir?
 
AndreAPL muito obrigado pela ajuda, vou ver isso melhor pois escapou-me por completo e o meu "pouco à vontade" no linux também não ajuda muito. :-D



O Net_Holer já leu a documentação, já virou estes dois servidores de FTP (que, penso eu, são os mais utilizados em todo o mundo) de alto a baixo e acha que são limitados. Que é que podemos dizer ou sugerir?

Colega, não li toda a documentação, e sim virei de alto a baixo mas não encontrei... vais-me dar palmadas nas mãozinhas por não ter visto?


E respondendo à tua pergunta "Que é que podemos dizer ou sugerir?":


Podias, por exemplo, (se soubesses, e acredito que saibas) dizer qualquer piadola ou frase sarcástica, irónica, etc mas no fim dizeres algo como "olha que tem, vê a documentação" ou algo como "o programa x faz isso que conheco um gajo que ja usou". Isso sim é proveitoso.


É que isto de se saber de linux e mostrar aos outros que se sabe é bom, mas ajudar os outros mesmo que se saiba que não fizeram 100% bem a sua pesquisa pelo pretendido é que é o essencial num fórum de "Dúvidas e Suporte Técnico", neste caso de linux.

Cumprimentos.
 
Peço desde já desculpa por estar a "invadir" este topico com outra pergunta, mas evito assim a criar um que porvavelmente iria ser bloqueado pouco tempo depois..

A dúvida é a seguinte, instalei o proftpd (apt-get install proftpd), mas quando abro o ficheiro /etc/proftpd.conf, este está vazio. Já li ene tutoriais de configuração deste e de outros ftps, e acontece-me o mesmo em todos, não sou muito entendido em linux talvez esteja a cometer um erro basico.

PS: estou a usar debian.

Cumprimentos e obrigado
 
Dá uma olhada aqui para um tutorial em como instalar o ProFTPD em Ubuntu: http://www.howtoforge.com/setting-up-proftpd-tls-on-ubuntu-8.10. Os passos para Debian deverão ser os mesmos ou análogos.

Não tenho nenhum FTP em Debian mas noutros FTPs tipo o PureFTPD copias um ficheiro de exemplo que é dado na instalação e partes dai.

Tenta ver se existe um man proftpd.conf.

De qualquer das formas deixo-te o proftpd.conf que Gentoo tem como exemplo:

Código:
# 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" and "ftp" for normal operation and anonymous access.

ServerName            "ProFTPD Default Installation"
ServerType            standalone
DefaultServer        on
RequireValidShell    off
AuthPAM                off
AuthPAMConfig        ftp
# Port 21 is the standard FTP port.
Port                21

# Umask 022 is a good standard umask to prevent new dirs and files
# from being group and world writable.
Umask                022

# To prevent DoS attacks, set the maximum number of child processes
# to 30. If you need to allow more than 30 concurrent connections
# at once, simply increase this value. Note that this ONLY works
# in standalone mode, in inetd mode you should use an inetd server
# that allows you to limit the maximum number of processes per service
# (such as xinetd).
MaxInstances        30

# Set the user and group under which the server will run.
User                proftpd
Group                proftpd

# Normally, we want files to be overwriteable.
<Directory />
    AllowOverwrite        on
</Directory>

# A basic anonymous configuration, with no upload directories.
<Anonymous ~ftp>
    User                ftp
    Group                ftp

    # We want clients to be able to login with "anonymous" as well as "ftp".
    UserAlias            anonymous ftp

    # Limit the maximum number of anonymous logins.
    MaxClients            10

    # We want 'welcome.msg' displayed at login, and '.message' displayed
    # in each newly chdired directory.
    DisplayLogin            welcome.msg
    DisplayFirstChdir        .message

    # Limit WRITE everywhere in the anonymous chroot.
    <Limit WRITE>
        DenyAll
    </Limit>
</Anonymous>
 
Back
Topo