| 1 | % Monitorizacin de Netflow con NFSen |
|---|
| 2 | % |
|---|
| 3 | % Gestin de Redes |
|---|
| 4 | |
|---|
| 5 | # Introduccin |
|---|
| 6 | |
|---|
| 7 | ## Metas |
|---|
| 8 | |
|---|
| 9 | * Aprender como instalar las herramientas Nfdump y Nfsen |
|---|
| 10 | |
|---|
| 11 | |
|---|
| 12 | ## Notas |
|---|
| 13 | |
|---|
| 14 | * Los comandos precedidos por "$" implican que debe ejecutar el comando como usuario genrico - no como root |
|---|
| 15 | * Los comandos precedidos por "#" implican que deber estar trabajando como usuario root. |
|---|
| 16 | * Los comandos con inicios de linea ms especficos como "rtrX>" o "mysql>" indican que debe ejecutar los comandos en un equipo remoto, o dentro de otro programa. |
|---|
| 17 | |
|---|
| 18 | |
|---|
| 19 | # Configure el colector |
|---|
| 20 | |
|---|
| 21 | Nota: si est trabajando en parejas entonces slo el PC que est recibiendo |
|---|
| 22 | paquetes netflow necesita instalar nfdump y nfsen. Sin embargo, usted puede instalar |
|---|
| 23 | en el otro pc tambin, slo para practicar. |
|---|
| 24 | |
|---|
| 25 | ## Instale nfdump y el software asociado |
|---|
| 26 | |
|---|
| 27 | Nfdump es parte de las herramientas del colector de flujo Netflow, que incluye: |
|---|
| 28 | |
|---|
| 29 | nfcapd, nfdump, nfreplay, nfexpire, nftest, nfgen |
|---|
| 30 | |
|---|
| 31 | Hay un paquete en Ubuntu, pero es demasiado viejo - por lo que vamos a instalar |
|---|
| 32 | desde el cdigo fuente. En primer lugar, compruebe que dispone de las herramientas y dependencias necesarias: |
|---|
| 33 | |
|---|
| 34 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 35 | $ sudo apt-get install build-essential |
|---|
| 36 | $ sudo apt-get install rrdtool mrtg librrds-perl librrdp-perl librrd-dev \ |
|---|
| 37 | libmailtools-perl php5 bison flex |
|---|
| 38 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 39 | |
|---|
| 40 | Ahora proceda a descargar y construir. Tenga en cuenta que slo el ltimo paso |
|---|
| 41 | (make install) tiene que hacerse como root. |
|---|
| 42 | |
|---|
| 43 | |
|---|
| 44 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 45 | $ cd |
|---|
| 46 | $ wget http://noc.ws.nsrc.org/downloads/nfdump-1.6.10p1.tar.gz |
|---|
| 47 | $ tar xvzf nfdump-1.6.10p1.tar.gz |
|---|
| 48 | $ cd nfdump-1.6.10p1 |
|---|
| 49 | $ ./configure --help # optional, shows the build settings available |
|---|
| 50 | $ ./configure --enable-nfprofile --enable-nftrack |
|---|
| 51 | $ make |
|---|
| 52 | $ sudo make install |
|---|
| 53 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 54 | |
|---|
| 55 | |
|---|
| 56 | ### Testing nfcapd and nfdump |
|---|
| 57 | |
|---|
| 58 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 59 | $ mkdir /tmp/nfcap-test |
|---|
| 60 | $ nfcapd -E -p 9001 -l /tmp/nfcap-test |
|---|
| 61 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 62 | |
|---|
| 63 | ... despus de un tiempo, una serie de flujos deben ser descargados en la pantalla. |
|---|
| 64 | |
|---|
| 65 | Detenga la herramienta con CTRL + C y luego revise el contenido en /tmp/nfcap-test |
|---|
| 66 | |
|---|
| 67 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 68 | $ ls -l /tmp/nfcap-test |
|---|
| 69 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 70 | |
|---|
| 71 | Debera ver uno o ms archivos llamados `nfcapd. <AÑO> <MES> <DÍA> <HR> <min>` |
|---|
| 72 | |
|---|
| 73 | Procesar el/los archivo(s) con nfdump: |
|---|
| 74 | |
|---|
| 75 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 76 | nfdump -r /tmp/nfcap-test/nfcapd.2013wwxxyyzz | less |
|---|
| 77 | nfdump -r /tmp/nfcap-test/nfcapd.2013wwxxyyzz -s srcip/bytes |
|---|
| 78 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 79 | |
|---|
| 80 | |
|---|
| 81 | Deben obtener alguna informacin. |
|---|
| 82 | |
|---|
| 83 | |
|---|
| 84 | ## Instalacin y configuracin de NFSen |
|---|
| 85 | |
|---|
| 86 | Descargar y compilar. El parche es para arreglar un problema reportado en |
|---|
| 87 | <http://sourceforge.net/p/nfsen/bugs/31/> |
|---|
| 88 | |
|---|
| 89 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 90 | $ cd |
|---|
| 91 | $ wget http://noc.ws.nsrc.org/downloads/nfsen-1.3.6p1.tar.gz |
|---|
| 92 | $ tar xvzf nfsen-1.3.6p1.tar.gz |
|---|
| 93 | $ cd nfsen-1.3.6p1 |
|---|
| 94 | $ wget http://noc.ws.nsrc.org/downloads/nfsen-socket6.patch |
|---|
| 95 | $ patch -p0 < nfsen-socket6.patch |
|---|
| 96 | $ cd etc |
|---|
| 97 | $ cp nfsen-dist.conf nfsen.conf |
|---|
| 98 | $ editor nfsen.conf |
|---|
| 99 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 100 | |
|---|
| 101 | Ajuste la variable $ BASEDIR |
|---|
| 102 | |
|---|
| 103 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 104 | $BASEDIR = "/var/nfsen"; |
|---|
| 105 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 106 | |
|---|
| 107 | Ajuste los usuarios como corresponde, para que Apache pueda acceder a los archivos: |
|---|
| 108 | |
|---|
| 109 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 110 | $WWWUSER = 'www-data'; |
|---|
| 111 | $WWWGROUP = 'www-data'; |
|---|
| 112 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 113 | |
|---|
| 114 | Ajuste el tamaño del bfer a algo pequeño, y observara datos rapidamente. |
|---|
| 115 | No se recomienda hacer esto en un sistema de produccion. |
|---|
| 116 | |
|---|
| 117 | |
|---|
| 118 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 119 | # Receive buffer size for nfcapd - see man page nfcapd(1) |
|---|
| 120 | $BUFFLEN = 2000; |
|---|
| 121 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 122 | |
|---|
| 123 | |
|---|
| 124 | Encuentre la definicin de fuentes (%sources), y cmbiela a: |
|---|
| 125 | |
|---|
| 126 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 127 | %sources=( |
|---|
| 128 | 'rtrX' => {'port'=>'9001','col'=>'#0000ff','type'=>'netflow'}, |
|---|
| 129 | ); |
|---|
| 130 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 131 | |
|---|
| 132 | (sustituir el router de su grupo para rtrX, y descomente |
|---|
| 133 | las fuentes existentes de muestra). Ahora, guarde y salga del archivo. |
|---|
| 134 | |
|---|
| 135 | |
|---|
| 136 | ## Cree el usuario netflow en el sistema |
|---|
| 137 | |
|---|
| 138 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 139 | $ sudo useradd -d /var/nfsen -G www-data -m -s /bin/false netflow |
|---|
| 140 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 141 | |
|---|
| 142 | ## Instale NFSen e iniciarlo |
|---|
| 143 | |
|---|
| 144 | Cambie al directorio origen |
|---|
| 145 | |
|---|
| 146 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 147 | $ cd |
|---|
| 148 | $ cd nfsen-1.3.6p1 |
|---|
| 149 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 150 | |
|---|
| 151 | Ahora, finalmente, instalamos: |
|---|
| 152 | |
|---|
| 153 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 154 | $ sudo perl install.pl etc/nfsen.conf |
|---|
| 155 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 156 | |
|---|
| 157 | Presione ENTER cuando se le pida la ruta de Perl. |
|---|
| 158 | |
|---|
| 159 | ## Instalar el script de inicio |
|---|
| 160 | |
|---|
| 161 | Con el fin de que nfsen se inicie y se detenga automticamente cuando se inicie el sistema, |
|---|
| 162 | se tiene que agregar un enlace al diretorio init.d apuntando al script de inicio nfsen: |
|---|
| 163 | |
|---|
| 164 | |
|---|
| 165 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 166 | # sudo ln -s /var/nfsen/bin/nfsen /etc/init.d/nfsen |
|---|
| 167 | # sudo update-rc.d nfsen defaults 20 |
|---|
| 168 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 169 | |
|---|
| 170 | ## Iniciar Nfsen |
|---|
| 171 | |
|---|
| 172 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 173 | $ sudo service nfsen start |
|---|
| 174 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 175 | |
|---|
| 176 | Compruebe que el proceso nfcapd se ha inciado: |
|---|
| 177 | |
|---|
| 178 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 179 | $ ps auxwww | grep nfcapd |
|---|
| 180 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 181 | |
|---|
| 182 | Ver los flujos a travs de la web: |
|---|
| 183 | |
|---|
| 184 | Puede encontrar la pgina nfsen aqu: |
|---|
| 185 | |
|---|
| 186 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 187 | http://pcX.ws.nsrc.org/nfsen/nfsen.php |
|---|
| 188 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 189 | |
|---|
| 190 | Si est trabajando en parejas, entonces ambos deben apuntar su navegador web |
|---|
| 191 | al PC que est recibiendo flujos. |
|---|
| 192 | |
|---|
| 193 | Es posible que aparezca un mensaje como: |
|---|
| 194 | |
|---|
| 195 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 196 | Frontend - Backend version missmatch! |
|---|
| 197 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 198 | |
|---|
| 199 | Esto desaparecer si vuelve a cargar la pgina, no es un problema. |
|---|
| 200 | |
|---|
| 201 | ÁYa est! Contine en el tercer laboratorio, ejercicio3-NFSen-PortTracker |
|---|
| 202 | |
|---|
| 203 | |
|---|
| 204 | * NOTAS: |
|---|
| 205 | |
|---|
| 206 | # # Adicin de fuentes |
|---|
| 207 | |
|---|
| 208 | Si tuvieras varios enrutadores en la red todos enviando los flujos al misma |
|---|
| 209 | colector, puede o bien configurarlos para que enven a diferentes puertos del |
|---|
| 210 | colector, o le puede decir a NFSen la direccin IP de origen de cada router. esto |
|---|
| 211 | permite a Nfsen mostrar datos diferentes de cada origen. |
|---|
| 212 | |
|---|
| 213 | NO HACERLO AHORA!!! Ya que slo tiene un nico router, pero si necesita, |
|---|
| 214 | lo hara de la siguiente manera: |
|---|
| 215 | |
|---|
| 216 | - Editar /var/nfsen/etc/nfsen.conf y agregar la(s) fuente(s), por ejemplo: |
|---|
| 217 | |
|---|
| 218 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 219 | %sources = ( |
|---|
| 220 | 'rtrX' => { 'port' => '9001', 'col' => '#0000ff', 'type' => 'netflow' }, |
|---|
| 221 | 'rtrY' => { 'port' => '9002', 'col' => '#00ff00', 'type' => 'netflow' }, |
|---|
| 222 | 'gw' => { 'port' => '9996', 'col' => '#ff0000', 'type' => 'netflow' }, |
|---|
| 223 | ); |
|---|
| 224 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 225 | |
|---|
| 226 | - Reconfigurar Nfsen. |
|---|
| 227 | |
|---|
| 228 | Usted tendr que ejecutar esto cada vez que modifique '/var/nfsen/etc/nfsen.conf': |
|---|
| 229 | |
|---|
| 230 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 231 | $ sudo /etc/init.d/nfsen reconfig |
|---|
| 232 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 233 | |
|---|
| 234 | Deberia ver: |
|---|
| 235 | |
|---|
| 236 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 237 | New sources to configure : gw rtrY |
|---|
| 238 | Continue? [y/n] y |
|---|
| 239 | |
|---|
| 240 | Add source 'gw' |
|---|
| 241 | Add source 'rtrY' |
|---|
| 242 | |
|---|
| 243 | Start/restart collector on port '9002' for (rtr2)[pid] |
|---|
| 244 | Start/restart collector on port '9996' for (gw)[pid] |
|---|
| 245 | |
|---|
| 246 | Restart nfsend:[pid] |
|---|
| 247 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 248 | |
|---|
| 249 | |
|---|
| 250 | |
|---|
| 251 | |
|---|
| 252 | |
|---|
| 253 | |
|---|
| 254 | |
|---|
| 255 | |
|---|
| 256 | |
|---|
| 257 | |
|---|
| 258 | |
|---|
| 259 | |
|---|
| 260 | |
|---|
| 261 | |
|---|
| 262 | |
|---|
| 263 | |
|---|
| 264 | |
|---|
| 265 | |
|---|
| 266 | |
|---|
| 267 | |
|---|
| 268 | |
|---|
| 269 | |
|---|
| 270 | |
|---|
| 271 | |
|---|
| 272 | |
|---|
| 273 | |
|---|
| 274 | |
|---|
| 275 | |
|---|
| 276 | |
|---|
| 277 | |
|---|
| 278 | |
|---|
| 279 | |
|---|
| 280 | |
|---|
| 281 | |
|---|
| 282 | |
|---|
| 283 | |
|---|
| 284 | |
|---|
| 285 | |
|---|
| 286 | |
|---|
| 287 | |
|---|
| 288 | |
|---|
| 289 | |
|---|
| 290 | |
|---|
| 291 | |
|---|
| 292 | |
|---|
| 293 | |
|---|
| 294 | |
|---|
| 295 | |
|---|
| 296 | |
|---|
| 297 | |
|---|
| 298 | |
|---|
| 299 | |
|---|
| 300 | |
|---|
| 301 | |
|---|
| 302 | |
|---|
| 303 | |
|---|
| 304 | |
|---|
| 305 | |
|---|
| 306 | |
|---|
| 307 | |
|---|
| 308 | |
|---|
| 309 | |
|---|
| 310 | |
|---|
| 311 | |
|---|
| 312 | |
|---|
| 313 | |
|---|
| 314 | |
|---|
| 315 | |
|---|
| 316 | |
|---|
| 317 | |
|---|
| 318 | |
|---|
| 319 | |
|---|
| 320 | |
|---|
| 321 | |
|---|
| 322 | |
|---|
| 323 | |
|---|
| 324 | |
|---|
| 325 | |
|---|
| 326 | |
|---|
| 327 | |
|---|
| 328 | |
|---|
| 329 | |
|---|
| 330 | |
|---|
| 331 | |
|---|
| 332 | |
|---|
| 333 | |
|---|
| 334 | |
|---|
| 335 | |
|---|
| 336 | |
|---|
| 337 | |
|---|
| 338 | |
|---|
| 339 | |
|---|