Agenda: ejercicio2-instalar-nfdump-nfsen.txt

File ejercicio2-instalar-nfdump-nfsen.txt, 9.1 KB (added by admin, 6 years ago)
Line 
1% Monitorizaci—n de Netflow con NFSen
2%
3% Gesti—n de Redes
4
5# Introducci—n
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 genŽrico - no como root
15* Los comandos precedidos por "#" implican que deber‡ estar trabajando como usuario root.
16* Los comandos con inicios de li­nea m‡s espec’ficos 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
21Nota: si est‡ trabajando en parejas entonces s—lo el PC que est‡ recibiendo
22paquetes netflow necesita instalar nfdump y nfsen. Sin embargo, usted puede instalar
23en el otro pc tambiŽn, s—lo para practicar.
24
25## Instale nfdump y el software asociado
26
27Nfdump es parte de las herramientas del colector de flujo Netflow, que incluye:
28
29nfcapd, nfdump, nfreplay, nfexpire, nftest, nfgen
30
31Hay un paquete en Ubuntu, pero es demasiado viejo - por lo que vamos a instalar
32desde el c—digo 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
40Ahora proceda a descargar y construir. Tenga en cuenta que s—lo 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... despuŽs de un tiempo, una serie de flujos deben ser descargados en la pantalla.
64
65Detenga la herramienta con CTRL + C y luego revise el contenido en /tmp/nfcap-test
66
67~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
68$ ls -l /tmp/nfcap-test
69~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
70
71Deber’a ver uno o m‡s archivos llamados `nfcapd. <AÑO> <MES> <DÍA> <HR> <min>`
72
73Procesar el/los archivo(s) con nfdump:
74
75~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
76nfdump -r /tmp/nfcap-test/nfcapd.2013wwxxyyzz | less
77nfdump -r /tmp/nfcap-test/nfcapd.2013wwxxyyzz -s srcip/bytes
78~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
79
80
81Deben obtener alguna informaci—n.
82
83
84## Instalaci—n y configuraci—n de NFSen
85
86Descargar 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
101Ajuste la variable $ BASEDIR
102
103~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
104$BASEDIR = "/var/nfsen";
105~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
106
107Ajuste los usuarios como corresponde, para que Apache pueda acceder a los archivos:
108
109~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
110$WWWUSER = 'www-data';
111$WWWGROUP = 'www-data';
112~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
113
114Ajuste el tamaño del bŸfer a algo pequeño, y observara datos rapidamente.
115No 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
124Encuentre la definici—n de fuentes (%sources), y c‡mbiela 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
133las 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
144Cambie al directorio origen
145
146~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
147$ cd
148$ cd nfsen-1.3.6p1
149~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
150
151Ahora, finalmente, instalamos:
152
153~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
154$ sudo perl install.pl etc/nfsen.conf
155~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
156
157Presione ENTER cuando se le pida la ruta de Perl.
158
159## Instalar el script de inicio
160
161Con el fin de que nfsen se inicie y se detenga autom‡ticamente cuando se inicie el sistema,
162se 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
176Compruebe que el proceso nfcapd se ha inciado:
177
178~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
179$ ps auxwww | grep nfcapd
180~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
181
182Ver los flujos a travŽs de la web:
183
184Puede encontrar la p‡gina nfsen aqu’:
185
186~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
187http://pcX.ws.nsrc.org/nfsen/nfsen.php
188~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
189
190Si est‡ trabajando en parejas, entonces ambos deben apuntar su navegador web
191al PC que est‡ recibiendo flujos.
192
193Es posible que aparezca un mensaje como:
194
195~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
196Frontend - Backend version missmatch!
197~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
198
199Esto desaparecer‡ si vuelve a cargar la p‡gina, no es un problema.
200
201ÁYa est‡! ContinŸe en el tercer laboratorio, ejercicio3-NFSen-PortTracker
202
203
204* NOTAS:
205
206# # Adici—n de fuentes
207
208Si tuvieras varios enrutadores en la red todos enviando los flujos al misma
209colector, puede o bien configurarlos para que env’en a diferentes puertos del
210colector, o le puede decir a NFSen la direcci—n IP de origen de cada router. esto
211permite a Nfsen mostrar datos diferentes de cada origen.
212
213NO HACERLO AHORA!!!  Ya que s—lo tiene un Ÿnico router, pero si necesita,
214lo har’a 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
228Usted tendr‡ que ejecutar esto cada vez que modifique '/var/nfsen/etc/nfsen.conf':
229
230~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
231$ sudo /etc/init.d/nfsen reconfig
232~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
233
234Deberia ver:
235
236~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
237New sources to configure : gw rtrY
238Continue? [y/n] y
239
240Add source 'gw'
241Add source 'rtrY'
242
243Start/restart collector on port '9002' for (rtr2)[pid]
244Start/restart collector on port '9996' for (gw)[pid]
245
246Restart 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