Curso de extensão em Administração de redes com GNU/Linux Italo Valcy - Gestores da Rede Acadêmica de Computação Departamento de Ciência da Computação Universidade Federal da Bahia Italo ValcyAdministração de redes com GNU/Linux
Todo o material aqui disponível pode, posteriormente, ser utilizado sobre os termos da: Italo ValcyAdministração de redes com GNU/Linux Creative Commons License: Atribuição - Uso não comercial - Permanência da Licença
Italo ValcyAdministração de redes com GNU/Linux Assuntos abordados GNU/Linux em rede Laboratórios práticos
Italo ValcyAdministração de redes com GNU/Linux GNU/Linux em rede Conexões O tipo de conexão mais comum, e também o mais didático, são os adaptadores de rede
Italo ValcyAdministração de redes com GNU/Linux GNU/Linux em rede Conexões O Linux trata os adaptadores de rede através do tipo de conexão. Vamos utilizar um adaptador de rede do tipo Ethernet, pois estaremos abordando apenas redes locais (LANs).
Italo ValcyAdministração de redes com GNU/Linux GNU/Linux em rede Adaptadores de rede O nome dado aos adaptadores ethernet é eth, e o Linux insere um número para referência após cada adaptador instalado. Assim temos: 1º adaptador de rede – eth0 2º adaptador de rede – eth1 E assim por diante...
Italo ValcyAdministração de redes com GNU/Linux GNU/Linux em rede Adaptadores de rede Um outro dispositivo que normalmente é configurado denominado loopback, cujo ip é (RFC1700). O loopback, tem como nome associado "localhost" e referencia a própria máquina.
Italo ValcyAdministração de redes com GNU/Linux GNU/Linux em rede Comandos básicos # ifconfig – Verifica o visualiza, ativa ou desativa uma interface de rede # ip – visualiza ou manipula rotas, dispositivos, políticas de roteamento e túneis IP. # mii-tool – exibe o status das interfaces de rede conectadas ao computador
Italo ValcyAdministração de redes com GNU/Linux GNU/Linux em rede Configurando uma interface: ifconfig Para visualizar informações sobre as interfaces configuradas, digitamos ifconfig sem parâmetros. Para visualizar informações de uma interface específica, devemos passar o nome da interface como parâmetro.
Italo ValcyAdministração de redes com GNU/Linux GNU/Linux em rede Configurando uma interface: ifconfig Alguns parâmetros -a exibe todas as interfaces presentes, mesmo as inativas. up|down|promisc define o tipo de funcionamento da interface [ip] netmask, define a netmask para uma interface. Exemplo: # ifconfig eth0 netmask [ip] broadcast, endereço de broadcast da rede. Exemplo: # ifconfig eth0 broadcast
Italo ValcyAdministração de redes com GNU/Linux GNU/Linux em rede Configurando uma interface: ifconfig É possível alterar “virtualmente” o MAC Address de uma placa de rede. Para isso: Primeiro “derrubamos” a interface: ifconfig eth0 down Agora usamos o parâmetro hw, seguido de ether, para alterar o MAC: ifconfig eth0 hw ether 00:D1:D2:65:2C:03 Para que as alterações tenham efeito, “levantamos” a interface novamente: ifconfig eth up
Italo ValcyAdministração de redes com GNU/Linux GNU/Linux em rede Interfaces virtuais: ifconfig Com o ifconfig, podemos atribuir mais de um endereço IP a mesma interface de rede, criando interfaces virtuais atreladas a uma interface física. O nome do alias da interface é definido pelo nome da interface seguido de ":" e do n.º do alias. # ifconfig eth # ifconfig eth0: # ifconfig eth0: # ifconfig eth0:
Italo ValcyAdministração de redes com GNU/Linux GNU/Linux em rede Verificação de status: ip O comando ip fornece informações sobre sua configuração atual. Alguns parâmetros addr, fornece informações sobre as placas de rede: endereço IP, máscara e nome da interface de rede. route, exibe informações sobre a tabela de rotas da máquina. A última linha, iniciada com “default”, indica o caminho padrão dos pacotes ou o gateway de seu host. Exemplo de uso: ip addr ip route
Italo ValcyAdministração de redes com GNU/Linux GNU/Linux em rede Definindo rotas: route Q. Como podemos configurar o gateway padrão? A. O comando route é usado para mostrar ou manipular a tabela de roteamento IP em sistemas GNU/Linux e Unix. A tabela de roteamento é usada para configurar rotas estáticas para hosts ou redes específicas via uma interface depois de tê-la configurado com o ifconfig. Quando as opções add ou del são usadas o route modifica a tabela de roteamento. Sem essas opções, route exibe o conteúdo atual da tabela de roteamento.
Italo ValcyAdministração de redes com GNU/Linux GNU/Linux em rede Exibindo a tabela de roteamento: route Para exibir a tabela de roteamento: # route Tabela de Roteamento IP do Kernel Destino Roteador MáscaraGen. Opções Métrica Ref Uso Iface * U eth1 link-local * U eth1 default UG eth1 A opção -n é usada para exibir endereços númericos: # route -n Tabela de Roteamento IP do Kernel Destino Roteador MáscaraGen. Opções Métrica Ref Uso Iface U eth U eth UG eth1
Italo ValcyAdministração de redes com GNU/Linux GNU/Linux em rede Adicionar/configurar o gateway padrão: route A sintaxe é a seguinte: route add default gw {ADDRESS} {INTERFACE} Onde: ADDRESS: específica o IP do gateway. INTERFACE: especifica a interface a ser usada. Por exemplo, supondo nosso gateway com IP , usamos o seguinte comando: route add default gw Para remover o gateway: route del default
Italo ValcyAdministração de redes com GNU/Linux GNU/Linux em rede Salvando as configurações No Debian GNU/Linux, a configuração padrão das interfaces de rede é feita no arquivo /etc/network/interfaces Uma configuração básica com IP fixo poderia ser: # The loopback network interface auto lo iface lo inet loopback # The primary network interface auto eth0 iface eth0 inet static address netmask broadcast gateway Reiniciamos o serviço: /etc/init.d/networking restart
Italo ValcyAdministração de redes com GNU/Linux GNU/Linux em rede Salvando as configurações É possível também configurar o /etc/network/interfaces para obter um endereço IP automaticamente através do protocolo DHCP (Dynamic Host Control Protocol): # The loopback network interface auto lo iface lo inet loopback # The primary network interface auto eth0 iface eth0 inet dhcp
Italo ValcyAdministração de redes com GNU/Linux GNU/Linux em rede Testando conectividade com o ping Ping é uma ferramenta simples e extremamente prática para análise de rede. Ele envia pacotes ICMP (request e replay) para um computador alvo e mede o tempo de resposta de cada requisição (quando há respostas).
Italo ValcyAdministração de redes com GNU/Linux GNU/Linux em rede Monitorando o tráfego: tcpdump Podemos analisar todo o tráfego passando por nossa placa de rede pelo uso de ferramentas como tcpdump. O monitoramento é feito especificando-se a interface desejada: eth0, eth1, ppp0 e etc. A saída do comando corresponde ao tráfego de pacotes enviados e recebidos juntamente com os endereços de origem e destino. Para instalar o tcpdump: aptitude install tcpdump
Italo ValcyAdministração de redes com GNU/Linux GNU/Linux em rede Monitorando o tráfego: tcpdump Assim como outros programas de captura de tráfego, ele usa a libpcap, e adiciona uma série regras de sintaxe interessantes além de poder salvar os dados em um arquivo usado por muitas aplicações. Precisa de privilégios de root para executar. Para iniciar a captura, basta digitar: tcpdump [opcoes] [filtros] Para finalizar a captura, tecle Ctrl-C.
Italo ValcyAdministração de redes com GNU/Linux GNU/Linux em rede Monitorando o tráfego: tcpdump Exemplo de pacote capturado:
Italo ValcyAdministração de redes com GNU/Linux GNU/Linux em rede Monitorando o tráfego: tcpdump Para capturarmos somente da interface eth0: tcpdump -i eth0 Para capturarmos somentes pacotes detinados à tcpdump dst host Combinando várias opções: tcpdump -i eth0 -n dst host and port 80 -w captura.cap
Italo ValcyAdministração de redes com GNU/Linux GNU/Linux em rede Monitorando o tráfego: wireshark
Italo ValcyAdministração de redes com GNU/Linux GNU/Linux em rede Dúvidas?
Italo ValcyAdministração de redes com GNU/Linux Laboratório Configurando LANs Verifique o roteiro de prática com o instrutor