16 Oct
Postado por: Pedro Pereira em: Cisco, Redes
Gostaria da ajuda de um especialista? Entre em contato e peça um orçamento.
Um roteador, ou router, nada mais é que um computador especializado em realizar uma tarefa específica. Neste caso, o roteador é especializado em interconectar redes. Sejam redes a quilômetros de distância ou duas redes no mesmo prédio: o roteador define como chegar de uma rede à outra, define quais rotas o pacote pode pegar e também faz um filtro de pacotes (através das ACL‘s) básico, para controlar o acesso.
A Cisco Systems é hoje a maior fornecedora de equipamentos de rede do mundo. Fundada em 1984 por Len Bosack e Sandy Lerner, a Cisco Systems produz diversos equipamentos de rede para finalidades distintas: roteadores, switches, telefones IP, etc., atendendo desde redes pequenas e bem simples, até redes de grandes provedores e companhias telefônicas (como a Telefônica, por exemplo). Atualmente, também está entrando no mercado doméstico através da aquisição da Linksys e das câmeras Flip.
Neste post vou te ensinar a fazer a configuração básica de um roteador Cisco. Coisas como definir hostname, descrição de uma determinada interface, configurar endereços IP’s, etc., que você deve sempre saber de cór e salteado. Além disso, grande parte do que explico aqui é tópico na prova Cisco CCNA.
Enquanto você está executando os comandos é natural que dúvidas em relação à eles surjam: pode ser que você esqueça qual parâmetro realiza alguma tarefa, pode ser que você simplesmente esqueceu qual a sintaxe de um comando específico. Ou então, você quer saber quais os comandos disponíveis em um determinado contexto de configuração. Vou dar uma rápida descrição aqui de como se virar nessas situações.
Para verificar quais comandos você pode executar em um determinado modo do IOS, basta pressionar a tecla “?” uma vez para que todos os comandos sejam listados junto com uma breve descrição de sua função:
Osiris#?
Exec commands:
access-enable Create a temporary Access-List entry
access-profile Apply user-profile to interface
access-template Create a temporary Access-List entry
alps ALPS exec commands
archive manage archive files
audio-prompt load ivr prompt
bfe For manual emergency modes setting
call Load IVR call application
cd Change current directory
clear Reset functions
clock Manage the system clock
configure Enter configuration mode
connect Open a terminal connection
copy Copy from one file to another
debug Debugging functions (see also ‘undebug’)
delete Delete a file
dir List files on a filesystem
disable Turn off privileged commands
disconnect Disconnect an existing network connection
elog Event-logging control commands
enable Turn on privileged commands
–More–
Note o “–More–” no fim da listagem. Isso indica que, por motivos de espaço na tela, nem todos os comandos foram listados ainda. Para continuar vendo as opções, pressione a barra de espaço. Semelhante aos comandos “more” e “less” do Linux/UNIX.
Agora que você já descobriu o comando que quer usar, como verificar quais as opções que ele suporta? Basta digitar o comando, um espaço e a “?” novamente. Por exemplo, o comando “ip”. Para verificar quais as opções que ele suporta, você faz o seguinte:
Osiris(config-if)# ip ?
Interface IP configuration subcommands:
access-group Specify access control for packets
accounting Enable IP accounting on this interface
address Set the IP address of an interface
audit Apply IDS audit name
auth-proxy Apply authenticaton proxy
authentication authentication subcommands
bandwidth-percent Set EIGRP bandwidth limit
bgp BGP interface commands
broadcast-address Set the broadcast address of an interface
cef Cisco Express Fowarding interface commands
cgmp Enable/disable CGMP
directed-broadcast Enable forwarding of directed broadcasts
dvmrp DVMRP interface commands
hello-interval Configures IP-EIGRP hello interval
helper-address Specify a destination address for UDP broadcasts
hold-time Configures IP-EIGRP hold time
igmp IGMP interface commands
inspect Apply inspect name
irdp ICMP Router Discovery Protocol
load-sharing Style of load sharing
mask-reply Enable sending ICMP Mask Reply messages
–More–
Novamente, note o “–More–” no final da listagem. Ainda há mais opções do que as exibidas nesta primeira listagem. Lembre-se sempre disso!
Uma última dica é o auto-complete de comandos. Esta funcionalidade do IOS completa a digitação de comandos automaticamente para você, poupando um pouco de digitação. Por exemplo, se você digitar apenas:
Osiris(config-if)# ip add<TAB>
Ele irá completar a digitação para:
Osiris(config-if)# ip address
E você pode digitar apenas os parâmetros que não podem ser completados automaticamente. Vale lembrar que esta funcionalidade só pode ser utilizada quando não há ambiguidade no nome dos comandos. Por exemplo, se houverem dois comandos diferentes (dentro do mesmo contexto) que comecem com a letra “c”, você precisa digitá-los até o ponto em que eles são diferentes e aí sim pressionar a tecla TAB para que o auto-complete funcione corretamente.
Se esta é a primeira vez que você está ligando o roteador, ou se você ainda não tem uma configuração salva (mesmo que já tenha utilizado o dispositivo anteriormente) o IOS irá perguntar se você deseja utilizar o assistente de configuração (chamado por ele de initial configuration dialog). Particularmente, não sou muito fã deste assistente não. Ele é um pouco complexo e deixa de oferecer várias opções interessantes de configuração.
Recomendo que você responda que não quer utilizar o assistente para configurar o roteador (respondendo “no” na pergunta e pressionando enter):
% Please answer ‘yes’ or ‘no’.
Would you like to enter the initial configuration dialog? [yes/no]: no
Depois é só teclar enter mais uma vez e você entrará no modo usuário e já pode começar a configuração do roteador.
O hostname que você configura direto no roteador tem relevância apenas localmente, ou seja, outros roteadores na sua rede não poderão se referir ao seu roteador pelo nome que você definir através do comando “hostname”. Para que seja possível definir um nome com relevância global (permitindo que outros roteadores utilizem o nome escolhido para a comunicação com este roteador) você deve alterar a zona correspondente no seu servidor DNS.
Para configurar o hostname, você deve acessar o seu roteador (se você ainda não configurou a senha para o telnet, você poderá apenas acessá-lo através do console. Mais adiante neste post você irá aprender a definir todas as senhas necessárias para acessar o dispositivo através da rede) e ir para o modo de configuração:
Router> enable
Router# configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
Router(config)#
O comando “configure terminal” o levará para o modo de configuração global do IOS. Aqui você pode alterar todas as configurações do sistema, por exemplo, definir os IP’s das interfaces, habilitar/desabilitar interfaces, definir rotas, configurar protocolos de roteamento dinâmico (como RIPv2, OSPF, etc), definir banners, etc.
Estando no modo de configuração, execute o seguinte comando para definir o hostname:
Router(config)# hostname NomeDesejado
Por exemplo,
Router(config)# hostname Osiris
Osiris(config)#
Note que, logo após você modificar o hostname, ele já passa a ser utilizado no prompt. Porém, não se engane: se você reiniciar o roteador agora o nome “desaparecerá”. Para que o nome fique configurado permanentemente no roteador, você deve salvar as configurações. Veremos como fazer isso mais adiante no post.
No IOS, você pode utilizar servidores DNS para que o roteador seja capaz de resolver nomes de domínio. Essa configuração é simples, porém é muito importante e pode ser de grande ajuda quando você está realizando testes de conectividade. Como em qualquer sistema operacional moderno, você poderá especificar um ou mais servidores DNS que serão consultados pelo roteador.
Para fazer a configuração, você irá utilizar o comando “ip name-server” no modo de configuração global:
Osiris(config)# ip name-server 8.8.8.8
Se você deseja configurar mais de um IP:
Osiris(config)# ip name-server 8.8.8.8 8.8.4.4 1.2.3.4 5.6.7.8
E pronto! Servidores DNS configurados.
Os banners são mensagens exibidas para usuários quando eles tentam se conectar ao roteador pela rede. Através destas mensagens você pode avisá-los sobre manutenção, regras relacionadas ao uso, instruções de segurança, etc.
Existem alguns tipos diferentes de banners que podem ser configurados no IOS:
Como você já deve ter percebido, a diferença entre os tipos de banners é o momento em que eles são exibidos. Como o motd é o único que sempre é exibido, não importa o modo de conexão, geralmente é ele quem eu uso. A não ser que você tenha que exibir mensagens diferenciadas para cada tipo de usuário, recomendo que faça o mesmo.
Para configurar o banner motd:
Osiris(config)# banner <tipo do banner> <caracter delimitador da mensagem>
Depois de definir o tipo do banner, você deve indicar qual caracter delimitará a mensagem que você vai digitar, ou seja, o caracter indicado no comando irá definir o fim da mensagem do banner. Por exemplo:
Osiris(config)# banner motd @
Enter TEXT message. End with the character ‘@’.
Banner de teste do roteador Cisco!@
No exemplo acima, a mensagem definida é “Banner de teste do roteador Cisco!”. O “@” não é considerado parte da mensagem. Vale lembar que o caracter que você escolher não pode aparecer no texto que você quer definir como sendo o conteúdo do banner.
Todos os outros tipos de banners seguem a mesma lógica. Para verificar todos os tipos de banners suportados pela sua versão de IOS digite o comando:
Osiris(config)# banner ?
Esse comando irá exibir a lista de opções aceitas pelo comando.
O CDP (Cisco Discovery Protocol) é um protocolo proprietário da Cisco, ou seja, apenas dispositivos Cisco o suportam. Ele é um protocolo de camada 2 (camada de Enlace de Dados) que não depende de qualquer outro protocolo.
Quando o CDP está habilitado, o dispositivo envia, a cada 60 segundos (por padrão), pacotes para o endereço multicast 01-00-0c-cc-cc-cc (este mesmo endereço também é usado pelo protocolo VTP, por exemplo) para que seus vizinhos consigam encontrá-lo na rede. Como este pacote é de camada 2, ou seja, não tem informações sobre rede, ele não é um protocolo roteável (por exemplo, as informações que ele envia não podem ir para outras redes). As informações fornecidas pelo protocolo podem ser utilizadas em aplicações que entendem SNMP (basta fazer com que ela acesse o MIB do CDP para que as informações passem a ser monitoradas pelo software.
As interfaces pelas quais o CDP envia informações devem, obrigatoriamente, suportar cabeçalhos SNAP (Subnetwork Access Protocol). Exemplos de interfaces suportadas são Ethernet, Frame Relay e ATM (Asynchronous Transfer Mode). Informações recebidas de outros dispositivos CDP podem ser visualizadas no modo “enable”:
Osiris# show cdp neighbors
Este comando irá identificar o tipo do dispositivo (roteador, switch, bridge) e todas as outras informações que tenham sido aprendidas através do CDP.
Como você já deve ter deduzido, a finalidade dele é obter e enviar informações sobre os dispositivos que estão diretamente conectados a ele (isto é, na mesma rede. O CDP não é um protocolo roteável) através da rede para facilitar a administração. Algumas informações que ele consegue monitorar são:
Como você viu, o CDP oferece muita informação sem qualquer tipo de autenticação. Por isso, é muito importante que você habilite este protocolo apenas em interfaces que façam parte da sua rede interna. Preste muita atenção se estas informações não estão sendo enviadas por uma interface conectada à Internet ou à uma DMZ!
Por padrão o CDP já vem habilitado em todos os dispositivos Cisco. Se você não quiser utilizá-lo:
Osiris(config)# no cdp run
Este comando irá parar completamente o serviço e nenhuma informação sobre o dispositivo em questão será enviado pela rede. Para ativá-lo novamente:
Osiris(config)# cdp run
Agora, vamos ver algumas configurações interessantes que podem ser feitas no CDP para que ele se adeque melhor à sua rede. Para utilizar a versão 2 do protocolo:
Osiris(config)# cdp advertise-v2
Para especificar o intervalo (em segundos) em que seu dispositivo deverá enviar os pacotes com informações:
Osiris(config)# cdp timer 120
Se a sua rede raramente muda, é interessante colocar um valor mais alto nesta opção para que você não fique ocupando a rede à toa. O padrão é 60 segundos.
Você também pode definir por quanto tempo as informações recebidas de vizinhos são válidas e devem ser mantidas em memória. Para isso o seguinte comando:
Osiris(config)# cdp holdtime 240
Isso fará com que as informações recebidas tenham uma validade de 240 segundos.
Para desabilitar o CDP em uma interface específica, você precisa entrar no modo de configuração desta interface e desabilitar o protocolo:
Osiris(config)# interface FastEthernet 0/0
Osiris(config-if)# no cdp enable
Para habilitar o protocolo, entre no modo de configuração da interface e:
Osiris(config-if)# cdp enable
Pronto! Com isso você já tem uma configuração melhor para o CDP :)
Por motivos óbvios, você precisa configurar endereços IP em todas as interfaces que estão sendo utilizadas pelo seu roteador.
Este processo é bem simples, não leva nem 5 minutos. Para isso, você deve saber exatamente quais interfaces existem em seu roteador e quais delas você deseja configurar. Para isso, utilize o comando:
Osiris# show interfaces
Além do nome, várias informações relacionadas às interfaces são exibidas. Guarde bem os nomes das interfaces que você deseja configurar e vá para o modo de configuração global:
Osiris# configure terminal
Osiris(config)#
Uma vez no modo de configuração global, você precisa entrar no contexto da interface que você quer configurar. Para isso, basta utilizar o comando “interface” seguido do nome dela:
Osiris(config)# interface FastEthernet 0/0
Osiris(config-if)#
Neste modo, como você já viu, você poderá configurar todas as opções desta interface apenas. Para configurar opções de outras placas, você deve entrar no contexto de configuração delas. Para configurar o endereço IP nesta interface faça o seguinte:
Osiris(config-if)# ip address 192.168.1.1 255.255.255.0
Este comando já define tanto o endereço IP que será utilizado nesta interface quanto a máscara de sub-rede. Não é obrigatório, mas é interessante que você configure o endereço de broadcast também:
Osiris(config-if)# ip broadcast-address 192.168.1.255
As interfaces de roteadores Cisco por padrão estão sempre desabilitadas. Depois que você fizer a configuração delas, você deve ativá-las se não, mesmo que tudo tenha sido configurado corretamente, você não será capaz de acessar a rede. Seguindo o padrão Cisco, basta você colocar um “no” na frente do comando “shutdown” no contexto de configuração da interface para que ela seja ativada:
Osiris(config-if)# no shutdown
Como você já deve ter deduzido, para desabilitar a interface você deve executar o comando “shutdown” no modo de configuração da interface específica. O status de todas as interfaces do dispositivo pode ser visualizado utilizando-se o comando “show interfaces” ou “show interfaces FastEthernet 0/0″ no modo enable. A seguinte linha:
FastEthernet0/0 is administratively down, line protocol is down
Indica uma interface desabilitada. Sempre que uma interface está parada por decisão do administrador do sistema, o status terá “administratively down”. Caso esta expressão não apareça, é muito provável que algum outro problema está impedindo o correto funcionamento (um problema no cabo, por exemplo). Uma interface ativa mostraria uma linha parecida com:
FastEthernet0/0 is up, line protocol is up
Se você configura muitos roteadores diferentes, pode acabar ficando meio difícil lembrar exatamente a qual rede uma determinada interface está conectada, ou qual o papel de uma determinada interface. Para isso, o IOS permite que você adicione descrições sobre cada interface presente em seu roteador.
Esta configuração também deve ser feita no contexto de configuração da interface em questão, utilizando o comando “description”. Por exemplo:
Osiris(config-if)# description Interface que liga o roteador a rede do provedor.
Você pode definir uma configuração de no máximo 240 caracteres. Pode utilizar espaços, porém não é bom utilizar acentuação. A descrição que você utiliza com o comando “description” pode ser vista quando você digita o comando “show interfaces” no modo enable:
Osiris# show interfaces
FastEthernet0/0 is administratively down, line protocol is down
Hardware is AmdFE, address is c800.342d.0000 (bia c800.342d.0000)
Description: Interface que liga o roteador a rede do provedor
Internet address is 192.168.1.1/24
…
Como já disse, isso é opcional mas pode ajudar muito você ou quem for administrar o roteador e ainda não o conheça.
Antes de você configurar qualquer senha no roteador, o IOS não permite qualquer tipo de conexão remota a ele: apenas o console permite que você se conecte a ele para que você consiga configurar o roteador. Então, para permitir que você utilize o Telnet para administrar o roteador daqui para frente, vou te mostrar aqui como configurar as senhas para esse serviço.
No IOS, você deve referir-se ao Telnet como linhas VTY. A quantidade de linhas VTY varia de modelo para modelo, não há uma quantidade fixa. Para descobrir quantas linhas o seu roteador disponibiliza para você, faça o seguinte. No modo de configuração global:
Osiris(config)# line vty ?
<0-4> First Line number
No dispositivo que estou usando, existem 5 linhas numeradas de 0 a 4. Para definir a senha:
Osiris(config)# line vty 0 4
Osiris(config-line)# login
Osiris(config-line)# password senha
Agora, quando você tentar se conectar ao seu roteador através do Telnet basta fornecer a senha que você especificou no comando “password”, não importa qual o número da linha à qual você está se conectando. Se você quiser permitir que logins sejam feitos através de Telnet mesmo que uma senha não tenha sido configurada (o que não é nada recomendado), basta negar o comando “login” no contexto de configuração da linha:
Osiris(config-line)# no login
E você poderá se logar no roteador sem precisar de uma senha.
Embora o Telnet seja o padrão para administração remota de roteadores e switches Cisco, ele não é nada seguro. Todo o tráfego trocado entre cliente e servidor é transmitido em texto claro, permitindo que alguém sniffe a conexão e consiga descobrir o seu usuário e senha. Para mitigar este problema, o mais recomendado atualmente é configurar o SSH no dispositivo e utilizá-lo ao invés de usar o Telnet. Já expliquei como funciona este processo em outro post. Clique aqui e aprenda a configurar o SSH em um roteador Cisco.
Se você se conectar ao roteador através da porta de console, o padrão é não ter senha para que você consiga configurar o switch assim que ele sai da caixa. Porém, é uma boa prática proteger esta conexão com uma senha.
No caso do console, a linha utilizada se chama console e geralmente existe apenas 1: a porta 0. Para configurá-la, você deve fazer o seguinte:
Osiris(config)# line console 0
Osiris(config-line)# password senha
Agora, sempre que você se conectar ao console você deverá digitar a senha informada ao comando “password” como descrito acima.
Além de senhas para as linhas, também é possível definir uma senha para proteger o modo enable, que dá mais poderes ao usuário.
Para definir esta senha, acesse o modo de configuração global e utilize o comando “enable secret”:
Osiris(config)# enable secret senha
Isso irá criar uma senha criptografada que será utilizada sempre que você tentar acessar o modo enable do roteador, não importa a forma pela qual você se conecte ao dispositivo. Você também pode criar uma senha não-criptografada utilizando o comando “enable password”:
Osiris(config)# enable password senha
Se você definir tanto a secret quanto a password, a senha secret sempre terá preferência e é ela a que sempre será utilizada. Embora você tenha a opção de utilizar uma senha não-criptografada, é recomendado que você utilize apenas a senha criptografada com o comando “enable secret”.
Por padrão, a única senha criptografada no IOS é a senha definida pelo comando “enable secret”. Todas as outras são exibidas em texto claro através do comando “show running-config”. Para impedir que isso aconteça, você deve ativar o serviço de criptografia de senhas. É muito importante que você ative este serviço, já que ele é praticamente a sua única proteção para as senhas armazenadas na memória do roteador.
Habilitar o serviço é muito simples. No modo de configuração global, execute o seguinte comando:
Osiris(config)# service password-encryption
E pronto, agora sempre que as suas senhas forem ser exibidas, apenas o hash da criptografia aparecerá melhorando um pouco mais a segurança do sistema.
Como medida de segurança, não apenas no IOS mas também em qualquer outro sistema que você acesse remotamente, é interessante que você defina timeouts para fazer com que sessões ociosas sejam terminadas automaticamente depois de um determinado tempo. Esses timeouts são configurados para cada linha, ou seja, o timeout do console pode ser diferente do timeout da VTY.
Como a configuração pode ser diferente para cada linha, você deve estar no contexto de configuração da linha para poder modificar o parâmetro. Uma vez no contexto correto, basta utilizar o comando “exec-timeout”:
Osiris(config)# line vty 0 4
Osiris(config-line)# exec-timeout <MINUTOS> <SEGUNDOS>
Por exemplo, para definir o timeout em 1:30s você deveria executar o comando:
Osiris(config-line)# exec-timeout 1 30
Para desabilitar o timeout, basta informar “0 0″ para minutos e segundos.
Todas as configurações que você acabou de fazer não são salvas automaticamente. Você precisa instruir o IOS a salvá-las para que você não perca tudo caso o roteador reinicie por algum motivo.
Todas as alterações que você fez até agora estão presentes na “running-config” do IOS. Esta configuração fica presente apenas na memória RAM e é perdida quando o dispositivo é reiniciado. Para salvar as alterações permanentemente, você deve copiar todos os parâmetros da “running-config” para a “startup-config” ou configuração de inicialização, traduzindo ao pé da letra.
Para fazer essa cópia, você deve utilizar o seguinte comando (no modo enable):
Osiris# copy running-config startup-config
Destination filename [startup-config]?
Ele irá te perguntar qual será o nome do arquivo que será criado com as configurações. O padrão, que geralmente é o aceito, é startup-config. Para aceitar o padrão basta pressionar a tecla enter. A seguinte mensagem irá confirmar que a operação foi efetuada com sucesso:
Router#copy running-config startup-config
Destination filename [startup-config]?
Building configuration…
[OK]
Agora sim, se você reiniciar o roteador todas as configurações que você fez serão restauradas e o dispositivo poderá começar a trabalhar sem qualquer intervenção por parte do administrador.
Como você viu, embora seja fácil, é também bastante trabalhoso fazer a configuração básica de um roteador Cisco. Todos os passos devem ser feitos com muita atenção para que você não precise sair caçando erros de configuração :)
Espero que o texto te ajude a entender melhor o funcionamento destes dispositivos que são extremamente interessantes porém ainda um pouco complexos.
Encontrou algum erro? Tem mais alguma sugestão? Deixe um comentário!
5 Comentários
Ajustar relógio e configurar Syslog no Cisco IOS | Pedro Pereira
19|Mar|2011 1[...] um servidor Syslog e um roteador com a configuração básica já feita (se não souber fazer isso, leia aqui como configurar um roteador Cisco) funcionais na sua rede. Quanto ao servidor NTP, você pode simplesmente configurar o servidor [...]
Marcos
28|May|2011 2excelente material, bem didatico.
muito obg
jessica nathany
28|Oct|2011 3Legal gostei da postagem. Mas tenho uma dúvida. Estou aqui no meu serviço tentando resetar a senha de um Cisco Express 500 e ele não tem botão de mode. Como eu posso reseta-lo?
Pedro Pereira
29|Oct|2011 4Jessica,
Não achei nada relativo a reset senha, apenas para resetar o switch para a configuração original: http://www.cisco.com/en/US/products/ps6545/products_tech_note09186a0080707fb0.shtml.
Cuidado ao usar isso e acabar desconfigurando o switch inteiro hheeh
[]‘s
Pedro Pereira.
rodrigo
05|Jan|2012 5oi instalei o roteador cisco modelo 120n wireless eu instalei ele no compurtador e pelo computador eu tenho acesso a internet e comprei um notebook core i7 no notebook aparece o sinal que criei no pc mas quando clica pra entrar na internet ele não se conecta a conexão ele acusa que a conexão da internet esta oculta como faço pra resolver este problema ??
obrigado desde ja pela ajuda
Deixe seu comentário!
Acompanhe!
Creative Commons
Esta obra escrita por Pedro Augusto de Oliveira Pereira está licensiada sob a Creative Commons Atribuição-Uso Não-Comercial-Vedada a Criação de Obras Derivadas 3.0 Brasil License.
Mais lidos
Busca
Últimas mensagens no Twitter
Posts recentes
A design creation of Design Disease
Pedro Pereira: Administrador de redes: Linux, Cisco, FreeBSD, OpenBSD. Consultoria e serviços em software livre utilizando Samba, Subversion, Postfix, OpenLDAP, Cacti, Nagios e vários outros!
Copyright © 2007 - Pedro Pereira – Consultoria Linux, Cisco, OpenBSD - is proudly powered by WordPress
InSense 1.0 Theme by Design Disease brought to you by HostGator Web Hosting.
Switch to our mobile site