aula14 vsftp de-introopenldap

36

Upload: roberto-castro

Post on 23-Jun-2015

720 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Aula14 vsftp de-introopenldap
Page 2: Aula14 vsftp de-introopenldap

2 / 36www.4linux.com.br

Linux Network Servers

VSFTPD

Page 3: Aula14 vsftp de-introopenldap

3 / 36www.4linux.com.br

O QUE É FTP?

0

Page 4: Aula14 vsftp de-introopenldap

4 / 36www.4linux.com.br

O FTP (File Transfer Protocol) é um protocolo para transferências de arquivos amplamente utilizado na internet devido a sua facilidade de implementação e simplicidade de uso.

O protocolo FTP foi desenvolvido para ser versátil, confiável e rápido, o que fez com este sistema de transferência de arquivos desenvolvido antes da pilha TCP/IP se tornasse padrão de tecnologia, sendo posteriormente adaptado para se adaptar aos padrões de redes existentes hoje.

Para que a transferência seja efetuada, é necessário que o cliente FTP estabeleça uma sessão com o servidor, que pode ser em modo Ativo ou Passivo. As portas que o FTP usa são 20 e 21.

CONCEITO

Page 5: Aula14 vsftp de-introopenldap

5 / 36www.4linux.com.br

Plano de curso

Aula 14: Servidor FTP com VSFTPD

- Configurar o servidor FTP na máquina 192.168.200.3 para que o WebDesigner (usuário joaowebdesign) possar subir os arquivos do site www.dexter.com.br;

- Configurar o FTP com proteção a “chroot”;

192.168.200.3

Apache/srv/www/dexter

Webdesigner João (joaowebdesign)

Page 6: Aula14 vsftp de-introopenldap

6 / 36www.4linux.com.br

FTP ATIVOX

FTP PASSIVO

0

Page 7: Aula14 vsftp de-introopenldap

7 / 36www.4linux.com.br

Os modos ativo e passivo referem-se a transferência de arquivos. No modo ativo os comandos são enviados normalmente pelo cliente e recebidos na porta 21/tcp do servidor. Quando há transferências de arquivos, o cliente solicita uma conexão na porta 20/tcp do servidor, e então, a transferência ocorre.

CONCEITO: MODO ATIVO

Page 8: Aula14 vsftp de-introopenldap

8 / 36www.4linux.com.br

Para contornar este problema, foi desenvolvido o modo de configuração passivo. Deste modo tanto o servidor quanto o cliente trabalharão em portas altas durante a transferência de arquivos, contornando assim o problema do firewall mal configurado. Lembre-se: Todos os comandos serão recebidos pelo servidor na porta 21/tcp.

CONCEITO: MODO PASSIVO

Page 9: Aula14 vsftp de-introopenldap

9 / 36www.4linux.com.br

Qual a desvantagem do modo ativo?

Neste modo, um firewall mal configurado pode dar uma falsa sensação de funcionamento do FTP, pois a conexão e os comandos FTP funcionarão normalmente, porém, na hora da transferência de arquivos, ocorrerá uma falha de desconexão ou time out, dependendo do tipo de servidor.

Vamos usar o modo passivo na configuração do nosso servidor ftp.

CONCEITO

Page 10: Aula14 vsftp de-introopenldap

10 / 36www.4linux.com.br

MODO ANÔNIMOX

TRADICIONAL

0

Page 11: Aula14 vsftp de-introopenldap

11 / 36www.4linux.com.br

Tradicional: Neste formato, o servidor aceita conexões de um usuário e senha válidos para liberar um shell para ele.

Anonymous: O Servidor FTP com anonymous é muito utilizado na Internet pelo motivo de não ser necessário ter um usuário no servidor. Desta forma, o usuário pode abrir um browser e chamar o endereço ftp://servidor para ter acesso ao diretório disponibilizado pelo serviço. Geralmente, esse diretório é o home do usuário FTP que no Debian é /srv/ftp (segundo o FHS).

No nosso servidor ftp vamos desativar o modo Anonymous, pois ele será usado apenas pelo webdesigner João pode fazer upload dos arquivos das empresas DEXTER e MANDARK. O usuário root não poderá fazer acesso ao servidor FTP.

CONCEITO

Page 12: Aula14 vsftp de-introopenldap

12 / 36www.4linux.com.br

Para instalar o vsftpd, execute o comando abaixo:# aptitude install vsftpd

Após instalar, vamos abrir o arquivo de configuração localizado em /etc e então comentar sobre suas configurações padrão:# vim /etc/vsftpd.conf

Localize as configurações que seguem abaixo:

Permite que o VSFTPD funcione em modo daemonlisten=YES

CONFIGURANDO VSFTPD

Page 13: Aula14 vsftp de-introopenldap

13 / 36www.4linux.com.br

Permite a utilização o FTP com o usuário anonymousanonymous_enable=No

Permite a exibição de mensagens aos usuáriosdirmessage_enable=YES

Ativa os logs para downloads e uploadsxferlog_enable=YES

Utiliza a porta FTP-DATA para transferência de arquivos (vamos usar FTP Passivo)connect_from_port_20=No

CONFIGURANDO VSFTPD

Page 14: Aula14 vsftp de-introopenldap

14 / 36www.4linux.com.br

Habilite a variável que permite que os usuários do sistema possam usar o servidor FTP:local_enable=YES

Descomente a variável que permite o upload para os usuários:write_enable=YES

Definindo timeout para sessão e conexão de dados em 2 minutos (120 segundos):idle_session_timeout=120data_connection_timeout=120

Não permitir que o usuário veja arquivos que não sejam seus:chroot_local_user=YES

Habilite o uso do PAM:pam_service_name=vsftpd

CONFIGURANDO VSFTPD

Page 15: Aula14 vsftp de-introopenldap

15 / 36www.4linux.com.br

# /etc/init.d/vsftpd restart

Lembre-se que adicionamos o usuário joaowebdesign na aula de Apache. O diretório onde ele terá permissão para fazer upload e download de arquivos é:/srv/www/dexter

Verifique as permissões, dono e grupo deste diretório:# ls -dl /srv/www/dexterdrwxr-xr-x 2 root root 4096 Jun 6 22:41 /srv/www/dexter/

Altere para:# chown -R joaowebdesign:joaowebdesign /srv/www/dexter/# chmod -R 775 /srv/www/dexter/# usermod -d /srv/www/dexter joaowebdesign

CONFIGURANDO VSFTPD

Page 16: Aula14 vsftp de-introopenldap

16 / 36www.4linux.com.br

Bloqueando usuário root para que este não acesse o servidor FTP:

# vim /etc/ftpusersroot

Acrescente “root” na última linha do arquivo se não tiver esta linha já.

Caso você queira bloquear mais algum usuário para que ele não acesse o servidor FTP, coloque o nome dele no arquivo.

CONFIGURANDO VSFTPD

Page 17: Aula14 vsftp de-introopenldap

17 / 36www.4linux.com.br

Crie o arquivo /srv/www/dexter/.message e coloque a mensagem abaixo:

# vim /srv/www/dexter/.message

## Este sistema é para uso exclusivo da empresa DEXTER.## Todas as atividades serão registradas. ## É vetada a utilização deste sistema para transferência de## arquivos protegidos por qualquer lei de direito autoral ## ou arquivos que infrinjam a legislação vigente.

Após escrever a mensagem, salve o arquivo e reinicie o serviço FTP:# /etc/init.d/vsftpd restart

CONFIGURANDO VSFTPD

Page 18: Aula14 vsftp de-introopenldap

18 / 36www.4linux.com.br

A partir da DMZ1 (192.168.200.2):

$ ftp 192.168.200.3 ou $ ftp ftp.dexter.com.brConnected to 192.168.200.3 (192.168.200.3).220 (vsFTPd 2.3.2)Name (192.168.0.112:leo): joaowebdesign331 Please specify the password.Password: 123456230-## Este sistema é para uso exclusivo da empresa DEXTER230-## Todas as atividades serão registradas.230-## É vetada a utilização deste sistema para transferência de230-## arquivos protegidos por qualquer lei de direito autoral230-## ou arquivos que infrinjam a legislação vigente230 Login successful.Remote system type is UNIX.Using binary mode to transfer files.ftp>

ACESSANDO FTP

Page 19: Aula14 vsftp de-introopenldap

19 / 36www.4linux.com.br

Para realizar o download de um arquivo, utilize o comando get, após conectar-se ao FTP:ftp> get <arquivo>

Para trocar de diretórios dentro do servidor, utilize o comando cd:ftp> cd <diretório>

Para realizar o upload, utilize o comando put:ftp> put <arquivo>

Para listar o conteúdo de um diretório corrente, utilize o comando ls:ftp> ls

Para listar os diretórios locais (lado cliente), utilize o comando !ls:ftp> !ls

COMANDOS FTP

Page 20: Aula14 vsftp de-introopenldap

20 / 36www.4linux.com.br

Para voltar um diretório, utilize o comando cd..ftp> cd ..

Para mudar de diretório na máquina cliente, utilize o lcd:ftp> lcd <diretório>

Para realizar múltiplos downloads, utilize o mget:ftp> mget *

Para realizar múltiplos uploads, utilize o mget:ftp> mput *

Para uma lista completa de comandos, utilize o help:ftp> help

COMANDOS FTP

Page 21: Aula14 vsftp de-introopenldap

21 / 36www.4linux.com.br

# cat /var/log/vsftpd.log

Exemplo:

Wed May 27 18:15:04 2011 [pid 23194] [ftp] OK DOWNLOAD: Client "192.168.200.2", "/index.html", 1505680 bytes, 216488.61Kbyte/sec

VERIFICANDO LOGS

Page 22: Aula14 vsftp de-introopenldap

22 / 36www.4linux.com.br

Linux Network ServersOpenLDAP

Page 23: Aula14 vsftp de-introopenldap

23 / 36www.4linux.com.br

Plano de curso

Aula 14: Introdução ao OpenLDAP

- O que é o OpenLDAP e em que ele nos ajudará?- O que é um diretório afinal?- Vantagens de usar OpenLDAP;

192.168.200.2

Page 24: Aula14 vsftp de-introopenldap

24 / 36www.4linux.com.br

O que é o LDAP?

Page 25: Aula14 vsftp de-introopenldap

25 / 36www.4linux.com.br

➔ O que é o LDAP?

LDAP significa Protocolo Leve de Acesso a Diretórios.

“É um padrão aberto capaz de facilitar, de forma flexível, o

compartilhamento, a manutenção e o gerenciamento de

grandes volumes de informações, definindo um método

padrão de acesso e atualização de informações dentro de

um diretório.” Steven Tuttle

CONCEITO

Page 26: Aula14 vsftp de-introopenldap

26 / 36www.4linux.com.br

➔ Características de um sistema de diretórios

➔Centraliza e organiza informações;

➔Evita redundância;

➔É otimizado para fazer pesquisas, pois utiliza algoritmos

de busca sofisticados;

➔Podem ser distribuídos, isto é, não precisam

necessariamente armazenar suas informações em um

mesmo local.

CONCEITO

Page 27: Aula14 vsftp de-introopenldap

27 / 36www.4linux.com.br

O que é o OpenLDAP?

Page 28: Aula14 vsftp de-introopenldap

28 / 36www.4linux.com.br

➔ O que é o OpenLDAP?

OpenLDAP é um servidor compatível com LDAPv3 livre e

popular. Está disponível para várias plataformas como:

Linux, Solaris, Mac OS e Windows.

Segurança e controle de dados é imprescindível em

qualquer empresa, umas das vantagens do OpenLDAP é a

possibilidade de que vários sistemas possam compartilhar

de base de dados de usuários e senhas de forma

centralizada e integrada.

CONCEITO

Page 29: Aula14 vsftp de-introopenldap

29 / 36www.4linux.com.br

➔ Quais serviços podem usar a base de dados do OpenLDAP?

Apache, DNS, FTP, Kerberos, MySQL, PAM, Postfix,

Samba, Squid, SSL, Clusters etc.

CONCEITO

Page 30: Aula14 vsftp de-introopenldap

30 / 36www.4linux.com.br

O que é um diretório?

Page 31: Aula14 vsftp de-introopenldap

31 / 36www.4linux.com.br

➔ O que é um diretório?

Diretório significa algo usado para indicar direções.

Um exemplo simples: Uma lista telefônica.

A lista é organizada de maneira hierárquica para que a

informação buscada seja encontrada de forma eficiente.

Em um diretório você pode pesquisar, inserir, alterar e

apagar itens.

CONCEITO

Page 32: Aula14 vsftp de-introopenldap

32 / 36www.4linux.com.br

O que é NÃO é um diretório?

Page 33: Aula14 vsftp de-introopenldap

33 / 36www.4linux.com.br

➔ O que NÃO é um diretório?

Um diretório não pode ser considerado um banco de dados, porque o

bando de dados é otimizado para ler e gravar dados com o mesmo

grau de eficiência. O diretório é otimizado apenas para leitura e seu

sistema de transações é bem mais simples do que de um banco de

dados.

Um diretório não pode ser considerado um sistema de arquivos. O

sistema de arquivo possui otimizações para manipulação de

arquivos, como, por exemplo, para trabalhar com grandes arquivos.

O diretório não tem otimização para trabalhar com arquivos grandes.

CONCEITO

Page 34: Aula14 vsftp de-introopenldap

34 / 36www.4linux.com.br

A organização da estrutura de dados do OpenLdap é

hierárquica, sendo referenciada a forma de árvore, com

conceito de orientação de objetos.

A árvore de informações do LDAP possui um elemento

raiz, onde começa a busca das informações. Sendo assim,

o sistema percorre os nós filhos até encontrar o elemento

desejado. A raiz e seus ramos são diretórios.

ESTRUTURA DO LDAP

Page 35: Aula14 vsftp de-introopenldap

35 / 36www.4linux.com.br

Atributos de diretórios:

c - Representa país (country)

o - Representa uma organização como uma empresa

(organization)

ou -Representa um departamento (organization unit)

Atributos de entradas:

cn - Representa um nome (common name)

uid - Representa a identidade de um usuário (user ID)

gn - Representa o nome próprio de uma pessoa (given name)

sn - Representa o sobrenome de uma pessoa (surname)

ESTRUTURA DO LDAP

Page 36: Aula14 vsftp de-introopenldap

36 / 36www.4linux.com.br

ÁRVORE NO ESTILO DNS

dc = br

dc = com

dc = dexter

ou = People

cn = mandarkglory cn = root

uidNumber = 1001 uidNumber = 0

dc = componente de domínio