Baixe o app para aproveitar ainda mais
Prévia do material em texto
INSTALAÇÃO E CONFIGURAÇÃO DOS SERVIDORES FTP (VsFTP) Administração de Sistemas Operacionais de Rede FATEC OURINHOS Elaborada por Emerson Barea e atualizada por Paulo R. Galego H. Jr. OBJETIVO Este documento apresenta um breve resumo das informações discutidas em sala de aula na disciplina de Administração de Sistemas Operacionais de Redes, alunos do 3º termo do curso de Tecnólogo em Segurança da Informação da FATEC Ourinhos. Mesmo sendo este documento consistido de material que será utilizado durante o curso, ele deverá ser utilizado apenas como material de consulta prática, ficando o aluno ciente que as fontes de informação corretas cobradas posteriormente em avaliação são as apresentadas na ementa da disciplina. 1 – SISTEMA OPERACIONAL 1.1 – Por que Debian? Por ser o Debian um SO amplamente utilizado por profissionais do mundo “open”; Possui uma comunidade de desenvolvedores que garantem sua evolução e estabilidade; Dividido em categorias, como estável, desenvolvimento e teste, permitindo que o utilizador possa escolher a melhor opção para sua necessidade de implantação; Fácil administração, utilizando o aplicativo APT, que é responsável pelos processos de instalação, desinstalação, upgrade de versões, entre outras funcionalidades junto aos serviços e do próprio SO. 2 – Servidor FTP (VsFTP) (http://vsftpd.beasts.org/) 2.1 - Por que o VsFTP? Nossa intenção não é defender um ou outro software. Eu, pelo menos penso e trabalho dessa forma, defendo que a maioria dos programas e/ou sistemas operacionais funcionam da mesma forma, o maior problema de bugs, falhas ou vulnerabilidades é justamente a forma como são instalados, configurados e administrados. Todo administrador de servidores, equipamentos de redes ou de segurança deve ter em sua mente que é necessário para a sobrevivência de qualquer sistema que ele seja sempre atualizado, analisado contra bases de vulnerabilidades etc. Vamos user o VSFTP pela facilidade em instalar e configurar, não utilizar o root como usuário do daemon e outros motivos melhor apresentados e devidamente defendidas no próprio site do programa, encontrado em http://vsftpd.beasts.org/#security . 2.2 – Instalação apt-get install vsftpd 2.3 – Configuração O arquivo de configuração do VsFTP é o vsftpd.conf. Para editá-lo basta digitar o seguinte comando: vi /etc/vsftpd.conf 1ª configuração: Acesso anonymous configurar a linha “anonymous_enable=YES” como “anonymous_enable=NO” para NÃO aceitar conexões anônimas via FTP. 2ª configuração: Permitir usuários locais realizar login no FTP descomente a linha “local_enable=YES” para que usuários locais possam acessar via FTP. 3ª configuração: Permitir que usuários possam fazer upload de arquivos no servidor FTP descomente a linha “write_enable=YES” para que usuários possam usá-lo em modo Writer. 4ª configuração: Acertando a configuração do servidor para fazer upload de arquivos com direitos rw-r-r. O padrão é rw--. descomente a linha “local_umask=022” . O padrão para o umask do VsFTP é 077. OBS: mais sobre umask pode ser verificado em: http://www.vivaolinux.com.br/artigo/Calculando-valores-UMASK/ http://virtual01.lncc.br/~licht/linux/sistema.permissoes.umask.html 5ª configuração: Garantindo o upload e download correto de arquivos ASCII. descomente as linhas “ascii_upload_enable=YES” e “ascii_download_enable=YES”. 6ª configuração: Banner do servidor descomente a linha “ftpd_banner=...” e colocar o conteúdo “Acesso Permitido Apenas Para Administradores Previamente Autorizados.” ou o conteúdo desejado para ser apresentado como banner no servidor. 7ª configuração: Configurar acesso apenas às pastas do próprio usuário, de forma que o usuário não possa ver ou acessar nada fora de sua área de usuário descomente a linha “chroot_local_user=YES” para que o usuário não tenha acessos indevidos. 8ª configuração: Mostrar todos arquivos no servidor. Mesmo os que arquivos ocultos do Unix, por exemplo, iniciados com “.” inclua a linha “force_dot_files=YES” para que os arquivos com “.” sejam apresentados. Pronto, as configurações a serem feitas no arquivo já estão prontas. As próximas configurações deverão ser feitas no prompt do Linux, usando o usuário root. Criando shell falso para usuários de FTP. Esta configuração é importante para evitar que usuários de FTP possam realizar login no servidor por SSH, por exemplo. OBS: esta é a forma paliativa de ajustar o shell /bin/false para usuários de FTP, pois o VsFTP não aceita login de usuários com o shell /bin/false. ln -s /bin/false /bin/nologin Abra com o vi o arquivo /etc/shells e adicione a seguinte linha ao final dele: /bin/nologin Criação do diretório base para os arquivos, grupo e usuários para acesso Não é obrigatório, mas, por motivos de segurança, caso futuramente houver necessidade de especificar configurações para os usuários do FTP e/ou apenas por melhor representação dos usuários, é interessante a criação de um grupo de usuários específicos para FTP. groupadd ftpgroup Agora, a criação dos usuários: useradd -m -d /home/ftpuser -g ftpgroup -s /bin/nologin ftpuser e alteração da senha: passwd ftpuser Devido à configuração do chroot, descrita na passo 7, devemos remover a permissão de escrita da pasta home do nosso usuário com o comando: chmod 555 /home/ftpuser Após, devemos criar o diretório base para o envio de arquivos via FTP (upload): mkdir /home/ftpuser/pub Dar acessos devidos ao usuário na pasta criada: chown ftpuser.ftpgroup /home/ftpuser/pub E por fim devemos reiniciar o servidor VsFTP /etc/init.d/vsftpd restart 3 – Testando o servidor FTP Para testar o ftp devemos tentar fazer uma conexão no nosso servidor FTP. Para tal, podemos nos conectar a partir do próprio Linux, com o comando: ftp localhost onde será pedido o usuário e senha para conectarmos no FTP ftp localhost Connected to localhost. 220 Acesso Permitido Apenas Para Administradores Previamente Autorizados Name (localhost:root): O usuário a ser digitado é o ftpuser, e a senha que foi cadastrada há pouco. Para o envio de arquivos para o servidor FTP usa-se os comandos: put: put arquivo_local.txt Faz o envio do arquivo chamado arquivo_local.txt para o servidor FTP mput: mput *.txt Fz o envio de todos arquivos que tenham a extensão .txt para o servidor FTP Para que possamos fazer o download de arquivos que se encontram no FTP usa-se: get: get arquivo_remoto.txt Faz o download do arquivo chamado arquivo_remoto.txt do servidor, para o diretório que eu estava quando me conectei ao FTP; mget: mget *.txt Faz o download de todos arquivos que tenham a extensão .txt do servidor, para o diretório que eu estava quando me conectei ao FTP;
Compartilhar