Escolar Documentos
Profissional Documentos
Cultura Documentos
Aplicação
Aplicações
3
Portas de comunicação (Sockets)
◎ Unix Socket
○ Possibilidade de comunicação entre processos que estão no
mesmo host (ao invés da rede),
◎ Loopback
○ é uma interface virtual de rede que permite que um cliente e
um servidor no mesmo host se comuniquem (em IPv4 através
do IP 127.0.0.0). 4
Portas de comunicação (Sockets)
5
Portas de comunicação (Sockets)
6
Portas de comunicação (Sockets)
7
Portas de comunicação (Sockets)
8
Portas de comunicação (Sockets)
9
Portas de comunicação (Sockets)
10
Serviços disponíveis na camada de aplicação
◎ Servidores Web
◎ Servidores de E-mail
◎ Mensagem instantânea
◎ Login remoto (Acesso Remoto a Computadores)
◎ P2P file sharing (Compartilhamento)
◎ Transferência de Arquivos
◎ Jogos de rede multi-usuário
◎ Servidor de Streaming de video
◎ Telefonia via Internet
◎ Videoconferência em tempo real
11
Protocolos de Aplicação
Apresentação TSL/SSL
Sessão NetBIOS 12
Protocolos de Aplicação
13
Camada 01: Aplicação
◎ FTP
○ File Transfer Protocol é
basicamente um tipo de conexão
que permite a troca de arquivos
entre dois computadores
conectados à internet.
○ Pode enviar qualquer
dado/arquivo para uma outra
máquina ou armazená-los em
um servidor FTP, ficando ela
sempre disponível para o usuário
acessar.
14
Camada 01: Aplicação
◎ FTP
○ O FTP funciona de dois modos: o
cliente e o servidor.
◉ O cliente é o computador (app)
que solicita a conexão para ter
acesso aos dados no servidor
FTP.
◉ Já o servidor é um outro
computador (app) que atua
como um ambiente virtual,
recebendo a solicitação do
cliente para a transferência dos
arquivos.
15
Camada 01: Aplicação
◎ FTP
○ Há dois tipos de conexões:
◉ Conexão de controle
● Permanentemente ativa durante toda a sessão
● Servidor aguarda requisições de conexão na porta TCP 21
◉ Conexão de dados
● Permanece ativa somente durante a transferência do arquivo
● ou listagem do diretório
● Nova conexão de dados é criada para cada transferência de
● arquivos ou listagem de diretório
● Servidor adota a porta TCP 20
16
FTP
◎ Essa operação precisa ser segura. Por isso, ela sempre pede
alguma autenticação para proteger as transferências de dados.
Ou seja, é obrigatório ter um login e uma senha de acesso para
transferir arquivos pelo FTP.
17
FTP
19
“
Tutorial cliente e servidor FTP
20
Pré-requisitos
21
Pré-requisitos
22
Pré-requisitos
23
Tutorial FTP
◎ FTP
○ Conexão utilizando o um site cliente:
◉ Você deve acessar o site cliente FTP
https://onlineftp.ch/ e inserir as seguintes
informações:
● Hostname: ftpupload.net
● Username: epiz_30539917
● Password: ********
● Port: 21
24
Tutorial FTP
◎ FTP
○ Conexão utilizando o um site cliente:
1. O login acessa a estrutura de diretórios do servidor FTP
2. Há uma pasta chamada 'htdocs' e três arquivos:
3. A página inicial do servidor Web do site está localizado dentro da pasta
'htdocs'
25
Tutorial FTP
◎ FTP
○ Conexão utilizando o um site cliente:
1. Acesse a pasta 'htdocs', que contém dois arquivos:
2. O arquivo html da página inicial (http://maykolsampaio.epizy.com/)
3. Um arquivo informativo do local do website
26
Tutorial FTP
◎ FTP
○ Apague o arquivo index2.html e crie um novo arquivo
chamado index.html
27
Tutorial FTP
◎ FTP
○ Faça upload de uma foto sua de identificação
28
Tutorial FTP
◎ FTP
○ Abra o arquivo index.html e insira as seguintes códigos html e
salve o arquivo no final:
29
Tutorial FTP
◎ FTP
○ Acesse novamente a página do site:
http://maykolsampaio.epizy.com/
30
SSL/TLS
Protocolos de Sessões Seguras na
Internet
Camada 01: Aplicação
◎ SSL/TLS
○ O SSL (Secure Sockets Layer), atualmente em desuso, e seu sucessor TLS
(Transport Layer Security) são protocolos de criptografia de segurança
projetados para sessões na internet.
○ Versão mais comum a ser utilizada é o TLS 1.2.
○ Estabelece uma sessão de comunicação segura entre os lados cliente e
servidor de uma aplicação web no momento em que um site é acessado
32
Camada 01: Aplicação
◎ SSL/TLS
○ O SSL usa um processo explícito
“por porta”, ou seja, durante a
conexão, a partir de determinada
porta, espera-se que a seção
comece e termine segura
(encriptada). Já o TLS é uma
conexão “por protocolo”, onde um
programa primeiro irá conectar de
maneira “insegura” e depois de um
comando especial irá habilitar a
encriptação, tornando então a
conexão segura.
33
Camada 01: Aplicação
◎ TSL/SSL
○ Uma vantagem do TLS é a independência em relação aos protocolos de
aplicação. Protocolos de nível acima podem comunicar com o TLS de forma
transparente.
○ Criptografia, autenticação e integridade dos dados estão entre os principais
objetivos desse protocolo. Torna mais difícil para que hackers possam
interceptar a conexão e roubar dados.
○ Além desses objetivos, o protocolo TLS inclui:
◉ Interoperabilidade: Programadores independentes devem conseguir
desenvolver aplicações utilizando TLS que possam trocar parâmetros
criptográficos sem um conhecer o código do outro.
34
Camada 01: Aplicação
◎ TSL/SSL
◉ Extensibilidade: TLS busca o fornecimento de uma estrutura em que
novos métodos de criptografia podem ser adicionados, sem a
necessidade da implementação de uma nova biblioteca de segurança.
◉ Eficiência Relativa: Operações de criptografia exigem um alto
processamento. Sendo assim, o protocolo TLS incorporou um
mecanismo de armazenamento para evitar que toda conexão ao ser
estabelecida não precise processar operações de criptografia. Com
isso, reduz-se também a atividade da rede.
○ Assista: https://www.youtube.com/watch?v=eOsGqXy2vmA
35
Camada 01: Aplicação
◎ TSL/SSL
○ Funcionamento
◉ Através do "handshake (aperto de
mão)" e "criptografia de chave
pública", uma sessão de
comunicação criptografada pode ser
configurada com segurança entre
duas partes.
36
Camada 01: Aplicação
◎ SSL/TSL
○ Funcionamento
◉ Na conexão do protocolo, é realizada uma
autenticação robusta via SSL /TLS de um site
certificado (autoridade certificadora) que inclui uma
chave pública que um navegador da web pode usar
para confirmar que os documentos enviados pelo
servidor (como páginas HTML) foram assinados
digitalmente por alguém em posse da chave privada
correspondente.
◉ Autoridades Certificadoras (AC) são instituições que
informam que você está conectado a um site real
(verificando sites ou empresas), ajudando a evitar que
o usuário possa enviar acidentalmente os detalhes de
sua conta bancária para um hacker. Esse atestado é
feito através do "certificado digital", que é uma
37
assinatura digital com validade jurídica.
Camada 01: Aplicação
◎ SSL/TSL
○ Funcionamento
◉ Através do certificado digital, é possível saber se uma página web ou
outro documento foi alterado por um terceiro, corrompido ou
interceptado durante a transferência.
◉ Os certificados SSL/TSL ajudam a evitar ataques Man-in-the-Middle.
◉ Man-in-the-Middle é um ataque cibernético que ocorre quando um
hacker (atacante) se coloca entre o cliente (navegador) e o servidor
(site) e se faz passar por um deles.
● Exemplos: entre você e sua transação bancária online, ou entre você e seu
chat com sua mãe, ou entre seus e-mails de trabalho e os
destinatários/remetentes; ou entre você e a caixa em que você insere seus
dados de pagamento.
38
Camada 01: Aplicação
◎ SSL/TSL
○ Os certificados digitais podem validar
três tipos de informações:
◉ Validação de domínio (DV): valida o
domínio do site
◉ Organização / Validação Individual
(OV / IV): valida o nome da empresa
ou indivíduo.
◉ Validação Extendedida (EV): faz uma
validação mais completa como
provar os direitos exclusivos de uso
de um domínio, confirmar sua
legalidade, existência
operacional/física e comprovar que a
entidade autorizou a emissão do
certificado. 39
Camada 01: Aplicação
◎ SSL/TSL
○ Funcionamento
◉ Handshake no SSL/TSL é processo
que dá início a uma sessão entre
cliente e servidor para estabelecer os
detalhes de sua conexão e as chaves
secretas a serem utilizadas. Ele
determina qual versão do SSL /TLS
será usado na sessão, que pacote de
criptografia será utilizado na
comunicação, verifica o servidor (e às
vezes também o cliente) e informa
que existe uma conexão segura antes
da transferência de dados. 40
Camada 01: Aplicação
◎ SSL/TSL
○ Funcionamento
◉ "Criptografia de chave pública", também conhecido como criptografia
assimétrica, é um sistema que usa pares de chaves para criptografar e
autenticar informações. Uma chave do par é uma chave pública que
pode, como o nome sugere, ser amplamente distribuída sem afetar a
segurança. A segunda chave no par é uma chave privada que é
conhecida apenas pelo proprietário.
◉ Qualquer pessoa pode usar a chave pública para criptografar
mensagens, mas apenas a chave privada emparelhada pode
decodificar essas mensagens criptografadas.
41
Camada 01: Aplicação
◎ SSL/TSL
○ Funcionamento
◉ As chaves públicas e privadas são
utilizadas para criar uma chave de
sessão, que então é utilizada para
criptografar e descriptografar os
dados sendo transferidos. Essa chave
de sessão vai se manter ativa e válida
por tempo limitado.
◉ O TLS pode operar em portas
diferentes e usa algoritmos de
criptografia mais forte, como o
Keyed—Hashing for Message
Authentication Code (HMAC). 42
Camada 01: Aplicação
◎ HTTPS e FTPS
○ Tanto o FTP e o HTTP possuem uma variação segura: o HTTPS e o FTPS.
○ Os dois servem para estabelecer uma comunicação segura com o servidor
utilizando o protocolo TLS.
○ Os sites que configurarem um certificado SSL/TLS podem utilizar o
protocolo HTTPS para estabelecer uma comunicação segura com o servidor.
○ Essa comunicação segura deve ser utilizada em casos que se trafegam dados
sensíveis do usuário como como dados pessoais, de pagamento ou de login.
43
Camada 01: Aplicação
◎ HTTP x HTTPs
○ O primeiro é trafegado em texto puro (conexão insegura) e o segundo
encriptado com SSL/TLS (conexão segura, porta 443).
44
Camada 01: Aplicação
◎ HTTPs
○ Para transferência de arquivos
são utilizados chaves de sessão
do tipo simétricas.
○ Não confundir com a
autenticação entre cliente e
servidor usando o TLS que é uma
criptografia do tipo assimétrica.
45
Camada 01: Aplicação
◎ FTPs
○ O protocolo FTP assim
como o HTTP é um
protocolo inseguro, uma
vez que transmite todos os
dados (incluindo os nomes
de utilizadores e respectivas
senhas) em modo de texto,
podendo ser facilmente
interceptados e capturados
por terceiros.
46
Camada 01: Aplicação
◎ FTPs
○ No FTP seguro existem dois tipos de
conexões: explícita (ativa) e (passiva).
◉ Explícita: para estabelecer o link SSL, a
segurança explícita requer que o cliente FTP
emita um comando específico para o
servidor FTP após estabelecer uma conexão.
A porta do servidor FTP padrão é usada. Este
método formal está documentado no RFC
2228.
◉ Implícita: começa automaticamente com
uma conexão SSL assim que o cliente FTP se
conecta a um servidor FTP. Na segurança
implícita, o servidor FTP define uma porta
específica para o cliente (990) a ser usada
para conexões seguras. 47
Camada 01: Aplicação
◎ DNS
○ Domain Name System ou Sistema de Nome de Domínio) nada mais é do que
um sistema de bancos de dados distribuídos em uma rede cujo a função
principal dele é traduzir certos nomes de endereços em números de IP que
os computadores correspondente ao computador.
○ Um entendimento mais simplificado do DNS requer apenas uma olhada na
barra de endereços de um navegador. O domínio é o nome do site
(ifpi.edu.br, por exemplo), e o servidor de nomes armazena um conjunto
deles.
○ Essa informação dos hostnames combinada com números específicos é
armazenada em um diretório principal. E este diretório principal é
armazenado nos servidores dos nomes de domínio. É assim que o usuário
tem acesso a páginas de internet através dos domínios digitados no
navegador. 48
Camada 01: Aplicação
◎ DNS
○ Cada máquina na rede só se comunica com outra quando conhece o seu IP.
Se o computador X deseja receber pacotes de Y, deve primeiro iniciar uma
interação com Y. Isso só é feito se X souber o número IP de Y. A interação
começa, então, com uma espécie de pesquisa pelo número de Y.
○ Quando um usuário abre o navegador e digita o endereço URL referente ao
domínio de um site, ele envia uma requisição na rede para encontrar o
respectivo IP do servidor que o armazena.
○ A solicitação é enviada ao seu provedor de acesso, e ele repassa para o DNS.
Assim, o DNS funciona como algo que em computação é chamado de
interface: uma espécie de tradutor que estabelece a comunicação entre duas
partes.
49
Camada 01: Aplicação
◎ DNS
○ Exemplos de domínios e seus respectivos IPs (Assista)
50
Camada 01: Aplicação Utiliza a porta 53 por padrão.
◎ DNS
51
Atividade
◎ DNS
○ Ferramenta online
https://www.nslookup.io/
○ Acesse sua conta
https://infinityfree.net/
pegue o domínio cadastrado e
execute a ferramenta para
descobrir o seu IP externo. Veja o
exemplo:
52
Camada 01: Aplicação
55
Camada 01: Aplicação
56
Camada 01: Aplicação
60
Camada 01: Aplicação
61
Camada 01: Aplicação
64
Atividade DNS
65
Atividade SMTP, POP e IMAP
66
Atividade SMTP, POP e IMAP
67
Camada 01: Aplicação
◎ DHCP
○ DHCP é a sigla para Dynamic Host Configuration Protocol. Trata-se de um
protocolo utilizado em redes de computadores que permite a estes obterem
configuração de rede automaticamente.
○ Caso tenha que administrar uma rede pequena - por exemplo, com 5
computadores - você não terá muito trabalho para atribuir um número IP a
cada máquina. E se sua rede possuir 300 computadores? Ou mil? Certamente,
o trabalho vai ser imenso e, neste caso, é mais fácil cometer o erro de dar o
mesmo número IP a duas máquinas diferentes, fazendo com que estas entrem
em conflito e não consigam utilizar a rede.
68
Camada 01: Aplicação
◎ DHCP
○ O protocolo DHCP é uma eficiente solução para esse problema, já que, por
meio dele, um servidor distribui endereços IP na medida em que as
máquinas solicitam conexão à rede.
◉ Para que seja encontrado, o seu computador precisa ter um endereço único. O mesmo vale
para qualquer site: este fica hospedado em um servidor, que por sua vez precisa ter um
endereço para ser localizado na internet. Isso é feito via endereço IP (IP Address), recurso
também utilizado para redes locais, como a rede Wi-Fi da sua casa: o seu roteador atribui um IP
a cada dispositivo conectado a ele.
◉ O endereço IP é uma sequência de números composta por 32 bits. Esse valor consiste em um
conjunto de quatro sequências de 8 bits. Cada uma é separada por um ponto e recebe o nome
de octeto ou simplesmente byte, pois um byte é formado por 8 bits. O número 172.31.110.10 é
um exemplo. Repare que cada octeto é formado por números que podem ir de 0 a 255, não
mais do que isso.
69
Camada 01: Aplicação
◎ DHCP
○ Quando um computador desconecta do servidor DHCP,
seu IP fica livre para uso de outra máquina. Para isso, o
servidor geralmente é configurado para fazer uma
checagem da rede em intervalos pré-definidos.
○ Esse protocolo usa a porta 68 por padrão.
○ Servidor DHCP
◉ Trata-se do computador com o serviço DHCP
instalado e configurado.
○ Cliente DHCP
◉ São os dispositivos de rede que puxam as
configurações do TCP/IP via servidor DHCP.
70
Camada 01: Aplicação
◎ DHCP
○ Com o DHCP basicamente são
definidos automaticamente os
seguintes parâmetros:
◉ IP
◉ Máscara de sub-rede
◉ Default Gateway (Gateway Padrão)
◉ Servidores DNS
◉ Servidores WINS
◉ Sufixos de pesquisa do DNS
71
Camada 01: Aplicação
◎ DHCP
○ Com o DHCP basicamente são
definidos automaticamente os
seguintes parâmetros:
◉ IP: o endereço que identifica o
computador na rede;
◉ Máscara de sub-rede
◉ Default Gateway (Gateway Padrão): é a
porta de entrada e de saída da rede.
◉ Servidores DNS: Faz parte da
configuração da rede informar os
endereços DNS do provedor (ou qualquer
outro servidor que você tenha acesso),
que é para quem seu micro irá perguntar
sempre que você tentar acessar qualquer
coisa usando um nome de domínio e não
um endereço IP.
72
Camada 01: Aplicação
◎ DHCP
○ Com o DHCP basicamente são
definidos automaticamente os
seguintes parâmetros:
◉ Servidores WINS: é utilizado para
resolução de nomes netbios (Nomes para
os dispositivos da rede).
◉ Sufixos de pesquisa do DNS: Configurar
a lista de pesquisa de sufixos de domínio
em um cliente.
73
Camada 01: Aplicação
◎ DHCP
○ Para racionalizar os recursos da rede, são emitidos endereços IP com datas
de início e fim — esse é o processo de concessão.
○ Ao perceber que a concessão do endereço IP chegou ao fim, o cliente pode
solicitar ao servidor DHCP um prolongamento de acesso.
74
Camada 01: Aplicação
◎ DHCP
○ Funções:
◉ DHCP Discover – O cliente liga-se à rede e
envia um broadcast (enviado para todas as
máquinas da rede) a pedir configurações
de rede;
◉ DHCP Offer – Um ou mais servidores
enviam, em unicast (enviado apenas para
o cliente), as suas propostas de
configurações de rede;
◉ DHCP Request – O cliente comunica, em
broadcast, ao servidor que aceita uma
oferta feita anteriormente;
◉ DHCP Ack – Por fim o servidor confirma ao
cliente a reserva do endereço de IP e
informa o cliente por quanto tempo este é
válido;
75
Camada 01: Aplicação
◎ DHCP
○ Modos de configuração:
◉ Atribuição manual: Onde existe uma tabela de associação entre o Endereço MAC do cliente
(que será comparado através do pacote broadcast recebido) e o endereço IP (e restantes
dados) a fornecer. Esta associação é feita manualmente pelo administrador de rede; por
conseguinte, apenas os clientes cujo MAC consta nesta lista poderão receber configurações
desse servidor;
◉ Atribuição automática: Onde o cliente obtém um endereço de um espaço de endereços
possíveis, especificado pelo administrador. Geralmente não existe vínculo entre os vários MAC
habilitados a esse espaço de endereços;
◉ Atribuição dinâmica: O único método que dispõe a reutilização dinâmica dos endereços. O
administrador disponibiliza um espaço de endereços possíveis, e cada cliente terá o software
TCP/IP da sua interface de rede configurados para requisitar um endereço por DHCP assim que
a máquina arranque. A alocação utiliza um mecanismo de aluguel do endereço, caracterizado
por um tempo de vida. Após a máquina se desligar, o tempo de vida naturalmente irá expirar, e
da próxima vez que o cliente se ligue, o endereço provavelmente será outro.
76
Cisco Packet Tracer
77
Camada 01: Aplicação
78
Camada 01: Aplicação
79
Camada 01: Aplicação
80
Camada 01: Aplicação
81
Camada 01: Aplicação
82
Camada 01: Aplicação
83
Camada 01: Aplicação
84
Camada 01: Aplicação
85
Camada 01: Aplicação
86
Camada 01: Aplicação
87
Camada 01: Aplicação
◎ Telnet
○ Telnet permite acesso remoto à qualquer máquina que esteja
rodando o módulo servidor mas é mais inseguro, pois os
dados não são criptografados.
○ Existem diversas formas de interceptar uma mensagem
telnet como por exemplo usando ataques "Man in the
middle" e com "sniffers".
○ O comando para iniciar uma sessão Telnet é:
◉ telnet nome_do_servidor
88
Camada 01: Aplicação
◎ SSH
○ O protocolo SSH (também conhecido como Secure Shell) é
um protocolo responsável para realizar login (acesso) remoto
seguro de um computador para outro.
○ O protocolo funciona no modelo cliente-servidor.
○ Ele permite:
◉ acesso seguro para usuários e processos automatizados;
◉ transferências de arquivos interativas e automatizadas
◉ envio/execução de comandos remotamente
◉ gerenciamento de infraestrutura de rede e outros
componentes de sistema de missão crítica.
89
Camada 01: Aplicação
◎ SSH
○ SSH usa criptografia para proteger a conexão entre um
cliente e um servidor. Todas as autenticações, comandos,
saídas e transferências de arquivos do usuário são
criptografadas para proteção contra ataques na conexão.
○ É uma alternativa segura aos protocolos de login não
protegidos (telnet) e métodos de transferência de arquivos
inseguros (como FTP).
○ Ele é usado em quase todos os data centers e em todas as
grandes empresas.
90
Camada 01: Aplicação
◎ SSH
○ Os passos de uma conexão SSH:
91
Camada 01: Aplicação
◎ SSH
○ Utiliza a porta 22 por padrão
○ O SSH pode ser executado sobre o FTP para realizar a
transferência de arquivos (SFTP) e em conexões VPN (Virtual
Private Network)
○ Softwares mais conhecidos:
◉ Tectia SSH (Cliente e Servidor)
◉ PuTTY (Cliente)
◉ Bitvise (Cliente e Servidor)
◉ OpenSSH (Servidor Unix/Linux)
92
Camada 01: Aplicação
◎ SSH
○ Tutorial prático como utilizar o serviço SSH
○ No Linux via bash:
◉ https://youtu.be/HOQlfJScWH4
○ No Windows com Putty:
◉ https://youtu.be/801ebfNRv_A
93