UTILIZE A PESQUISA!

Tunnelling

Tunnelling (tunelamento) é a capacidade de criar túneis entre duas máquinas por onde certas informações passam.

Em se tratando de um ramo do protocolo TCP/IP, o SSH e o Telnet, pode-se criar uma conexão entre dois computadores, intermediada por um servidor remoto, fornecendo a capacidade de redirecionar pacotes de dados.

Por exemplo, se alguém se encontra dentro de uma instituição cuja conexão à Internet é protegida por um firewall que bloqueia determinadas portas de conexão, não será possível, por exemplo, acessar e-mails via POP3, o qual utiliza a porta 110, nem enviá-los via SMTP, pela porta 25.

As duas portas essenciais são a 80, para HTTP e a 443, para HTTPS, as quais garantem uma navegação em páginas da Web sem restrições.

Não há necessidade do administrador da rede deixar várias portas abertas, uma vez que conexões indesejadas e que comprometam a segurança da instituição possam ser estabelecidas através mesmas.

Contudo, isso compromete a dinamicidade de aplicações na Internet. Um funcionário ou aluno que queira acessar painéis de controle de sites, arquivos via FTP ou amigos via Instant Messengers, por exemplo, não terá a capacidade de fazê-lo, uma vez que as respectivas portas para seus funcionamentos estão bloqueadas.

Para quebrar essa imposição rígida, porém necessária, o SSH oferece o recurso do Túnel.

O processo se caracteriza por duas máquinas ligadas ao mesmo servidor SSH, que faz apenas o redirecionamento das requisições do computador que está sob firewall.

O usuário envia para o servidor um pedido de acesso ao servidor pop.xxxxxxxx.com pela porta 443 (HTTPS), por exemplo. Então, o servidor acessa o computador remoto e requisita a ele o acesso ao protocolo, retornando um conjunto de pacotes referentes à aquisição.

O servidor codifica a informação e a retorna ao usuário via porta 443. Sendo assim, o usuário tem acesso a toda a informação que necessita.

É importante salientar que a prática do Tunnelling não é ilegal caso o fluxo de conteúdo esteja de acordo com as normas da instituição.

Criando um túnel SSH

# ssh -l usuário localhost -L2004:serviço a ser acessado:80 -f sleep 60

Isso basicamente redireciona o tráfego da porta 80 do servidor remoto para a porta 2004 do host local, com um timeout de 60 segundos.

Agora, no seu browser basta colocar o endereço:

http://localhost:2004

Assim sua navegação está encriptada.

Operações do SNMP

Lista de operações suportadas pelo SNMP:

*Get - Utilizada para ler o valor de uma variável; o gerente solicita que o agente obtenha o valor da variável;

*Set - Utilizada para alterar o valor da variável; o gerente solicita que o agente faça uma alteração no valor de uma variável;

*Trap - Utilizada para comunicar um evento ; o agente comunica ao gerente o acontecimento de um evento previamente determinado.

Configuração de rede em Linux

Identificação da interface de rede

O primeiro passo deste tutorial é para configurar uma rede no Linux. Identificar a placa de rede (ou mais) instaladas. Utilize o comando: sudo mii-tool
Um resultado desse comandopossível seria: eth0: negotiated 100baseTx-FD, link ok
Indicando que o sistema contém a placa (interface) denominada eth0, operando a 100 Mbps e com link operacional.

Configuração da interface de rede

Para configurar esta placa deve-se editar o arquivo /etc/network/interfaces. Um exemplo seria:
auto lo
# Configurar interface de loopback na inicialização
iface lo inet loopback# Definição da interface de loopback
auto eth0

#Configurar interface eth0 na inicialização
iface eth0 inet static

# Interface eth0 com endereço estático
address 192.168.1.1

# Endereço da interface
netmask 255.255.255.0
# Máscara de rede
broadcast 192.168.1.255
# Endereço de broadcast
gateway 192.168.1.254
# Gateway padrão
auto eth1
# Configurar interface eth1 na inicialização
iface eth1 inet dhcp
# Configurar por DHCP


Para fazer com que uma interface pare de funcionar temporariamente digite o comando:
sudo ifdown eth0

Para fazer com que uma interface entre em operação digite o comando:
sudo ifup eth0

Para verificar como está configurada uma interface digite o comando:
ifconfig eth0

Para configurar uma interface temporariamente (para definir um endereço, máscara e gateway) digite o comando:
sudo ifconfig eth0 192.0.0.1 netmask 255.255.255.0 gw 192.0.0.254 up

Gateway e roteamento

Para definir um gateway, é necessário estabelecer uma rota. Por exemplo:
sudo route add -net 0.0.0.0 netmask 0.0.0.0 gw 192.0.0.254
irá criar uma rota para a rede 0.0.0.0 com máscara 0.0.0.0 (ou seja, a Internet) passando pelo gateway 192.0.0.254.

Nome do computador

O nome da máquina deve ser definido de duas formas. Primeiramente com o comando hostname:
sudo hostname PontodeRedesServer

E o arquivo /etc/hosts deve ter, no mínimo, linhas como as seguintes:
127.0.0.1 localhost
127.0.1.1 PontodeRedesServer


Servidores de DNS

Para definir o endereço dos servidores DNS a serem consultados, utiliza-se o arquivo /etc/resolv.conf. Um exemplo de arquivo seria:
nameserver 200.199.198.197
nameserver 197.198.199.200

Diferenças entre as versões SNMP

SNMP v1

O SNMPv1 consiste de três documentos:
RFC 1155 define o Structure of Management Information (SMI). Ou seja, os mecanismos usados para descrever e nomear os objetos que serão gerenciados
>RFC 1212 define um mecanismo de descrição mais conciso mas é inteiramente consistente ao SMI.
>RFC 1157 define o Simple Network Management Protocol (SNMP)

Os dois primeiros documentos definem a linguagem de dados. O terceiro documento define as operações do protocolo SNMPv1 utilizando protocol data units (PDUs). Os operadores definidos no SNMPv1 são: get, get-next, get-response, set-request e trap.

Muitos dos conceitos de segurança e administração encontrados no SNMPv3 são encontrados no modelo do SNMPv1.
O SNMPv1 introduz o conceito serviço de autenticação suportando um ou mais métodos. No SNMPv3 o conceito de autenticação foi expandido para incluir serviços como privacidade.

O modelo SNMPv1 possui o controle de acesso baseado num conceito chamado SNMP MIB view. O SNMPv3 especifica um conceito fundamentalmente similar chamado view-based access control.

Apesar do SNMPv1 ter antecipado um serviço de autenticação suportando vários métodos, não foi criado nenhum método além de uma simples autenticação baseada em community strings. Essa foi a grande deficiência do SNMPv1. Como o conceito de "segurança" pode ser interpretado de modo bastante diferente por cada usuário, o serviço de autenticação do SNMPv1 ficou para ser definido em um outro bloco o qual nunca foi posto em prática. O modelo SNMPv3 já possui uma arquitetura para esse bloco.

SNMPv2

O SNMPv2 está descrito nas RFCs: 1902, 1903,1904, 1905, 1906, and 1907. A relação entre o SNMPv1 e o SNMPv2 está descrita no RFC 1908.

O SNMPv2 possui algumas vantagens sobre o SNMPv1. São elas:
*Mais um tipo de dados: 64 bit counter;
*Melhora na eficiência e na performance: operador get-bulk;
*Notificação de evento confirmado: operador inform;
*Maior detalhamento dos erros;
*Modos facilitados de criação e deleção de linhas na MIB;
*Melhorias na definição da linguagem de dados.

Apesar do modelo SNMPv2 estar descrito no RFCs 1902-1907, alguns objetivos iniciais do projeto não foram implementados. Os objetivos não alcançados incluem o fornecimento de segurança tais como:
*autenticação: identificação da origem, integridade da mensagem;
*privacidade: confidencialidade;
*autorização e controle de acesso.

SNMPv3

Os RFCs do SNMPv3 foram produzidos pelo SNMPv3 Working Group da Internet Engineering Task Force (IETF). Esse Working Group se baseou bastante nos documentos Draft Standard do SNMPv2. Como resultado o SNMPv3 é o SNMPv2 com blocos de segurança e administração.
O modelo SNMPv3 descrito nos RFCs 2570, 2571, 2572, 2573, 2574, e 2575, relaciona as deficiências no SNMPv2 em relação a segurança e admninistração. A co-existência do SNMPv1, SNMPv2 e SNMPv3 está descrita no RFC 2576 .

Novas ferramentas foram adicionadas no SNMPv3. São elas:
*Segurança;
*autenticação e privacidade ;
*autorização e controle de acesso;
*Modelo administrativo;
*nomeação das entidades;
*gerência das chaves;
*notificação dos destinos;
*relação dos proxys configuração remota através de operadores SNMP.

Protocolo de gerenciamento SNMP

Definição

O protocolo SNMP (Simple Network Management Protocol) tem como premissa à flexibilidade e a facilidade de implementação, também em relação aos produtos futuros.
O SNMP é um protocolo de gerência definido a nível de aplicação, é utilizado para obter informações de servidores SNMP - agentes espalhados em uma rede baseada na pilha de
protocolos TCP/IP. Os dados são obtidos através de requisições de um gerente a um ou mais
agentes utilizando os serviços do protocolo de transporte UDP - User Datagram Protocol para
enviar e receber suas mensagens através da rede. Dentre as variáveis que podem ser requisitadas utilizaremos as MIBs podendo fazer parte da MIB II, da experimental ou da privada.
O gerenciamento da rede através do SNMP permite o acompanhamento simples e fácil
do estado, em tempo real, da rede, podendo ser utilizado para gerenciar diferentes tipos de sistemas.
Este gerenciamento é conhecido como modelo de gerenciamento SNMP, ou
simplesmente, gerenciamento SNMP. Portanto, o SNMP é o nome do protocolo no qual as informações são trocadas entre a MIB e a aplicação de gerência como também é o nome deste
modelo de gerência.
Os comandos são limitados e baseados no mecanismo de busca/alteração. No mecanismo de busca/alteração estão disponíveis as operações de alteração de um valor de um objeto, de obtenção dos valores de um objeto e suas variações.
A utilização de um número limitado de operações, baseadas em um mecanismo de
busca/alteração, torna o protocolo de fácil implementação, simples, estável e flexível. Como
conseqüência reduz o tráfego de mensagens de gerenciamento através da rede e permite a
introdução de novas características.
O funcionamento do SNMP é baseado em dois dispositivos o agente e o gerente. Cada
máquina gerenciada é vista como um conjunto de variáveis que representam informações referentes ao seu estado atual, estas informações ficam disponíveis ao gerente através de consulta e podem ser alteradas por ele. Cada máquina gerenciada pelo SNMP deve possuir um agente e uma base de informações MIB.

O Agente

É um processo executado na máquina gerenciada, responsável pela manutenção das
informações de gerência da máquina. As funções principais de um agente são:
* Atender as requisições enviadas pelo gerente;
*Enviar automaticamente informações de gerenciamento ao gerente, quando previamente
programado.

O agente utiliza as chamadas de sistema para realizar o monitoramento das informações
da máquina e utiliza as RPC (Remote Procedure Call) para o controle das informações da máquina.


O Gerente

É um programa executado em uma estação servidora que permite a obtenção e o envio
de informações de gerenciamento junto aos dispositivos gerenciados mediante a comunicação com um ou mais agentes.


Esta figura mostra como funciona o relacionamento de um gerente com o objeto gerenciado


O gerente fica responsável pelo monitoramento, relatórios e decisões na ocorrência de problemas enquanto que o agente fica responsável pelas funções de envio e alteração das informações e também pela notificação da ocorrência de eventos específicos ao gerente.

Esta figura mostra o relacionamento entre gerente e agente baseado no modelo TCP/IP

Serviços e Protocolos Associados às portas TCP e UDP

Na imagem abaixo listam-se os serviços e protocolos associados às portas TCP e UDP (clique na imagem para ampliar):

NCP

NCP é sigla de network control protocol, primeiro protocolo servidor a servidor da ARPANET (é a rede de compartilhamento de computadores da ARPA - Advanced Research Projects Agency, que mais tarde evoluiu para a Internet). Ele foi criado em dezembro de 1971, pelo Network Working Group (NWG).

O NCP é composto por uma família de protocolos de rede. Ele estabelece e configura os diferentes protocolos na camada de rede que serão utilizados pelo PPP.
Links ponto-a-ponto tendem a agravar alguns problemas comuns a diversas famílias de protocolos de rede. Por exemplo, atribuição e gerenciamento de endereços IP é especialmente difícil sobre circuitos comutados com links ponto-a-ponto. Estes problemas são tratados pela família de Network Control Protocols( NCPs ), onde é necessário um gerenciamento específico para cada problema.

O Protocolo PPP

O protocolo Ponto-a-Ponto (PPP (Point-to-Point Protocol)) é usado no nível da camada de enlace de dados, tendo em vista que toda a internet é baseada nele para poder fazer os equipamentos se comunicarem. E aqui não falo apenas da comunicação entre dois roteadores no meio do caminho entre seu computador e o de alguém que está no Japão. Ele trabalha também na conexão que há entre sua casa e o seu provedor de acesso à internet.
Basicamente, ele tem recursos que permitem a detecção de erros de transmissão; um subprotocolo chamado LCP (Link Control Protocol - Protocolo de Controle de Enlace) que é usado para ativar e desativar linhas de transmissão, testá-las e negociar opções de funcionamento; e um subprotocolo chamado NCP (Network Control Protocol - Protocolo de Controle de Rede) que é usado para fazer com que a camada de enlace de dados "converse" com a camada de rede.
Quanto ao NCP, existem vários tipos dele, cada um sendo usado para trabalhar em conjunto com um determinado protocolo correspondente na camada de rede.



Noção de ligação ponto a ponto
Pela linha telefônica clássica, dois computadores, no máximo, podem comunicar por modem, assim como não é possível ligar simultaneamente para duas pessoas pela mesma linha telefônica. Diz-se então que se tem uma ligação ponto a ponto, quer dizer uma ligação entre duas máquinas reduzida à sua mais simples expressão: não é preciso partilhar a linha entre várias máquinas, cada uma fala e responde por sua vez.

Assim, foram criados numerosos protocolos de modem. Os primeiros dentre eles permitiam uma simples transmissão de dados entre duas máquinas, seguidamente alguns foram dotados de um controlo de erro, e com o aumento da Internet, foram dotados da capacidade de dirigir máquinas. Desta maneira, existem doravante dois grandes protocolos de modem:
¹SLIP: um protocolo antigo, fraco em controlos
²PPP: o protocolo mais utilizado para os acessos à Internet por modem, autoriza um endereçamento das máquinas

Configurando uma rede local por shell script

Um pequeno wizard em shell script para configuração basica de uma rede local, e gerando um outro script, com o nome ecolhido pelo usuário, para iniciar a configuração posteriormente sem a nessessidade de acionar o wizard novamente.

#! /bin/bash
#*******************************************************************
#Autor: Eduardo dos Santos Monteiro
#Data: 22/04/2005
#Versão:1.0
#Cidade: Goiânia
#Estado: GO
#*******************************************************************
clear
echo "Digite o nome da Interface que deseja configurar? (Ex.: eth0)"
read INTERFACE
echo "Digite o IP Desejado (Ex.: 192.168.1.1):"
read IP
echo "Digite a Mascara (Ex.: 255.255.255.0):"
read MASCARA
echo "Digite o Gateway (Caso não tenha deixe em branco):"
read GW
echo "Digite os Servidor de DNS Primário:"
read DNS1
echo "Digite os Servidor de DNS Secundário:"
read DNS2
echo "Digite o Nome do Atalho (Ex.:"rede1". Vai ser criado um shell-script executavel na pasta /bin. Bastando apenas todas as vezes que desejar iniciar essa rede digitar o comando $rede1)"
read ATALHO
#---------------------------------------------------------------------
# VERIFICA AS CONFIGURAÇÕES APRESENTADAS
#---------------------------------------------------------------------
echo $INTERFACE
echo $IP
echo $MASCARA
echo $GW
echo $DNS1
echo $DNS2
echo /bin/$ATALHO
#Iniciando Scripts
ifconfig $INTERFACE down
ifconfig $INTERFACE $IP netmask $MASCARA up
route add default gw $GW
echo "nameserver $DNS1" > /etc/resolv.conf
echo "nameserver $DNS2" >> /etc/resolv.conf
#Criando o Script
echo "ifconfig $INTERFACE down" > /bin/$ATALHO
echo "ifconfig $INTERFACE $IP netmask $MASCARA up" >> /bin/$ATALHO
echo "route add default gw $GW" >> /bin/$ATALHO
echo "echo nameserver $DNS1 > /etc/resolv.conf" >> /bin/$ATALHO
echo "echo nameserver $DNS2 >> /etc/resolv.conf" >> /bin/$ATALHO
chmod +x /bin/$ATALHO
#---------------------------------------------------------------------
# FIM DO SCRIPT
#---------------------------------------------------------------------

Endereço MAC

O endereço MAC (do inglês Media Access Control) é o endereço físico de 48 bits da estação, ou, mais especificamente, da interface de rede. O protocolo é responsável pelo controle de acesso de cada estação à rede Ethernet. Este endereço é o utilizado na camada 2 (Enlace) do Modelo OSI.

Representa-se um endereço MAC escrevendo, exatamente, 12 dígitos hexadecimais agrupados dois a dois – os grupos são separados por dois pontos.
Exemplo: 00:00:5E:00:01:03

Os três primeiros octetos são destinados à identificação do fabricante, os 3 posteriores são fornecidos pelo fabricante. É um endereço único, i.e., não existem, em todo o mundo, duas placas com o mesmo endereço.

Para descobrir o endereço MAC no Windows digite no prompt getmac ou ipconfig/all e no Linux digite no terminal ifconfig.