FPROT
FTP
e
DHCP
FTP
Arquitetura
Transferência de Arquivos – FTP
Transferência de arquivos em sistemas remotos
Utiliza o protocolo FTP sobre uma conexão TCP
Estabelece conexão TCP com um servidor.
Serviço transparente.
Possui mecanismo de autenticação
Transferência de Arquivos - FTP
Permite operações de visualização e alteração de estrutura
de arquivos
A sessão é um resultado de uma operação de comandos
entre o FTP cliente e o servidor.
Utiliza de um mecanismo adicional de segurança que é a
criação de um segundo canal de comunicação.
Trabalha com portas efêmeras
Características FTP
Transferência Interativa: Informações sobre sistema e transferência
Especificação do formato dos arquivos: Transferência nos
formatos ASCII, binário e EBCDIC
Transferência Autenticada: Informações sobre o usuário
Baseado em um modelo servidor: Utiliza uma conexão para troca
de comandos e uma para transferência de dados
Transferência de Arquivos – FTP
Vantagens do FTP
Acesso interativo : Interação direta com servidores
Especificação de formato (representação) : O usuário pode
especificar o tipo e formato dos dados
Controle de autenticação : Autenticação de clientes através de login e
senha
Transferência de Arquivos – FTP
Processo PAI para aceitar conexões
Cria processos filhos para administrar as conexões
Os filhos criam escravos para tratar as transferências
Transferência de Arquivos – FTP
Transferência
de dados
Processo de
Controle
Sistema Operacional
Transferência
de dados
Processo de
Controle
Sistema Operacional
Inter-redeInter-rede
Conexão de
dados de cliente
Conexão de controle
de cliente
Conexão de dados
de servidor Conexão de dados de
servidor
Transferência de Arquivos – FTP
FTP Server Cliente
Inter-redeInter-rede
Pedido de conexão porta 21Transferencia de dados porta 20
FTP - Conexão de Controle
Utiliza definições NVT
Comando FTP
Comando Argumento Significado
CWD dir Altera o diretório
DELE file Remove arquivo
MKD dir Cria o diretório dir
PWD --- Mostra o diretório corrente
RETR file Transfere dados para o sistema local
LIST (dir) Lista o conteúdo do diretório
STOR file Salva dados local para o remoto
PORT addr Informa ao remoto a porta do sistema local
TYPE (I,A) Informa transferência binária(I) ou ASCII (A)
QUIT --- Encerra conexão de controle
FTP – Conexão de DadosSempre que houver a transferência de dados, deverá ser enviado
junto um comando indicando o PORT, sobre a qual o servidor
transferirá as informações.
FTP Server
Cliente
pwd
Porta X
Aguardando
conexão
Porta 21
Servidor recebe pedido para executar um LIST
FTP – Conexão de Dados
FTP Server
Cliente
Porta X
Porta 20
Porta 21
Servidor aloca uma porta Y e envia o endereço desta porta pela
conexão de controle via o comando PORT
Porta Ips, Y
Porta Y
FTP – Conexão de Dados
Cliente aguarda a conexão entre sua porta e a 20 do servidor
FTP Server
Cliente
Porta X
Porta 20
Porta 21
Porta Y
Conexão de
controle
Conexão de
dados
FTP – Conexão de Dados
FTP Server
Cliente
LIST
Porta X
Porta 20
Porta 21
Porta Y
Conexão realizada – Segue comando
FTP – Conexão de Dados
FTP Server
Cliente
Porta X
Porta 20
Porta 21
Porta Y
Conteúdo do diretório
Servidor devolve o resultado do comando
FTP – Conexão de Dados
FTP Server
Cliente
Porta X
Porta 20
Porta 21
Ambos os lados encerram a conexão e o cliente libera a porta Y
Tipo de Usuários FTPLigação tipo privada
As ligações particulares, destina-se essencialmente a transferências de
arquivos que existam na área de trabalho do usuário de um computador
remoto para um local. Para tal precisa obrigatoriamente de ter
conhecimento da password de acesso à respectiva área.
Ligação tipo Anônima
As ligações anônimas são usadas no acesso a arquivos de software em
que não é necessário que o utilizador possua uma conta na máquina
remota. Existe um login padrão a nível da Internet chamado anonymous
em que password é o endereço de correio eletrónico do usuário. Por
norma em todos os arquivos existe um diretório padrão em que se
encontra todo o software de domínio público, o “/pub”
DHCP
Motivação
• Principais parâmetros que devem ser
configurados para que o protocolo TCP/IP
funcione em uma máquina
▫ Número IP
▫ Máscara de sub-rede
▫ Gateway Padrão
▫ Número IP de um ou mais servidores DNS
Motivação
• Em uma rede com centenas e até mesmo
milhares de estações de trabalho, configurar o
TCP/IP em cada estação se torna uma tarefa
bastante trabalhosa
• Sempre que houver mudanças, a reconfiguração
terá que ser feita manualmente em todas as
estações de trabalho
Motivação
• Possibilidade de erros de configuração
▫ Digitação do endereço IP
▫ Digitação da máscara de sub-rede
DHCP
24
DHCP
• Dynamic Host Configuration Protocol
▫ A partir de 1993
▫ RFC 1541
▫ Uma extensão do BOOTP
▫ Mesmos números de porta do BOOTP
▫ Extensões:
Apoia alocação temporária ( “leases") de endereços
IP
O cliente DHCP poderá adquirir todos os parâmetros
de configuração IP necessários para a operar
▫ DHCP pode interoperar com clientes BOOTP.
DHCP
Critério de atribuição de IP
• Atribuição manual
• Atribuição automática
• Atribuição dinâmica
Formato de mensagem DHCPTipo da Mensagem
BootRequest /BootReply
Opicionalmente usado
pelos agentes DHCP
Formato de mensagem DHCP
ID da transação, um número
gerado randomicamente
escolhido pelo cliente, usado
pelo cliente e servidor para
associar mensagens e
respostas entre um cliente e
um servidor.
Total de segundos
passados desde que o
cliente iniciou a
requisição.
Endereço IP do cliente.
Formato de mensagem DHCP
Seu endereço IP.
Endereço IP do próximo
servidor usado no
bootstrap; retornado no
DHCPOFFER,
DHCPACK pelo
servidor.
Endereço IP do agente
Relay, usado no booting
via um agente relay.
Formato de mensagem DHCP
Endereço do
Hardware do
cliente.
Opcional host name
do servidor.Nome do arquivo de
boot, nome ou null
em
DHCPDISCOVER,
nome do diretório.
Opcional host name
do servidor.
Campo opcional
de parâmetros.
Funcionamento DHCP
Funcionamento DHCP
• Processo de 4 fases entre cliente e servidores
▫ Cliente envia DISCOVER “Alguém me envie um endereço”
(Broadcast).
▫ Servidores OFFER “Use este endereço”.
▫ Cliente REQUESTS “Eu usarei este”. (broadcast)
▫ Servidores ACKNOWLEDGE “OK ou No Way!”
(ACK/NAK)
Fluxo de mensagens inicial
Server A Client Server B
Cliente tenta descobrir
disponíveis DHCP ServersDHCPDISCOVER DHCPDISCOVER
Servers responde com
ofertasDHCPOFFER DHCPOFFER
Cliente recolhe ofertas e
decide qual aceitar
O cliente faz um requisição
broadcasts um dos
endereços ofertados.
DHCPREQUEST DHCPREQUEST
O servidor reconhece o uso
do endereço IP pelo cliente.DHCPACKConfiguração Completa
O cliente libera o uso do
endereço IPDHCPRELEASE
Desligamento
DHCP Tipos de Mensagens
Message Description
DISCOVER Client broadcast to locate available servers
OFFER Server to client response offering configuration parameters
REQUEST Client broadcast requesting offered parameters
ACK Server to client response confirming a request
NAK Server to client response denying a request
RELEASE Client to server request to relinquish IP address
DECLINE Client to server notification that IP address is in use
Tempo de renovação concessão (Client
Lease)
• T1 < T2 < Tempo de concessão
• T1 valor padrão = 1/2 of lease time
• T2 valor padrão = 7/8 of lease time
• Comunicado via DHCPOFFER, DHCPACK
• Ações do cliente quando o tempo passa:
▫ T1: cliente deve renovar endereço com o servidor
DHCP.
▫ T2: cliente deve renovar endereço com algum
servidor DHCP.
▫ Tempo de concessão (Lease time): cliente deve
parar de usar o endereço IP.
Fluxo de renovação
Server A Client Server B
Client unicasts request to
continue using IP addressDHCPREQUEST
Server acknowledges
request and updates leaseDHCPACK
Client broadcasts request to
continue using IP addressDHCPREQUES
T
DHCPREQUES
T
Server acknowledges
request and updates leaseDHCPAC
K
Configuration complete
T1 elapses
T1 elapses
Client unicasts request to
continue using IP addressDHCPREQUEST
T2 elapses
Configuration complete
Estrutura de uma rede
Router
Internet
UDP Port
68
UDP Port
68
UDP Port
68
UDP Port
67
DHCP Clients
DHCP Relay
DHCP RELAY
Sub-rede 1
Sub-rede 2
DHCP Relay
• DHCP relays habilitam um servidor DHCP por
domínio administrativo, além de um servidor por
rede.
▫ Necessita um DHCP relay em cada rede
▫ DHCP relay envia um pacote IP unicast para o servidor
DHCP, quando “escuta” um pacote broadcast IP local
com DHCPDISCOVER
DHCP
Relay
Requesting Host
IP Router
LAN1 LAN2
255.255.255.255
DHCP
Server
DHCP Relay
• Servidor DHCP seleciona um endereço IP dinâmico
▫ Mapeia endereços MAC dos hosts para endereços IP
dinâmicos
• Outra vantagem dos relays: habilita as respostas
DHCP a voltarem para o host que requisitou
▫ Servidor não pode enviar diretamente de volta usando
endereços MAC dos hosts
▫ Servidor DHCP envia unicast ao endereço IP conhecido
do DHCP relay, o qual envia aos endereços MAC locais
dos hosts
DHCP
Relay
Requesting Host
IP Router
LAN1 LAN2
DHCP
Server
Referências
• Tominaga, Akihiro; et al “Problems and
Solutions of DHCP”
• RFC 2131
• Computer Networking, 4 ed. James F. Kurose
Keith W. Ross
• Andrew S. Tanenbaum, Computer Networks

Samba, Squid, FTP, DHCP2

  • 1.
  • 2.
  • 3.
  • 4.
    Transferência de Arquivos– FTP Transferência de arquivos em sistemas remotos Utiliza o protocolo FTP sobre uma conexão TCP Estabelece conexão TCP com um servidor. Serviço transparente. Possui mecanismo de autenticação
  • 5.
    Transferência de Arquivos- FTP Permite operações de visualização e alteração de estrutura de arquivos A sessão é um resultado de uma operação de comandos entre o FTP cliente e o servidor. Utiliza de um mecanismo adicional de segurança que é a criação de um segundo canal de comunicação. Trabalha com portas efêmeras
  • 6.
    Características FTP Transferência Interativa:Informações sobre sistema e transferência Especificação do formato dos arquivos: Transferência nos formatos ASCII, binário e EBCDIC Transferência Autenticada: Informações sobre o usuário Baseado em um modelo servidor: Utiliza uma conexão para troca de comandos e uma para transferência de dados
  • 7.
    Transferência de Arquivos– FTP Vantagens do FTP Acesso interativo : Interação direta com servidores Especificação de formato (representação) : O usuário pode especificar o tipo e formato dos dados Controle de autenticação : Autenticação de clientes através de login e senha
  • 8.
    Transferência de Arquivos– FTP Processo PAI para aceitar conexões Cria processos filhos para administrar as conexões Os filhos criam escravos para tratar as transferências
  • 9.
    Transferência de Arquivos– FTP Transferência de dados Processo de Controle Sistema Operacional Transferência de dados Processo de Controle Sistema Operacional Inter-redeInter-rede Conexão de dados de cliente Conexão de controle de cliente Conexão de dados de servidor Conexão de dados de servidor
  • 10.
    Transferência de Arquivos– FTP FTP Server Cliente Inter-redeInter-rede Pedido de conexão porta 21Transferencia de dados porta 20
  • 11.
    FTP - Conexãode Controle Utiliza definições NVT Comando FTP Comando Argumento Significado CWD dir Altera o diretório DELE file Remove arquivo MKD dir Cria o diretório dir PWD --- Mostra o diretório corrente RETR file Transfere dados para o sistema local LIST (dir) Lista o conteúdo do diretório STOR file Salva dados local para o remoto PORT addr Informa ao remoto a porta do sistema local TYPE (I,A) Informa transferência binária(I) ou ASCII (A) QUIT --- Encerra conexão de controle
  • 12.
    FTP – Conexãode DadosSempre que houver a transferência de dados, deverá ser enviado junto um comando indicando o PORT, sobre a qual o servidor transferirá as informações. FTP Server Cliente pwd Porta X Aguardando conexão Porta 21 Servidor recebe pedido para executar um LIST
  • 13.
    FTP – Conexãode Dados FTP Server Cliente Porta X Porta 20 Porta 21 Servidor aloca uma porta Y e envia o endereço desta porta pela conexão de controle via o comando PORT Porta Ips, Y Porta Y
  • 14.
    FTP – Conexãode Dados Cliente aguarda a conexão entre sua porta e a 20 do servidor FTP Server Cliente Porta X Porta 20 Porta 21 Porta Y Conexão de controle Conexão de dados
  • 15.
    FTP – Conexãode Dados FTP Server Cliente LIST Porta X Porta 20 Porta 21 Porta Y Conexão realizada – Segue comando
  • 16.
    FTP – Conexãode Dados FTP Server Cliente Porta X Porta 20 Porta 21 Porta Y Conteúdo do diretório Servidor devolve o resultado do comando
  • 17.
    FTP – Conexãode Dados FTP Server Cliente Porta X Porta 20 Porta 21 Ambos os lados encerram a conexão e o cliente libera a porta Y
  • 18.
    Tipo de UsuáriosFTPLigação tipo privada As ligações particulares, destina-se essencialmente a transferências de arquivos que existam na área de trabalho do usuário de um computador remoto para um local. Para tal precisa obrigatoriamente de ter conhecimento da password de acesso à respectiva área. Ligação tipo Anônima As ligações anônimas são usadas no acesso a arquivos de software em que não é necessário que o utilizador possua uma conta na máquina remota. Existe um login padrão a nível da Internet chamado anonymous em que password é o endereço de correio eletrónico do usuário. Por norma em todos os arquivos existe um diretório padrão em que se encontra todo o software de domínio público, o “/pub”
  • 19.
  • 20.
    Motivação • Principais parâmetrosque devem ser configurados para que o protocolo TCP/IP funcione em uma máquina ▫ Número IP ▫ Máscara de sub-rede ▫ Gateway Padrão ▫ Número IP de um ou mais servidores DNS
  • 21.
    Motivação • Em umarede com centenas e até mesmo milhares de estações de trabalho, configurar o TCP/IP em cada estação se torna uma tarefa bastante trabalhosa • Sempre que houver mudanças, a reconfiguração terá que ser feita manualmente em todas as estações de trabalho
  • 22.
    Motivação • Possibilidade deerros de configuração ▫ Digitação do endereço IP ▫ Digitação da máscara de sub-rede
  • 23.
  • 24.
    24 DHCP • Dynamic HostConfiguration Protocol ▫ A partir de 1993 ▫ RFC 1541 ▫ Uma extensão do BOOTP ▫ Mesmos números de porta do BOOTP ▫ Extensões: Apoia alocação temporária ( “leases") de endereços IP O cliente DHCP poderá adquirir todos os parâmetros de configuração IP necessários para a operar ▫ DHCP pode interoperar com clientes BOOTP.
  • 25.
  • 26.
    Critério de atribuiçãode IP • Atribuição manual • Atribuição automática • Atribuição dinâmica
  • 27.
    Formato de mensagemDHCPTipo da Mensagem BootRequest /BootReply Opicionalmente usado pelos agentes DHCP
  • 28.
    Formato de mensagemDHCP ID da transação, um número gerado randomicamente escolhido pelo cliente, usado pelo cliente e servidor para associar mensagens e respostas entre um cliente e um servidor. Total de segundos passados desde que o cliente iniciou a requisição. Endereço IP do cliente.
  • 29.
    Formato de mensagemDHCP Seu endereço IP. Endereço IP do próximo servidor usado no bootstrap; retornado no DHCPOFFER, DHCPACK pelo servidor. Endereço IP do agente Relay, usado no booting via um agente relay.
  • 30.
    Formato de mensagemDHCP Endereço do Hardware do cliente. Opcional host name do servidor.Nome do arquivo de boot, nome ou null em DHCPDISCOVER, nome do diretório. Opcional host name do servidor. Campo opcional de parâmetros.
  • 31.
  • 32.
    Funcionamento DHCP • Processode 4 fases entre cliente e servidores ▫ Cliente envia DISCOVER “Alguém me envie um endereço” (Broadcast). ▫ Servidores OFFER “Use este endereço”. ▫ Cliente REQUESTS “Eu usarei este”. (broadcast) ▫ Servidores ACKNOWLEDGE “OK ou No Way!” (ACK/NAK)
  • 33.
    Fluxo de mensagensinicial Server A Client Server B Cliente tenta descobrir disponíveis DHCP ServersDHCPDISCOVER DHCPDISCOVER Servers responde com ofertasDHCPOFFER DHCPOFFER Cliente recolhe ofertas e decide qual aceitar O cliente faz um requisição broadcasts um dos endereços ofertados. DHCPREQUEST DHCPREQUEST O servidor reconhece o uso do endereço IP pelo cliente.DHCPACKConfiguração Completa O cliente libera o uso do endereço IPDHCPRELEASE Desligamento
  • 34.
    DHCP Tipos deMensagens Message Description DISCOVER Client broadcast to locate available servers OFFER Server to client response offering configuration parameters REQUEST Client broadcast requesting offered parameters ACK Server to client response confirming a request NAK Server to client response denying a request RELEASE Client to server request to relinquish IP address DECLINE Client to server notification that IP address is in use
  • 35.
    Tempo de renovaçãoconcessão (Client Lease) • T1 < T2 < Tempo de concessão • T1 valor padrão = 1/2 of lease time • T2 valor padrão = 7/8 of lease time • Comunicado via DHCPOFFER, DHCPACK • Ações do cliente quando o tempo passa: ▫ T1: cliente deve renovar endereço com o servidor DHCP. ▫ T2: cliente deve renovar endereço com algum servidor DHCP. ▫ Tempo de concessão (Lease time): cliente deve parar de usar o endereço IP.
  • 36.
    Fluxo de renovação ServerA Client Server B Client unicasts request to continue using IP addressDHCPREQUEST Server acknowledges request and updates leaseDHCPACK Client broadcasts request to continue using IP addressDHCPREQUES T DHCPREQUES T Server acknowledges request and updates leaseDHCPAC K Configuration complete T1 elapses T1 elapses Client unicasts request to continue using IP addressDHCPREQUEST T2 elapses Configuration complete
  • 37.
    Estrutura de umarede Router Internet UDP Port 68 UDP Port 68 UDP Port 68 UDP Port 67 DHCP Clients
  • 38.
  • 39.
    DHCP Relay • DHCPrelays habilitam um servidor DHCP por domínio administrativo, além de um servidor por rede. ▫ Necessita um DHCP relay em cada rede ▫ DHCP relay envia um pacote IP unicast para o servidor DHCP, quando “escuta” um pacote broadcast IP local com DHCPDISCOVER DHCP Relay Requesting Host IP Router LAN1 LAN2 255.255.255.255 DHCP Server
  • 40.
    DHCP Relay • ServidorDHCP seleciona um endereço IP dinâmico ▫ Mapeia endereços MAC dos hosts para endereços IP dinâmicos • Outra vantagem dos relays: habilita as respostas DHCP a voltarem para o host que requisitou ▫ Servidor não pode enviar diretamente de volta usando endereços MAC dos hosts ▫ Servidor DHCP envia unicast ao endereço IP conhecido do DHCP relay, o qual envia aos endereços MAC locais dos hosts DHCP Relay Requesting Host IP Router LAN1 LAN2 DHCP Server
  • 41.
    Referências • Tominaga, Akihiro;et al “Problems and Solutions of DHCP” • RFC 2131 • Computer Networking, 4 ed. James F. Kurose Keith W. Ross • Andrew S. Tanenbaum, Computer Networks