Pular para o conteúdo principal

Proxy no Linux ( com Squid )

Servidor Proxy (Squid )

O serviço do Squid fica em /etc/init.d/squid podemos mudar de acordo com a distribuição.
Servidor Proxy é um software que recebe conexão de um dado cliente e repassa essas informações, a outros hosts. Suas principais utilidade são:

1.Disponibilizar internet a computadores da rede quando se tem apenas um IP disponível, ou seja, apenas um computador ligado diretamente a internet, desse modo os outros computadores serão clientes, desse, passando a acessar os recursos através do mesmo computador.
2.Aplicar regras de restrições de acesso, como por exemplo, bloquear acesso de determinado usuário a determinado site, ou serviço, ou bloquear acesso de toda a rede a algum site.
3.Ajustar melhor desempenho para acesso a serviços, já que os Servidores Proxy, disponibilizam caches, para diminuir o custo com a banda, aumentar a velocidade já que alguns dados só terão que percorrer o caminho, Cliente – Servidor, e não Internet – Servidor – Cliente.
Funcionamento


Proxy anônimo

Um Proxy anônimo é um servidor Proxy que este conectado a internet e permite acesso de qualquer computador dessa maneira, qualquer computador conectado a rede mundial de computadores em qualquer lugar do mundo pode acessar esse servidor fazendo isso, pode-se navegar anonimamente na internet, já que ele apenas recebe e enviar os pacotes aos destinatários, dessa maneira é possível por exemplo, acessar sites que estejam bloqueado na rede local. Exemplos de servidores são:

Squid, ISA server ( Microsoft ).

Implementação na prática. Nesse tópico é apresentado a configuração de um servidor Proxy (Squid)

No arquivo /etc/squid/squid.conf

http_port 3128
visible_hostname Seminario
acl all src 0.0.0.0/0.0.0.0
http_access allow all

Explicação:
http_port 3128 → É a porta que o servidor escutara para poder responder as solicitações, no caso 3128.
visible_hostname SERVIDOR : O nome do servidor, o mesmo que foi definido na configuração da rede. Para saber o nome do servidor use o comando hostname.

acl todos src 0.0.0.0/0.0.0.0 : Cria um ACL que nada mais é do que uma política de acesso, com o nome todos que se encaixa qualquer IP e qualquer mascara, no caso o primeiro 0.0.0.0 se refere aos IPs e o segundo 0.0.0.0 a mascara de rede.

http_access allow todos: Esse ultimo comando libera o acesso para o grupo que se encaixa em todos, ou seja qualquer computador e qualquer mascara. Esse tipo de configuração é a conhecida como Proxy transparente. Todos os comandos de configuração possível.

Postagens mais visitadas deste blog

Criando um sistema de login em Java.

Login Pessoal, nesse exemplo vou demonstrar como criar um sistema de login em Java, usando servlet , jsp , e html. A IDE usada será o Netbeans , Bom a primeira coisa a ser feita é criar um projeto web pelo NetBeans . Para isso, siga os seguintes passos. Menu     File → New Project Agora clique em Java Web, depois aplicação WEB. Agora clique em Next . Coloque um nome para sua aplicação WEB, e clique em finish . Novamente clique em Next . Feito isso, agora vamos criar o formulário para que o usuário entre com o Login e a senha. Formário HTML <%@page contentType="text/html" pageEncoding="UTF-8"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"    "http://www.w3.org/TR/html4/loose.dtd"> <html>     <head>         <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">         <titl...

Pilha em Pascal

program pilha; uses crt; type apontador = ^celula; celula = record item:integer; prox:apontador; end; tipopilha=record fundo:apontador; topo:apontador; end; procedure iniciapilha(var pilha:tipopilha); var aux:apontador; begin new (aux); pilha.fundo:=aux; pilha.topo:=pilha.fundo; pilha.topo^.prox :=nil; end; function vazia(pilha:tipopilha):boolean; begin vazia:=pilha.fundo = pilha.topo; end; procedure inserir(x:integer;var pilha:tipopilha); var aux:apontador; begin new (aux); pilha.topo^.prox:=aux; aux^.prox := nil; aux^.item :=x; pilha.topo := aux; end; procedure imprimir(pilha:tipopilha); var aux:apontador; begin aux := pilha.fundo^.prox; while ( aux nil ) do begin writeln(aux^.item); aux:=aux^.prox; end; end; procedure retirai(var x:integer; var pilha:tipopilha); var aux:apontador; begin aux:= pilha.fundo^.prox; x:=aux^.item; pilha.fundo^.prox := aux^.prox; if(pilha.fundo^.prox = nil ) then pilha.topo := pilha.fundo; dispose(aux); end; procedure retira...