06/02/2012

Configurazione del firewall embedded di un Cisco 827v4

Affinchè si possa realizzare la configurazione che sto per descrivere, è necessario che la IOS del nostro Cisco 827v4 supporti le funzionalità tipiche di un firewall (anche se MOLTO ridotte).

827.jpg

Nello specifico, il nome della IOS deve contenere la sigla o oppure o3, dove o sta appunto per firewall ed o3 sta per firewall/IDS. Nel mio caso, posso dirvi che ho a disposizione una IOS che supporta solo il firewall, quindi tale configurazione si limita a ciò che ho potuto effettivamente testare.

Per prima cosa accediamo alla modalità enable del router:

NightRouter>ena
Password:
NightRouter#conf t

entriamo nel menù di configurazione:

NightRouter#conf t

e creiamo le policy del nostro firewall:

NightRouter(config)#ip inspect name fw http
NightRouter(config)#ip inspect name fw ftp
NightRouter(config)#ip inspect name fw icmp
NightRouter(config)#ip inspect name fw smtp
NightRouter(config)#ip inspect name fw fragment
NightRouter(config)#ip inspect name fw rcmd

in questo modo, il nostro router terrà d'occhio i pacchetti relativi ai protocolli specificati. Esistono altri protocolli che possono essere monitorati, basta lanciare il comando:

NightRouter(config)#ip inspect name <nomepolicy> ?

per averne una lista completa.

In particolare, l'output di tale comando sarà il seguente:

 cuseeme      CUSeeMe Protocol
  fragment     IP fragment inspection
  ftp          File Transfer Protocol
  h323         H.323 Protocol (e.g, MS NetMeeting, Intel Video Phone)
  http         HTTP Protocol
  icmp         ICMP Protocol
  netshow      Microsoft NetShow Protocol
  rcmd         R commands (r-exec, r-login, r-sh)
  realaudio    Real Audio Protocol
  rpc          Remote Prodedure Call Protocol
  rtsp         Real Time Streaming Protocol
  sip          SIP Protocol
  skinny       Skinny Client Control Protocol
  smtp         Simple Mail Transfer Protocol
  sqlnet       SQL Net Protocol
  streamworks  StreamWorks Protocol
  tcp          Transmission Control Protocol
  tftp         TFTP Protocol
  udp          User Datagram Protocol
  vdolive      VDOLive Protocol

Successivamente, si dovrà associare la policy di firewalling all'interfaccia dia0, ovvero quella direttamente esposta su Internet.

Il comando da utilizzare è il seguente:

NightRouter(config)#int dia0
NightRouter(config-if)#ip inspect fw in

Infine, salviamo la configurazione con il classico copy run start:

NightRouter(config)#exit
NightRouter#copy run start

ed abbiamo finito.

A presto.

NB: dai test che ho effettuato sembrerebbe che il router non riesca a gestire correttamente una grande mole di traffico dopo aver abilitato il firewall. Proprio per questo motivo, vi consiglio di non ispezionare il payload dei pacchetti ma soltanto l'header degli stessi, evitando ad esempio delle policy del tipo:

NightRouter(config)#ip inspect name fw tcp

oppure

NightRouter(config)#ip inspect name fw udp

03/11/2011

Cisco 827 is up and running

Finalmente, dopo tanto tribolare, il mio Cisco 827 ha iniziato a fare il suo sporco lavoro. Per rendere il tutto un po' più stabile e robusto, ho aggiunto un banco di RAM da 32 MB (in modo da non soffocarlo con le NAT translations) ed ho aggiornato la IOS, passando dalla c827v-y6-mz.121-1.XB (una EARLY DEPLOYMENT che non conosce nemmeno il significato di PPPoE) alla c820-k9osy6-mz.123-5.

Ecco lo sh ver:

NightRouter#sh ver
Cisco Internetwork Operating System Software
IOS (tm) C820 Software (C820-K9OSY6-M), Version 12.3(5), RELEASE SOFTWARE (fc1)
Copyright (c) 1986-2003 by cisco Systems, Inc.
Compiled Tue 28-Oct-03 10:31 by kellythw
Image text-base: 0x80013148, data-base: 0x80A9890C

ROM: System Bootstrap, Version 12.1(1r)XB1, RELEASE SOFTWARE (fc1)

NightRouter uptime is 20 minutes
System returned to ROM by power-on
System restarted at 18:03:31 UTC Thu Nov 3 2011
System image file is "flash:c820-k9osy6-mz.123-5.bin"


This product contains cryptographic features and is subject to United
States and local country laws governing import, export, transfer and
use. Delivery of Cisco cryptographic products does not imply
third-party authority to import, export, distribute or use encryption.
Importers, exporters, distributors and users are responsible for
compliance with U.S. and local country laws. By using this product you
agree to comply with applicable laws and regulations. If you are unable
to comply with U.S. and local laws, return this product immediately.

A summary of U.S. laws governing Cisco cryptographic products may be found at:
http://www.cisco.com/wwl/export/crypto/tool/stqrg.html

If you require further assistance please contact us by sending email to
export@cisco.com.

CISCO C827 (MPC855T) processor (revision 0x501) with 31744K/1024K bytes of memory.
Processor board ID JAD04330G9Y (2953292797), with hardware revision 0000
CPU rev number 5
Bridging software.
1 Ethernet/IEEE 802.3 interface(s)
1 ATM network interface(s)
128K bytes of non-volatile configuration memory.
8192K bytes of processor board System flash (Read/Write)
2048K bytes of processor board Web flash (Read/Write)

Configuration register is 0x2102

Adesso il mio SOHO77 può andare meritatamente in pensione.

A presto.

18:29 Scritto da: nazarenolatella in Networking | Link permanente | Commenti (0) | Segnala | Tag: cisco, 800 series, 827, ram upgrade, ios, sh ver | OKNOtizie |  Facebook

05/10/2011

Upgrade di un router Cisco da SOHO 77 a 827

Premessa

Per effettuare l'upgrade del nostro router da SOHO 77 a 827 è necessario che esso soddisfi i requisiti hw richiesti dalla IOS che abbiamo intenzione di installare.

Se ad esempio la IOS implementa diverse feature, come un firewall, la possibilità di gestire il traffico VOIP o di realizzare VPN PPTP, i requisiti in termini di RAM potrebbero superare di gran lunga quelli in dotazione al nostro router. Un ostacolo ancora maggiore potrebbe essere rappresentato dalle dimensioni della memoria flash (solitamente 8 MB), dunque è impossibile installarci sopra una IOS che abbia dimensioni superiori agli 8 MB.

Esistono, ovviamente, dei moduli di espansione per la flash (piuttosto costosi), mentre per la RAM potete utilizzare un banco di SDRAM a 100pin PC100 dalla capacità di 32 MB (per intenderci, quella installata sulle stampanti). Per la precisione anche un banco di RAM a 64 MB va bene, sappiate però che il router riuscirà a leggere (e quindi ad utilizzare) solo 48 MB dei 64 disponibili.

Upgrade della piattaforma

Ma vediamo come far digerire al nostro SOHO 77 una IOS sviluppata per l'827.

Spegniamo il router e riaccendiamolo. Una volta avviata la fase di boot teniamo premuto CTRL+PAUSA, in modo di accedere al rom monitor.

cisco827.jpg

 

Successivamente, il prompt ci apparirà nel modo seguente:

rommon 1 >

Per avere una lista dei comandi disponibili è sufficiente digitare ?:

rommon 1 > ?
alias               set and display aliases command
boot                boot up an external process
break               set/show/clear the breakpoint
confreg             configuration register utility
cont                continue executing a downloaded image
context             display the context of a loaded image
cookie              display contents of cookie PROM in hex
dev                 list the device table
dir                 list files in file system
dis                 display instruction stream
dnld                serial download a program module
frame               print out a selected stack frame
help                monitor builtin command help
history             monitor command history
meminfo             main memory information
repeat              repeat a monitor command
reset               system reset
set                 display the monitor variables
stack               produce a stack trace
sync                write monitor environment to NVRAM
sysret              print out info from last system return
tftpdnld            tftp image download
unalias             unset an alias
unset               unset a monitor variable
xmodem              x/ymodem image download
rommon 2 >

Ora, per fare l'upgrade del router occorre visualizzare il cookie che identifica la piattaforma. Per fare ciò basta digitare il comando cookie:

rommon 2 > cookie

cookie:
01 01 00 01 96 71 b4 61 5b 00 01 00 01 ff 00 00
00 00 00 00 00 00 00 00 4a 41 44 04 33 30 47 39
59 05 01 00 00 00 00 00 00 ff ff ff 60 04 49 11
ec 03 ff ff ff ff ff ff ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff

A noi interessa modificare ESCLUSIVAMENTE il nono byte, portandolo da 5b a 3e. Tutti gli altri byte possono rimanere inalterati.

Per modificare il cookie occorre entrare in modalità privilegiata. E' dunque necessario digitare il comando priv con relativa password, dove la password può essere calcolata mediante questo tool, dandogli in pasto solo la prima riga del cookie sopra riportato.

Una volta ottenuta la password utilizziamola per accedere alla modalità privilegiata. Riceveremo in output il seguente messaggio:

You now have access to the full set of monitor commands.
Warning: some commands will allow you to destroy your
configuration and/or system images and could render
the machine unbootable.
rommon 4 >

Digitiamo nuovamente il comando cookie per procedere con la modifica di quest'ultimo:

rommon 4 > cookie

View/alter bytes of serial cookie by field --
Input hex byte(s) or: CR -> skip field; ? -> list values
byte  0x00       - version: 01
                          >

Per lasciare inalterati i valori di default ci basterà premere INVIO. Per la precisione dobbiamo modificare solo il nono byte, il cui valore dovrà essere 3e.

Una volta terminata la modifica del cookie, possiamo installare la IOS dell'827 mediante il comando tftpdnld. Prima di utilizzarlo, però, si dovranno settare alcune variabili di sistema che tale comando utilizzerà, ovvero:

IP_ADDRESS

IP_SUBNET_MASK

DEFAULT_GATEWAY

TFTP_SERVER

TFTP_FILE

Ad esempio:

IP_ADDRESS=192.168.1.2

IP_SUBNET_MASK=255.255.255.0

DEFAULT_GATEWAY=192.168.1.1

TFTP_SERVER=192.168.1.1

TFTP_FILE=c827v-y6-mz.121-1.XB.bin

Controlliamo che le variabili siano state impostate correttamente digitando semplicemente set.

Adesso procediamo con il download dell'IOS mediante tftpdnld (come applicativo che funga da server TFTP vi consiglio di utilizzare tftp32):

rommon 10 > tftpdnld

          IP_ADDRESS: 192.168.1.2
      IP_SUBNET_MASK: 255.255.255.0
     DEFAULT_GATEWAY: 192.168.1.1
         TFTP_SERVER: 192.168.1.1
           TFTP_FILE: c827v-y6-mz.121-1.XB.bin

Invoke this command for disaster recovery only.
WARNING: all existing data in all partitions on flash will be lost!
Do you wish to continue? y/n:  [n]:

Digitiamo y e proseguiamo con l'installazione:

Receiving c827v-y6-mz.121-1.XB.bin from 192.168.1.1 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
File reception completed.
Copying file c827v-y6-mz.121-1.XB.bin to flash.

Erasing flash ................................................................
Programming flash ..............................

Digitiamo reset per riavviare il router e finalmente il nostro 827 è (o dovrebbe) essere pronto per l'uso.

A presto.

21:56 Scritto da: nazarenolatella in Networking | Link permanente | Commenti (0) | Segnala | Tag: soho 77, 827, cisco, cookie, upgrade, ios, rommon, priv | OKNOtizie |  Facebook