projetos | download | linux | privacidade | contato
 
  Produtos | Documentação | Suporte | Treinamento | Conectiva | Cases | Soluções | Parcerias | Imprensa | Oportunidades
Pesquise 
português 
english 
español

SUPORTE

->Suporte Estendido
->Centros de Serviços
->Técnicos Certificados
->Formulário de Suporte
->Abrangência do Suporte
->Acionando o Suporte
->Perguntas e Respostas
->Atualizações
->Livros, Guias e Manuais
->Hardware

    9.4. Como configurar o wuftp pelo linuxconf e no arquivo?

    ### Versão 7.0 ###

    A primeira coisa a fazer é verificar se os pacotes necessários estão instalados:

        [root@localhost]#   rpm -qa | grep ftp
        anonftp-3.0-4cl
        wu-ftpd-2.6.1-1cl
        linuxconf-wuftpd-1.21r8-7cl
    


    Deverá aparecer pelo menos estes três pacotes. Se algum deles não aparecer, então será necessários instalar o pacote (ou pacotes) que está faltando. É preciso montar o CD 1 do Conectiva Linux:

        [root@localhost]#   mount /mnt/cdrom
        [root@localhost]#   cd /mnt/cdrom/conectiva/RPMS
    


    Agora é só instalar os pacotes que estão faltando:

        [root@localhost]# rpm -ivh anonftp*
        [root@localhost]# rpm -ivh wu-ftpd*
        [root@localhost]# rpm -ivh linuxconf-wuftpd*
    


    Execute o comando rpm como acima para cada pacote a ser instalado. Após instalar, verifique se existe a linha :

        ftp     21/tcp
    


    no arquivo /etc/services, pois é onde está sendo definida a porta de ftp. Verifique se a mesma não está comentada (tire o # da frente da linha, se este caracter existir). E também, verificar se a linha abaixo, do arquivo /etc/inetd.conf está descomentada/habilitada.

        ftp stream  tcp nowait  root    /usr/sbin/tcpd  in.ftpd -l -a
    


    Caso não esteja, basta descomentar e reinicializar o serviço inet:

        [root@localhost]#   cds
        [root@localhost]#   ./inet stop
        [root@localhost]#   ./inet start
    


    Pronto, seu servidor de ftp está em funcionamento, com as configurações básicas (padrões). Agora é preciso executar o linuxconf para configurar/personalizar o servidor de ftp:

        [root@localhost]#   linuxconf
    


    Vá em:

    Configuração+Ambiente de rede+Wu-ftp - servidor de ftp+Configuração básica

    Na aba "Diversos" existe as seguintes opções:

    "Email do administrador": endereço de correio eletrônico do administrador do sistema.

    "Grupo de convidados": aqui você pode informar o grupo do Linux ao qual o usuário anonymous pertencerá. Se este campo não for preenchido, o grupo nobody será utilizado.

    "Arquivo de banner": o conteúdo do arquivo de banner será mostrado aos usuários no momento em que os mesmos acessarem com sucesso o seu servidor.

    "Mensagem de encerramento": se o arquivo informado existir, sempre que um usuário tentar acessar o servidor, seu conteúdo será mostrado e o servidor irá fechar a conexão.

    "Permitir acesso anônimo": aqui você pode permitir ou proibir os acessos anônimos (por isso o pacote anonftp-3.0-4cl deve estar instalado).

    Agora, na aba "Controles de acesso" existe três classes de usuários:

    "Usuários reais": controle de acesso dos usuários reais do seu sistema. Esses são os usuários que têm contas em sua rede.

    "Usuários convidados": controle de acesso a usuários convidados.

    "Anônimos": controle de acesso de usuários que se conectam anonimamente.

    As opções disponíveis para cada grupo são idênticas. As opções disponíveis são:

    "pode requisitar arquivos comprimidos": define se o usuário pode requisitar que seus arquivos sejam compactados. O WU-FTPD permite a compactação de arquivos durante a transmissão.

    "pode requisitar arquivos tar": especifica se o usuário tem permissão de solicitar o arquivamento de arquivos transmitidos com o tar.

    "pode usar chmod para arquivos":especifica se o usuário pode modificar as permissões de arquivos localizados no servidor FTP.

    "pode excluir arquivos": define se o usuário tem permissão de apagar arquivos localizados no servidor FTP.

    "pode atualizar arquivos": define se o usuário pode sobrescrever arquivos no servidor.

    "pode renomear arquivos": especifica se o usuário pode modificar o nome dos arquivos localizados no servidor.

    "registrar transferências recebidas": especifica se o servidor deve manter um registro de arquivos recebidos.

    "registrar transferências expedidas": especifica se o servidor deve manter um registro de arquivos enviados.

    Na aba "Vários tempos de espera" pode-se deixar os tempos padrões ou alterar conforme o necessário.

    Clique em "Aceitar" e saia do linuxconf.

    Servidores Virtuais ===================

    Para a criação de domínios virtuais (Virtual hosts) é necessário que o seu servidor deve estar com seu nome cadastrado como válido no servidor de nomes (DNS).

        [root@localhost]#   linuxconf
    

    Vá em:

    Configuração -> Ambiente de rede -> Wu-ftp - servidor de ftp -> Máquinas virtuais

    Clique em adicionar.

    Nos campos:

    "Máquina virtual": digite o nome da máquina (virtual machine).

    "Caminho do arquivamento": diretório para acesso do servidor de ftp.

    "Arquivo da mensagem de banner": nome do arquivo de banner.

    "Arquivo de registro": nome do arquivo de registro.

    Clique em "Aceitar" e saia do linuxconf. Se o seu DNS estiver funcionando corretamente o novo nome para o ftp virtual funcionará sem problemas.

    Caso seja necessária alguma outra configuração específica que não exista no linuxconf, pode-se editar diretamente o arquivo de configuração. Primeiramente faça a checagem dos pacotes instalados e inet configurado e startado conforme indicado no início deste documento. Depois disso, o seu servidor de ftp está em funcionamento, com as configurações básicas (padrões).

    --------------------------------------------------------------------------

    Aqui vão as descrições de algumas opções mais relevantes que são adicionadas ao arquivo /etc/ftpaccess (arquivo mais importante) que podem ser encontradas na documentação (man ftpaccess).

    Para maiores configurações, deve-se utilizar-se dos seguintes arquivos : =----------------------

    ############################################################################################

    /etc/ftpaccess < -------- Configurações gerais do servidor. Exemplo:

    # Define uma classe de usuários: reais, convidados e anônimos

        class   all         real,guest,anonymous    *
        class   rmtusers    guest,anonymous         *
        class   local       real                    *
        =----------------------
        =----------------------
    


    # Para restringir o acesso de usuários reais, basta retirar o real da linha anterior

    # Para restringir o acesso de usuários convidados, basta retirar o guest da linha anterior

    # Para restringir o acesso de usuários anônimos, basta retirar o anonymous da linha anterior

    # É possível restringir o acesso de tipos de usuários de um certo domínio : class renegados real !*.domínio.com.br

    # O "!" funciona como negação e renegados = o nome da classe

    # Para limitar o número máximo de usuários conectados simultaneamente, por

    # classe:

    # Onde < class > é a classe na qual deseja-se limitar

    # < n > é o número máximo de usuários

    # < arquivo_de_mensagem > é a mensagem a ser exibida caso a conexão seja

    # negada limit < class > < n > Any < arquivo_de_mensagem >

    # Proíbe qualquer máquina do domínio conectiva.com.br de efetuar login e

    # exibe o arquivo /etc/wu-ftpd/access_deny_msg deny *.conectiva.com.br /etc/wu-ftpd/access_deny_msg

    # Proíbe que as máquinas/domínios listados no arquivo

    # /etc/wu-ftpd/deny_hosts efetuem login e exibe a mensagem contida no

    # arquivo /etc/wu-ftpd/access_deny_msg deny /etc/wu-ftpd/deny_hosts /etc/wu-ftpd/access_deny_msg

    # Definição de grupos de convidados, mesmo sendo um usuário real, caso o

    # grupo do mesmo esteja na lista de guestgroup a sessão de ftp dele será

    # automaticamente passada para uma sessão anônima guestgroup users

    # Define um usuário convidado. No /etc/passwd deve estar definido o seu

    # diretório root e também o $HOME deste usuário ao utilizar o ftp. Esses

    # diretórios devem ser separados por "/./", por exemplo:

    # convidado:senha:id:gid:Conta de FTP - convidado:/ftp/./incoming:/etc/ftponly guestuser convidado

    # Definição de grupos/usuários reais, por exemplo, caso se tenha utiizado a

    # opção guestgroup * mas ainda deseja-se que os usuários do grupo suporte

    # queiram acessar como reais: realgroup suporte realuser usuario

    # Toda vez que um usuário da classe abaixo acessar o ftp, o processo do

    # servidor ftp irá ter prioridade = valor nice nice < valor nice > [< classe que se logar >]

    # Define o valor de umask para cada classe ou geral defumask 011 rmtusers defumask 022 local

    # Segundos que o serviço espera pela vinda de uma conexão PASV timeout accept 120

    # Segundos que o serviço espera para realizar a conexão de dados com a porta timeout connect 120

    # Segundos que o serviço espera por atividades na conexão de dados timeout data 1200

    # Segundos que o serviço espera pelo próximo comando timeout idle 900

    # Segundos que o serviço espera pelo próximo comando (valor máximo, não pode

    # ultrapassar). Caso o timeout idle ultrapasse o valor do maxidle, é sempre

    # válido o maxidle

    timeout maxidle 1200

    # Segundos que o serviço disponibiliza para toda a conversação RFC931:

    # http://andrew2.andrew.cmu.edu/rfc/rfc931.html timeout RFC931 10

    # Quantidade de arquivos máxima que um usuário da classe <class > pode

    # transferir, onde < tipo > pode ser um dos seguintes:

    # [raw] total: total de arquivos (entrada + saída)

    # [raw] out: saída

    # [raw] in: entrada

    # No caso de especificar raw, será considerado o tráfego total, e não

    # apenas os arquivos transferidos file-limit < tipo > < valor > < class >

    Ex:

    file-limit total 10 all Especifica um máximo de 10 arquivos transferidos para os usuários da classe "all".

    file-limit raw total 15 all

    Especifica um máximo de 15 arquivos transferidos (total, incluídos os arquivos de avisos do sistema) para os usuários da classe "all"

    # Quantidade de bytes máxima que um usuário da classe < class > pode

    # transferir, onde < tipo > pode ser um dos seguintes:

    # [raw] total total de arquivos (entrada + saída)

    # [raw] out saída

    # [raw] in entrada

    # No caso de especificar raw, será considerado o tráfego total, e não

    # apenas os arquivos transferidos data-limit < tipo > < valor > < class >

    # Tempo máximo (em minutos) da conexão para usuários convidados, anônimos e ou os dois:

    # limit-time guest 60

    # limit-time anonymous 60

    # limit-time * 60

    # Por esta opção, usuários reais não possuem tempo máximo de conexão limit-time guest 10

    # Não permite a transferência de arquivos.

    # Sintaxe: noretrieve [absolute|relative] [class=< classname >] ... [-] < filename > < filename >noretrieve class=rmtusers /home/*/.bashrc

    # Após 3 tentativas de acesso sem sucesso, é guardado no log informações de

    # que após 3 tentativas não foi possível o acesso e é terminada a conexão loginfails 3

    # Define o modo da mensagem de "boas-vindas" ao se conectar:

    # full: exibe o nome do servidor e qual serviço utiliza

    # (proftpd/wu-ftpd/etc)

    # brief: exibe apenas o nome da máquina

    # terse: exibe apenas a mensagem: "FTP server ready" greeting full

    # Define uma mensagem padrão de conexão - NOTE: caso seja definido o tipo de

    # mensagem (acima), o texto abaixo não irá aparecer greeting text Servidor de FTP

    # Logo após entrar com usuário e senha (com sucesso) será mostrado o

    # conteúdo do arquivo. banner /etc/ftp/banner

    # Define o nome padrão do servidor ftp - pode ser acessado através de %L,

    # caso seja um servidor virtual, este valor não é utilizado hostname lilica

    # Define o email do administrador do servidor - pode ser acessado por %E email administrador@servidorftp.com.br

    # Exibe o conteúdo do arquivo < path > quando o usuário acessar o servidor

    # < LOGIN > ou quando entrar em algum diretório < CWD >

    # message < path > {< when > {< class > ...}} message /etc/ftp/message CWD=/home/ftp/pub all

    # No arquivo de mensagens, podem haver os seguintes "atalhos":

    # %T tempo (formato Thu Nov 15 17:12:42 1990)

    # %F espaço livre na partição (kbytes) [não suportado em todos]

    # %C diretório local (equivale ao pwd)

    # %E email do administrador

    # %R nome da máquina que está acessando o servidor

    # %L nome do servidor

    # %u nome do usuário determinado via autenticação RFC931

    # %U nome do usuário que está logado (que foi digitado)

    # %M número máximo de usuários permitidos nesta classe

    # %N número de usuários correntes desta classe

    # %B número absoluto em blocos de disco alocados

    # %b limite preferido em blocos de disco

    # %Q Contagem de bloco corrente

    # %I número máximo de inodes alocados (+1)

    # %i limite de inode preferido

    # %q número corrente de inodes alocados

    # %H limite de tempo para uso excessivo de disco

    # %h limite de tempo para arquivos excessivos

    # readme < path > {< when > {< class >}}

    # Exibe uma indicação de que o usuário deve verificar um certo arquivo

    # < path >readme /home/ftp/README LOGIN all

    # Guarda o log dos comandos dos usuários, dividido por tipos, real, guest,

    # anonymous e separados por vírgulas log commands guest,anonymous

    # Guarda o log das transferências de arquivos de usuários anônimos,

    # convidados e/ou reais.

    # inbound = arquivos enviados ao servidor

    # oubound = arquivos baixados do servidor log transfers real,anonymous,guest inbound

    # Guarda o log das violações das regras de segurança para usuários reais,

    # anônimos ou convidados. log security anonymous,guest

    # Redireciona os avisos de transferências de arquivos para o syslog, sem isso,

    # irá para xferlog log syslog

    # Redireciona os avisos de transferências de arquivos para o syslog e

    # xferlog log syslog+xferlog

    # Permite utilizar-se de apelidos para diretórios alias atualizacoes /pub/conectiva/atualizacoes

    # Isto define um diretório de busca que seja usado ao mudar diretórios. cdpath /pub/conectiva/atualizacoes cdpath /pub/conectiva/beta

    # O sistema irá verificar todo o tempo se o servidor será desligado, caso

    # sim, o usuário que estiver acessando o servidor será avisado, novos

    # acessos não serão permitidos antes de certo tempo (definido no arquivo de

    # configuração) de o servidor ser desligado. shutdown /etc/ftp_shutdown

    # Parâmetros para o arquivo:

    # < ano > < mês > < dia > < hora < minuto > <hora1 > < hora2 >

    # < texto >

    # onde

    # < ano > qualquer ano > 1970

    # < mês > 0-11

    # < hora > 0-23

    # < minuto > 0-59

    # < hora1 > e < hora2 > no formato HHMM, definem a hora em que os usuários serão

    # avisados do desligamento do servidor e quando será realizado o

    # desligamento automático de usuários.

    # < texto > Segue o mesmo padrão da tag "message" com as opções :

    # %s hora em que o servidor será desligado

    # %r hora em que conexões não serão mais permitidas

    # %d hora em que as conexões serão desligadas

    # Para a criação de domínios virtuais (Virtual hosts) é necessário que o seu

    # servidor deve estar com seu nome cadastrado como válido no servidor de

    # nomes :

    # virtual < address > < root|banner|logfile > < path >virtual ftp.suporte root /home/ftp/suporte banner /etc/ftp/sup_banner logfile xferlog_suporte

    # Define os usuários que podem ou não ter acesso ao servidor virtual de ftp.

    # virtual < address > allow < username > [< username > ...]

    # virtual < address > deny < username > [< username > ...] virtual ftp.suporte allow * virtual ftp.suporte deny usuario

    # Geralmente, é permitido o acesso de usuários anônimos em domínios

    # virtuais, com a opção a seguir, é retirada esta permissão. virtual ftp.suporte private

    # Define os usuários que podem ou não ter acesso ao servidor de ftp. defaultserver allow usuario defaultserver deny *

    # Geralmente, é permitido o acesso de usuários anônimos em servidores ftp,

    # com a opção a seguir, é retirada esta permissão. defaultserver private

    # passive address < externalip > < cidr >

    # Permite que certos intervalos de ip's acessem um certo servidor ao invés

    # do padrão. passive address 10.0.1.15 10.0.0.0/8 passive address 192.168.1.5 0.0.0.0/0

    # Especifica o nome de um servidor de email, para onde será enviada as

    # mensagens de notificação de "uploads". São aceitos vários servidores, onde

    # o serviço de ftp irá mandar mensagens até que um dos servidores definidos

    # aceite a mensagem. mailserver mail.conectiva.com.br mailserver mail.domínio.com.br mailserver www.emails.com

    # Define o email de quem irá receber informações sobre os "uploads"

    # anônimos. Pode-se definir mais de um email, todos serão notificados. Caso

    # não seja definido nenhum email, não haverá avisos. incmail usuario@conectiva.com.br incmail usuario@hotmail.com

    # Define o email de quem irá receber informações sobre os "uploads" anônimos

    # do domínio virtual. Caso não seja definido, serão enviadas notificações

    # para o email geral. virtual ftp.suporte incmail usuario@ftp.suporte

    # Define o email de quem irá receber informações sobre os "uploads"

    # anônimos no servidor padrão (excluindo os virtuais). defaultserver incmail usuario@conectiva.com.br

    # Define o email do usuário que enviará a mensagem mailfrom anonftp@conectiva.com.br

    # Define o email do usuário que enviará a mensagem para o servidor virtual virtual ftp.suporte mailfrom anonftp@ftp.suporte

    # Define o email geral do usuário que enviará a mensagem (apenas do servidor

    # padrão) defaultserver mailfrom anonftp@conectiva.com.br

    # Permite ou não executar a especificada função. Por padrão, todas são

    # permitidas. Pode-se utilizar classes de usuários, bastando seguir a

    # sintaxe class=nome_da_classe

    # chmod < yes|no > < typelist >chmod no anonymous

    # delete < yes|no > < typelist >delete yes real,guest,anonymous

    # overwrite < yes|no > < typelist >overwrite yes real,guest,anonymous

    # rename < yes|no > < typelist >rename no guest

    # umask < yes|no > < typelist >umask no real

    # Define o nível de checagem das senhas do usuário anônimo.

    # passwd-check < none|trivial|rfc822 > (< enforce|warn >)

    # none, não realiza checagem alguma

    # trivial, deve haver "@"

    # rfc822, a senha deve ser compatível com a regra rfc822:

    # http://www.faqs.org/rfcs/rfc822.html

    # enforce, caso a senha não seja aceita, não realiza o acesso

    # warn, caso a senha não seja aceita, apenas avisa o usuário e então acessa passwd-check rfc822 enforce

    # Define as senhas que não serão aceitas (dependerá da configuração acima se

    # o usuário poderá ou não acessar o servidor) deny-email usuario@conectiva.com.br deny-email info@conectiva.com.br deny-email suporte@conectiva.com.br

    # Define se um diretório tem ou não permissão para realizar "uploads"

    # upload [absolute|relative] [class=< classname >]... [-] < root-dir > < dirglob >

    # < yes|no > < owner > < group > < mode > ["dirs"|"nodirs"] [< d_mode >]

    # Nos casos abaixo, var/ftp é o diretório raiz do usuário, e /incoming e

    # /incoming/gifs são diretórios contidos dentro da raiz.

    # nodirs não permite a criação de diretórios.

    # Não permitir upload upload /var/ftp * no

    # Permitir upload no diretório incoming upload /var/ftp /incoming yes * * 0666

    # Permitir upload e criação de subdiretórios no diretório incoming/gifs upload /var/ftp /incoming/gifs yes jlc guest 0600 nodirs

    # Define a taxa máxima de transferência para determinados arquivos, caso

    # utilize-se "*" é válido como todos os arquivos do diretório definido throughput /e/ftp * * oo - *

    # Taxa de transferência máxima para todos os arquivos localizados no

    # diretório /e/ftp throughput /e/ftp /sw* * 1024 0.5 *

    # Taxa de transferência máxima = 1024 bps para todos os arquivos localizados

    # em /e/ftp/sw throughput /e/ftp /sw* README oo - *

    # Taxa de transferência máxima para arquivos chamados README throughput /e/ftp /sw* * oo - *.foo.com

    # Taxa de transferência máxima para usuários do domínio foo.com

    # Os caraceteres "oo" significam que não há restrição e "-","0.5" são os

    # fatores por qual será multiplicado o valor de bps definido para cada nova

    # transferência realizada no diretório indicado

    # Define o diretório raiz (/) de usuários anônimos, onde real e rmtusers são

    # classes de usuários anonymous-root /home/ftp/uploads real anonymous-root /home/ftp/pub rmtusers

    # Define o diretório raiz de usuários convidados, pode ser passado o

    # parâmetro de um intervalo de id's dos usuários guest-root /home/users

    # Define para todos os usuários o diretório raiz = /home/users guest-root /home/staff %100-999 usuario

    # Define para os usuários com id >= 100 e <= 900 e o usuário usuario a raiz

    # = /home/staff guest-root /home/users/barea/ftp barea

    # Define para o usuário barea o diretório raiz = /home/users/barea

    # Permite ou não o acesso de usuários através de seus id's, gid's ou nome

    # (usuário e grupo) deny-gid %-99 %65535 deny-uid %-99 %65535 allow-gid ftp allow-uid ftp

    # Permite ou não o acesso de determinados usuários além de seu home restricted-uid < usuario >>unrestricted-gid < usuario >

    # Onde < usuario> pode ser * (todos)

    ------------------------------------------------------------------------------------------

    /etc/ftphosts < ----- Arquivo que contém regras para o login de usuários/máquinas

    # Example host access file

    # Everything after a '#' is treated as comment,

    # empty lines are ignored

    # Habilita o login das máquinas addrglob com apenas o usuário X

    # allow < username > < addrglob > [< addrglob > ...] allow gonzalez 192.168.255.0:255.255.255.0

    # Desabilita o login de qualquer máquina que utilize-se do usuário X

    # deny < username > < addrglob > [< addrglob > ...] deny luciano 192.168.255.0:255.255.255.0

    ------------------------------------------------------------------------------------------

    /etc/ftpusers < -------- Arquivo que contém o nome dos usuários que não podem realizar ftp

        root
        bin
        daemon
        adm
        lp
        sync
        shutdown
        halt
        mail
        news
        uucp
        operator
        games
        nobody