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 | |
---|