SlideShare una empresa de Scribd logo
1 de 30
Descargar para leer sin conexión
Fundamentos de Redes de Computadores

                          Prof. Alex Dias
Servidor http usado para gerenciar a
hospedagem e visualização de páginas web,
disponível para os sistemas linux e windows.




             socket
HTTPD    versão antiga do apache
         (httpd.conf)

APACHE2 versão atual do apache
        (apache2.conf e outros
        includes)

   Apache HTTP Server 2.4.1 (21/02/2012)
Diretório de configuração: /etc/apache2

➢
    apache2.conf       diretivas de configuração do
                       apache

➢
    ports.conf         configuração da porta lógica

➢
    /sites-available   hosts virtuais disponíveis

➢
    /sites-enable      hosts virtuais ativos
Arquivo dividido em 3 seções:
Seção 01: configurações globais

ServerRoot       raiz da árvore de diretórios onde estão
 localizados os arquivos de configuração do     apache
TimeOut    tempo limite de espera pelo envio de dados
 entre o cliente e o servidor
MaxKeepAliveRequests      número máximo de
 requisições     em um mesma sessão.


                                       E vários outros...
   Seção 2 – configurações principais:
    ServerName, ServerRoot, ServerAdmin,
    etc.
    (no Apache2 estas configurações são feitas nos diretórios:
    mods-enable, sites-available, conf.d e no arquivo
    httpd.conf)

   Seção 3 – configurações de hosts virtuais
    (arquivo default no diretório sites-available)
Os próximos passos mostram as configurações
necessárias para hospedagem da homepage do
usuário zedascouves.

      http://www.zedascouves.com
   Contém os arquivos de configuração dos
    hosts virtuais. Na parte esquerda da figura
    é mostrado o arquivo default e, na direita,
    o arquivo modificado zedascouves.
Options:

   Indexes: Se não existir o arquivo index.html
    (definido em “DirectoryIndex”), será criada uma
    lista dos arquivos existente no diretório atual.

   MultiViews:    Habilita negociação de conteúdo,
       permitindo o envio de um arquivo no idioma do
    navegador do cliente.

   FollowSymLinks:       O apache2 vai seguir os links
    simbólicos para este diretório .
Outros parâmetros:

AllowOverride None   O apache2 não vai procurar o
                     arquivo .htaccess que contém
                     as permissões de acesso para
                     este diretório.

Order allow,deny     Ordem de permissão de
                     acesso.

Allow from all       Libera acesso a partir de
                     qualquer endereço.
   Contém os arquivos de configuração
    (hosts virtuais) dos sites que estarão
    ativos após iniciar o servidor apache2.

   Para ativar o host virtual digite:


       $sudo a2ensite zedascouves
   Configurações do arquivo hosts para os domínios
    virtuais criados e que não são reconhecidos pelo
    dns.
$sudo /etc/init.d/apache2 reload
  ou
$sudo invoke-rc.d apache2 reload

    É usual deixar que o servidor Apache fique ativo
    na inicialização do linux, mas é possível alterar
    este status:

   Adicionando o apache2 na inicialização do linux
    $sudo update-rc.d apache2 defaults

   Ou, para removê-lo da inicialização
    $sudo update-rc.d -f apache2 remove
E n d ereço d a R ed e L o c al

                                                                           E n d e r e ç o v á lid o n a I n t e r n e t




                         . . .                                        PRO X Y
                      RED E LO CAL                                                                                   IN T E R N E T
( e n d e r e ç o s n ã o v is u a liz a d o s n a in t e r n e t )
   Compartilhamento de acesso:
    permite que as máquinas da rede local tenham
    acesso a internet através de um único endereço
    válido.

   Cache de endereços:
    armazena as páginas recém visitadas de forma a
    aumentar a performance da rede nos próximos
    acessos.

   Filtro de pacotes:
    estabelece regras de proibição ou permissão para
    os dados que saem da rede local.
   Servidor proxy usado no ambiente linux

   Instalação:
    $sudo apt-get install squid

    Arquivo de configurações:
    /etc/squid/squid.conf
ACL access lists – listas de acesso
 contém informações sobre o conteúdo que
 será submetido às regras do squid.

Sintaxe:
           acl   nome_acl tipo_lista objeto

acl   parâmetro que define a criação de uma acl

nome_acl nome que identifica a acl
tipo_lista indica qual o tipo de conteúdo da lista
objeto      conteúdo a ser verificado (arquivo)
   Existem diversos parâmetros para os tipos de
    lista. Inicialmente trabalharemos com 2 tipos:

src            a lista deve conter endereços IP

url_regex       a lista deve conter caracteres
               (palavras)
HTTP_ACCESS
Contém as regras que fazem algum tipo de ação
 sobre uma determinada lista (acl).

Sintaxe:
        http_access     ação    nome_acl
ação:
 allow :   permite que o conteúdo da acl seja
                 executado
 deny :    proíbe a execução do conteúdo da acl.
   Configurar o squid para controlar uma rede com as
    seguintes especificações:

    ◦ Rede local: 192.168.0.0/24
    ◦ Proxy (gateway): 192.168.0.254
    ◦ Hosts sem acesso: 192.168.0.10 e 192.168.0.11
    ◦ Hosts com acesso: todos os demais
    ◦ Lista de palavras “proibidas”: sexo, facebook, etc...
    ◦ Host do chefe: 192.168.0.1 (sem restrições!)
<arquivo /etc/squid/squid.conf>
...
acl hosts_permit src   “/etc/squid/ips_permit”
acl hosts_proib src    “/etc/squid/ips_proib”
acl host_chefe src     “/etc/squid/ip_chefe”
acl proibido     url_regex “/etc/squid/lista_proib”
...
<arquivo /etc/squid/squid.conf>
...
http_access    allow host_chefe
http_access    deny proibido
http_access    deny hosts_proib
http_access    allow hosts_permit
...
$sudo gedit /etc/squid/ips_permit
192.168.0.0/24

$sudo gedit /etc/squid/ips_proib
192.168.0.10
192.168.0.11

$sudo gedit /etc/squid/ip_chefe
192.168.0.1

$sudo gedit /etc/squid/lista_proib
facebook
sexo
bate-papo
<arquivo /etc/squid/squid.conf>
...
cache_dir ufs /var/spool/squid 100 16 256
...
                                                Qtde de
                                              subdiretórios


Tipo de   Diretório   Tamanho     Qtde de
arquivo   do cache    do cache   diretórios
   Criação dos diretórios e subdiretórios que irão
    abrigar as páginas visitadas no cache do servidor:

                   $sudo squid -z

   Ativação do servidor:

         $sudo /etc/init.d/squid reload
                       ou
           $sudo service squid restart
   Os clientes (browsers)
    devem ser configurados
    para acesso ao endereço
    ip do proxy na porta
    3128.
   Fazer a configuração do apache para hospedar dois
    sites diferentes no mesmo servidor.
   Fazer a configuração do servidor proxy de acordo
    com o exemplo da aula
   Pesquisar e configurar os seguintes parâmetros de
    configuração adicionais:
    ◦ Autenticação
    ◦ Restrição de acesso por endereço MAC
    ◦ Escolha outro tipo de restrição qualquer.
   Escreva um relatório sobre o experimento
    realizado

    Dica: coloque-se no lugar de quem lerá o
    relatório e tente reproduzir o experimento e
    obter os mesmos resultados descritos.

Más contenido relacionado

La actualidad más candente

Comandos Básicos Linux
Comandos Básicos LinuxComandos Básicos Linux
Comandos Básicos LinuxSoftD Abreu
 
Linux - Shell e Comandos Básicos
Linux - Shell e Comandos BásicosLinux - Shell e Comandos Básicos
Linux - Shell e Comandos BásicosFrederico Madeira
 
Trabalhando na Linha de comando
Trabalhando na  Linha de comandoTrabalhando na  Linha de comando
Trabalhando na Linha de comandoSoftD Abreu
 
YUM, APT-GET, DPKG, RPM
YUM, APT-GET, DPKG, RPMYUM, APT-GET, DPKG, RPM
YUM, APT-GET, DPKG, RPMSoftD Abreu
 
Linux comandos gerais e servidores de rede
Linux   comandos gerais e servidores de redeLinux   comandos gerais e servidores de rede
Linux comandos gerais e servidores de redefernandao777
 
Comandos, Permissões e Partições Linux
Comandos, Permissões e Partições LinuxComandos, Permissões e Partições Linux
Comandos, Permissões e Partições LinuxVirgínia
 
Linux - Permissões, Usuários, Grupos e Quotas
Linux - Permissões, Usuários, Grupos e QuotasLinux - Permissões, Usuários, Grupos e Quotas
Linux - Permissões, Usuários, Grupos e QuotasFrederico Madeira
 
Permissões especiais - suid, sgid, sticky - Linux
Permissões especiais - suid, sgid, sticky - LinuxPermissões especiais - suid, sgid, sticky - Linux
Permissões especiais - suid, sgid, sticky - LinuxFábio dos Reis
 
Dicas e Princípios Básicos do Linux
Dicas e Princípios Básicos do LinuxDicas e Princípios Básicos do Linux
Dicas e Princípios Básicos do LinuxWellington Oliveira
 
O Que é Shell (bash)
O Que é Shell (bash)O Que é Shell (bash)
O Que é Shell (bash)Sérgio Silva
 
SENAI - Segurança firewall
SENAI - Segurança   firewall SENAI - Segurança   firewall
SENAI - Segurança firewall Carlos Melo
 

La actualidad más candente (20)

Comandos Básicos Linux
Comandos Básicos LinuxComandos Básicos Linux
Comandos Básicos Linux
 
Comandos Linux Parte 2
Comandos Linux Parte 2Comandos Linux Parte 2
Comandos Linux Parte 2
 
Linux - Shell e Comandos Básicos
Linux - Shell e Comandos BásicosLinux - Shell e Comandos Básicos
Linux - Shell e Comandos Básicos
 
Trabalhando na Linha de comando
Trabalhando na  Linha de comandoTrabalhando na  Linha de comando
Trabalhando na Linha de comando
 
YUM, APT-GET, DPKG, RPM
YUM, APT-GET, DPKG, RPMYUM, APT-GET, DPKG, RPM
YUM, APT-GET, DPKG, RPM
 
Linux comandos gerais e servidores de rede
Linux   comandos gerais e servidores de redeLinux   comandos gerais e servidores de rede
Linux comandos gerais e servidores de rede
 
Comandos linux
Comandos linux Comandos linux
Comandos linux
 
Comandos Linux Parte 1
Comandos Linux Parte 1Comandos Linux Parte 1
Comandos Linux Parte 1
 
Proftpd
ProftpdProftpd
Proftpd
 
(16) dns
(16) dns(16) dns
(16) dns
 
01 notações iniciais
01   notações iniciais01   notações iniciais
01 notações iniciais
 
Comandos, Permissões e Partições Linux
Comandos, Permissões e Partições LinuxComandos, Permissões e Partições Linux
Comandos, Permissões e Partições Linux
 
Linux - Permissões, Usuários, Grupos e Quotas
Linux - Permissões, Usuários, Grupos e QuotasLinux - Permissões, Usuários, Grupos e Quotas
Linux - Permissões, Usuários, Grupos e Quotas
 
Cap1 exercicios comandos linux
Cap1 exercicios comandos linuxCap1 exercicios comandos linux
Cap1 exercicios comandos linux
 
Linux - Servidor Web Apache
Linux - Servidor Web ApacheLinux - Servidor Web Apache
Linux - Servidor Web Apache
 
Permissões especiais - suid, sgid, sticky - Linux
Permissões especiais - suid, sgid, sticky - LinuxPermissões especiais - suid, sgid, sticky - Linux
Permissões especiais - suid, sgid, sticky - Linux
 
Dicas e Princípios Básicos do Linux
Dicas e Princípios Básicos do LinuxDicas e Princípios Básicos do Linux
Dicas e Princípios Básicos do Linux
 
O Que é Shell (bash)
O Que é Shell (bash)O Que é Shell (bash)
O Que é Shell (bash)
 
SENAI - Segurança firewall
SENAI - Segurança   firewall SENAI - Segurança   firewall
SENAI - Segurança firewall
 
Comandos linux
Comandos linuxComandos linux
Comandos linux
 

Similar a Apache proxy

Alta Disponibilidade em Linux com Heartbeat e Drbd
Alta Disponibilidade em Linux com Heartbeat e DrbdAlta Disponibilidade em Linux com Heartbeat e Drbd
Alta Disponibilidade em Linux com Heartbeat e DrbdFrederico Madeira
 
Intro-To-Squid
Intro-To-SquidIntro-To-Squid
Intro-To-Squidfbexiga
 
Minicurso GNU/Linux básico - Aula2 - Semana Sistemas de Informação 2015 - UNI...
Minicurso GNU/Linux básico - Aula2 - Semana Sistemas de Informação 2015 - UNI...Minicurso GNU/Linux básico - Aula2 - Semana Sistemas de Informação 2015 - UNI...
Minicurso GNU/Linux básico - Aula2 - Semana Sistemas de Informação 2015 - UNI...Marlon Willrich
 
Tutorial servidor debian linux ocs invetory
Tutorial servidor debian linux ocs invetory Tutorial servidor debian linux ocs invetory
Tutorial servidor debian linux ocs invetory gigadrop
 
O docker vai mudar tudo na sua infra estrutura-ti
O docker vai mudar tudo na sua infra estrutura-tiO docker vai mudar tudo na sua infra estrutura-ti
O docker vai mudar tudo na sua infra estrutura-tiFrancisco Gonçalves
 
Project HA
Project HAProject HA
Project HAKarpv
 
Instalação e configuração apache Ubuntu Server
Instalação e configuração apache Ubuntu ServerInstalação e configuração apache Ubuntu Server
Instalação e configuração apache Ubuntu ServerAparicio Junior
 
Aula14 vsftp de-introopenldap
Aula14 vsftp de-introopenldapAula14 vsftp de-introopenldap
Aula14 vsftp de-introopenldapRoberto Castro
 
Projeto jorge,jefff, matheus
Projeto   jorge,jefff, matheusProjeto   jorge,jefff, matheus
Projeto jorge,jefff, matheusEadanalise
 
Trabalho Configuração de Servidores Unix
Trabalho Configuração de Servidores UnixTrabalho Configuração de Servidores Unix
Trabalho Configuração de Servidores UnixVitor Savicki
 
Apresentação zend framework 2 parte 1
Apresentação zend framework 2   parte 1 Apresentação zend framework 2   parte 1
Apresentação zend framework 2 parte 1 Edgar Dantas
 
Docker: uma visão geral e exemplos de uso
Docker: uma visão geral e exemplos de usoDocker: uma visão geral e exemplos de uso
Docker: uma visão geral e exemplos de usoTobias Sette
 

Similar a Apache proxy (20)

06 - Servidor Apache
06 - Servidor Apache06 - Servidor Apache
06 - Servidor Apache
 
Apache
ApacheApache
Apache
 
Alta Disponibilidade em Linux com Heartbeat e Drbd
Alta Disponibilidade em Linux com Heartbeat e DrbdAlta Disponibilidade em Linux com Heartbeat e Drbd
Alta Disponibilidade em Linux com Heartbeat e Drbd
 
Squid proxy
Squid proxySquid proxy
Squid proxy
 
“Squid” por Artur Martins, David Riedel e Florentino Bexiga
“Squid” por Artur Martins, David Riedel e Florentino Bexiga“Squid” por Artur Martins, David Riedel e Florentino Bexiga
“Squid” por Artur Martins, David Riedel e Florentino Bexiga
 
Intro-To-Squid
Intro-To-SquidIntro-To-Squid
Intro-To-Squid
 
Servidor Proxy Squid
Servidor Proxy SquidServidor Proxy Squid
Servidor Proxy Squid
 
Minicurso GNU/Linux básico - Aula2 - Semana Sistemas de Informação 2015 - UNI...
Minicurso GNU/Linux básico - Aula2 - Semana Sistemas de Informação 2015 - UNI...Minicurso GNU/Linux básico - Aula2 - Semana Sistemas de Informação 2015 - UNI...
Minicurso GNU/Linux básico - Aula2 - Semana Sistemas de Informação 2015 - UNI...
 
Tutorial servidor debian linux ocs invetory
Tutorial servidor debian linux ocs invetory Tutorial servidor debian linux ocs invetory
Tutorial servidor debian linux ocs invetory
 
MigraçãO
MigraçãOMigraçãO
MigraçãO
 
Servidor Web.pdf
Servidor Web.pdfServidor Web.pdf
Servidor Web.pdf
 
PHP e Redis
PHP e RedisPHP e Redis
PHP e Redis
 
O docker vai mudar tudo na sua infra estrutura-ti
O docker vai mudar tudo na sua infra estrutura-tiO docker vai mudar tudo na sua infra estrutura-ti
O docker vai mudar tudo na sua infra estrutura-ti
 
Project HA
Project HAProject HA
Project HA
 
Instalação e configuração apache Ubuntu Server
Instalação e configuração apache Ubuntu ServerInstalação e configuração apache Ubuntu Server
Instalação e configuração apache Ubuntu Server
 
Aula14 vsftp de-introopenldap
Aula14 vsftp de-introopenldapAula14 vsftp de-introopenldap
Aula14 vsftp de-introopenldap
 
Projeto jorge,jefff, matheus
Projeto   jorge,jefff, matheusProjeto   jorge,jefff, matheus
Projeto jorge,jefff, matheus
 
Trabalho Configuração de Servidores Unix
Trabalho Configuração de Servidores UnixTrabalho Configuração de Servidores Unix
Trabalho Configuração de Servidores Unix
 
Apresentação zend framework 2 parte 1
Apresentação zend framework 2   parte 1 Apresentação zend framework 2   parte 1
Apresentação zend framework 2 parte 1
 
Docker: uma visão geral e exemplos de uso
Docker: uma visão geral e exemplos de usoDocker: uma visão geral e exemplos de uso
Docker: uma visão geral e exemplos de uso
 

Apache proxy

  • 1. Fundamentos de Redes de Computadores Prof. Alex Dias
  • 2.
  • 3. Servidor http usado para gerenciar a hospedagem e visualização de páginas web, disponível para os sistemas linux e windows. socket
  • 4. HTTPD versão antiga do apache (httpd.conf) APACHE2 versão atual do apache (apache2.conf e outros includes) Apache HTTP Server 2.4.1 (21/02/2012)
  • 5. Diretório de configuração: /etc/apache2 ➢ apache2.conf diretivas de configuração do apache ➢ ports.conf configuração da porta lógica ➢ /sites-available hosts virtuais disponíveis ➢ /sites-enable hosts virtuais ativos
  • 6. Arquivo dividido em 3 seções: Seção 01: configurações globais ServerRoot raiz da árvore de diretórios onde estão localizados os arquivos de configuração do apache TimeOut tempo limite de espera pelo envio de dados entre o cliente e o servidor MaxKeepAliveRequests número máximo de requisições em um mesma sessão. E vários outros...
  • 7. Seção 2 – configurações principais: ServerName, ServerRoot, ServerAdmin, etc. (no Apache2 estas configurações são feitas nos diretórios: mods-enable, sites-available, conf.d e no arquivo httpd.conf)  Seção 3 – configurações de hosts virtuais (arquivo default no diretório sites-available)
  • 8. Os próximos passos mostram as configurações necessárias para hospedagem da homepage do usuário zedascouves. http://www.zedascouves.com
  • 9. Contém os arquivos de configuração dos hosts virtuais. Na parte esquerda da figura é mostrado o arquivo default e, na direita, o arquivo modificado zedascouves.
  • 10. Options:  Indexes: Se não existir o arquivo index.html (definido em “DirectoryIndex”), será criada uma lista dos arquivos existente no diretório atual.  MultiViews: Habilita negociação de conteúdo, permitindo o envio de um arquivo no idioma do navegador do cliente.  FollowSymLinks: O apache2 vai seguir os links simbólicos para este diretório .
  • 11. Outros parâmetros: AllowOverride None O apache2 não vai procurar o arquivo .htaccess que contém as permissões de acesso para este diretório. Order allow,deny Ordem de permissão de acesso. Allow from all Libera acesso a partir de qualquer endereço.
  • 12. Contém os arquivos de configuração (hosts virtuais) dos sites que estarão ativos após iniciar o servidor apache2.  Para ativar o host virtual digite: $sudo a2ensite zedascouves
  • 13. Configurações do arquivo hosts para os domínios virtuais criados e que não são reconhecidos pelo dns.
  • 14. $sudo /etc/init.d/apache2 reload ou $sudo invoke-rc.d apache2 reload É usual deixar que o servidor Apache fique ativo na inicialização do linux, mas é possível alterar este status:  Adicionando o apache2 na inicialização do linux $sudo update-rc.d apache2 defaults  Ou, para removê-lo da inicialização $sudo update-rc.d -f apache2 remove
  • 15.
  • 16. E n d ereço d a R ed e L o c al E n d e r e ç o v á lid o n a I n t e r n e t . . . PRO X Y RED E LO CAL IN T E R N E T ( e n d e r e ç o s n ã o v is u a liz a d o s n a in t e r n e t )
  • 17. Compartilhamento de acesso: permite que as máquinas da rede local tenham acesso a internet através de um único endereço válido.  Cache de endereços: armazena as páginas recém visitadas de forma a aumentar a performance da rede nos próximos acessos.  Filtro de pacotes: estabelece regras de proibição ou permissão para os dados que saem da rede local.
  • 18. Servidor proxy usado no ambiente linux  Instalação: $sudo apt-get install squid Arquivo de configurações: /etc/squid/squid.conf
  • 19. ACL access lists – listas de acesso contém informações sobre o conteúdo que será submetido às regras do squid. Sintaxe: acl nome_acl tipo_lista objeto acl parâmetro que define a criação de uma acl nome_acl nome que identifica a acl tipo_lista indica qual o tipo de conteúdo da lista objeto conteúdo a ser verificado (arquivo)
  • 20. Existem diversos parâmetros para os tipos de lista. Inicialmente trabalharemos com 2 tipos: src a lista deve conter endereços IP url_regex a lista deve conter caracteres (palavras)
  • 21. HTTP_ACCESS Contém as regras que fazem algum tipo de ação sobre uma determinada lista (acl). Sintaxe: http_access ação nome_acl ação: allow : permite que o conteúdo da acl seja executado deny : proíbe a execução do conteúdo da acl.
  • 22. Configurar o squid para controlar uma rede com as seguintes especificações: ◦ Rede local: 192.168.0.0/24 ◦ Proxy (gateway): 192.168.0.254 ◦ Hosts sem acesso: 192.168.0.10 e 192.168.0.11 ◦ Hosts com acesso: todos os demais ◦ Lista de palavras “proibidas”: sexo, facebook, etc... ◦ Host do chefe: 192.168.0.1 (sem restrições!)
  • 23. <arquivo /etc/squid/squid.conf> ... acl hosts_permit src “/etc/squid/ips_permit” acl hosts_proib src “/etc/squid/ips_proib” acl host_chefe src “/etc/squid/ip_chefe” acl proibido url_regex “/etc/squid/lista_proib” ...
  • 24. <arquivo /etc/squid/squid.conf> ... http_access allow host_chefe http_access deny proibido http_access deny hosts_proib http_access allow hosts_permit ...
  • 25. $sudo gedit /etc/squid/ips_permit 192.168.0.0/24 $sudo gedit /etc/squid/ips_proib 192.168.0.10 192.168.0.11 $sudo gedit /etc/squid/ip_chefe 192.168.0.1 $sudo gedit /etc/squid/lista_proib facebook sexo bate-papo
  • 26. <arquivo /etc/squid/squid.conf> ... cache_dir ufs /var/spool/squid 100 16 256 ... Qtde de subdiretórios Tipo de Diretório Tamanho Qtde de arquivo do cache do cache diretórios
  • 27. Criação dos diretórios e subdiretórios que irão abrigar as páginas visitadas no cache do servidor: $sudo squid -z  Ativação do servidor: $sudo /etc/init.d/squid reload ou $sudo service squid restart
  • 28. Os clientes (browsers) devem ser configurados para acesso ao endereço ip do proxy na porta 3128.
  • 29. Fazer a configuração do apache para hospedar dois sites diferentes no mesmo servidor.  Fazer a configuração do servidor proxy de acordo com o exemplo da aula  Pesquisar e configurar os seguintes parâmetros de configuração adicionais: ◦ Autenticação ◦ Restrição de acesso por endereço MAC ◦ Escolha outro tipo de restrição qualquer.
  • 30. Escreva um relatório sobre o experimento realizado Dica: coloque-se no lugar de quem lerá o relatório e tente reproduzir o experimento e obter os mesmos resultados descritos.