Agenda: rancid-ejercicio.txt

File rancid-ejercicio.txt, 11.7 KB (added by carmas, 8 years ago)
Line 
1Administracion y Monitoreo de la Red
2
3RANCID
4============
5
6Notas:
7------
8* Comandos precedidos de "$" implican que Ud. debe ejecutar el comando
9  como un usuario general, no root
10* Comandos precedidos de "#" implican que Ud. debe ejecutar el comando
11  como root
12* Comandos con prompt de comandos mas especificos (ej. "RTR-GW>" o "mysql>")
13  implica que Ud debe ejecutar el comando en un equipo remoto o dentro de
14  otro programa
15
16
17Ejercicios
18----------
19
201. Conectarse a su PC via ssh
21
222. Asuma rol de  root, e instale postfix
23
24        $ sudo bash
25        # apt-get install postfix
26          Puede ser que le pregunte: select "Internet Site"
27        Al proximo prompt, entre su nombre host (ej. pcxx.ws.nsrc.org)
28
29        Asegurese que Postfix este' corriendo:
30        # service postfix status
31
32    Asegurese que el cliente de email 'mutt' este' instalado asi como "telnet"
33    y "subversion":
34
35        # apt-get install mutt telnet subversion
36
37
383. Adicione un alias para el usuario "rancid" en /etc/aliases file
39
40        # vi /etc/aliases
41       
42        rancid-all:     sysadm
43        rancid-admin-all:   sysadm
44
45    Salve el fichero, y corra:
46
47        # newaliases
48
494. Instale "Rancid":
50
51        # apt-get install rancid
52
53        Este' le dara' un aviso, y preguntara' "Really continue?"
54        Seleccione "Yes"       
55
565. Edit /etc/rancid/rancid.conf
57
58        # vi /etc/rancid/rancid.conf
59
60    Encuentre esta' linea en rancid.conf:
61
62        #LIST_OF_GROUPS="sl joebobisp"
63
64    Y adicione la sigiuente linea inmediatamente debajo:
65
66        LIST_OF_GROUPS="all"
67
68    (sin '#' al principio de la linea)
69
70    Tambien queremos usar "subversion" y no "CVS":
71
72    Encuentre la linea con el parametro RCSSYS, y cambiela a:
73    RCSSYS=svn; export RCSSYS
74   
75    Y tambien encuentre la linea con el parametro CVSROOT, y cambie a:
76    CVSROOT=$BASEDIR/SVN; export CSVROOT
77
78
796. Conviertase en el usuario 'rancid'
80
81    Desde el prompt de 'root', cambie la identidad y conviertase en el
82    usuario 'rancid' user:
83       
84        # su -s /bin/bash rancid
85       
86    asegurese que usted es ahora el usuario 'rancid'
87
88        $ id
89
90    Debe ver algo parecido a (los numeros pueden variar):
91
92        uid=104(rancid) gid=109(rancid) groups=109(rancid)
93
94
95
96    ***** NO CONTINUE SI UD. NO ES EL USUARIO 'rancid' !!!! ******
97    *****                        SOLICITE AYUDA             ******
98
99
100
101
1027. Crear /var/lib/rancid/.cloginrc
103
104        $ vi /var/lib/rancid/.cloginrc
105
106        adicione
107                 add user 10.10.* cisco
108                 add password 10.10.* cisco cisco
109
110    (El primer 'cisco' es el nombre de usuario, el segundo y tercer
111     'cisco' son la clave y la clave de configuracion usada para conectarse
112     a su enrutador. El '*' significa que va a usar esa informacion para
113     conectarse a todos los dispositivos cuya direccion empieze con el
114     prefijo '10.10')
115
116    Proteja este fichero de forma tal que no pueda ser leido por otros usuarios:
117
118        $ chmod 600 /var/lib/rancid/.cloginrc
119   
120    En la vida real, recomendamos crear un usuario 'rancid' con derechos minimos
121    limitados como beunas practicas de seguridad.
122
1238. Probar conectarse al enrutador de su grupo
124   
125    Conectese al enrutador de su grupo  con clogin. Puede que tenga que teclear "Yes"
126        para el primer aviso, pero no debe necesitar teclear las claves, debe ser automatico.
127       
128       $ /var/lib/rancid/bin/clogin 10.10.X.254
129       (re-emplaze x con el numero de su grupo.)
130   
131        Debe observar algo parecido a:
132       
133       spawn ssh -c 3des -x -l cisco 10.10.2.254
134       The authenticity of host '10.10.2.254 (10.10.2.254)' can't be   established.
135       RSA key fingerprint is 73:f3:f0:e8:78:ab:49:1c:d9:5d:49:01:a4:e1:2a:83.
136       Are you sure you want to continue connecting (yes/no)?
137       Host 10.10.2.254 added to the list of known hosts.
138       yes
139       Warning: Permanently added '10.10.2.254' (RSA) to the list of known hosts.
140       Password:
141
142       rtr2>enable
143       Password:
144       rtr2#
145       
146    Desconectese   
147       rtr2#exit
148
149   
150       
1519. Inicialize el repositorio SVN para 'rancid':
152
153        $ /usr/lib/rancid/bin/rancid-cvs
154
155    Debe observar algo parecido a:
156
157        Committed revision 1.
158        Checked out revision 1.
159        At revision 1.
160        A         configs
161        Adding         configs
162
163        Committed revision 2.
164        A         router.db
165        Adding         router.db
166        Transmitting file data .
167        Committed revision 3.
168
169     ***** Si encuentra problemas ******
170
171         Si esto no funciona, puede ser que el paquete 'subversion' no este' instalado,
172         o alguna parte de la configuracion no fue adecuadamente preparada.
173         Ud. debe verificar que 'subversion' este' instalado, y si es asi, ejecute los
174         siguientes comandos:
175
176            $ exit
177            # apt-get install subversion
178            # su - /bin/bash rancid
179            $ cd /var/lib/rancid
180            $ rm -rf all
181            $ rm -rf SVN
182
183      Ahora ejecute otra vez:
184         
185            $ /usr/lib/rancid/bin/rancid-cvs
186
187      ********************************
188
18910. Crear el fichero de configuracion router.db
190
191        $ vi /var/lib/rancid/all/router.db
192
193    Adicione esta linea:
194
195        10.10.xxx.254:cisco:up
196
197    (recuerde re-emplazar xxx con su numero de grupo)
198
19911. Ejecutemos 'rancid'!
200
201        $ /usr/lib/rancid/bin/rancid-run
202
203    (Se demora aproximadamente 30 segundos)
204        Vuelva a correrlo una segunda vez, pues la primera vez
205        no existe alguna configuracion guardada. De esta forma
206        se asegura 100% todo funciona:
207   
208        $ /usr/lib/rancid/bin/rancid-run
209
21012. Verfique los logs:
211
212        $ cd /var/lib/rancid/logs
213        $ ls -l
214
215    ... Vea el contenido de los ficheros de logs:
216
217        $ cat all.*
218           
219        Debe ver algo como esto:
220                   
221                   starting: Tue Aug 30 16:34:42 UTC 2011
222              At revision 4.
223           Trying to get all of the configs.
224           All routers sucessfully completed.
225           Sending        .
226           Sending        configs/10.10.1.254
227           Sending        router.db
228           Transmitting file data ..
229           Committed revision 5.
230           ending: Tue Aug 30 16:34:51 UTC 2011
231
232  13. Vea las configuraciones:
233
234        $ cd /var/lib/rancid/all/configs
235        $ less 10.10.x.254
236
237    Si todo salio' bien, puede ver la configuracion de su enrutador
238
23914. Cambiemos la descripcion de una interface en el router
240
241        $ /usr/lib/rancid/bin/clogin 10.10.x.254
242
243    Cuando caiga en el prompt "rtrX#" cambiemos la descripcion con los siguientes comandos:
244
245        rtrX# conf term
246        rtrX(config)# interface LoopbackXX (replace XX with your PC no)
247               (por ejemplo:
248                      rtr5(config)# interface Loopback17 (si su PC es la numero 17)
249
250    Debe caer en el prompt de configuracion de interfaces:
251       
252        rtr2(config-if)#
253 
254     Ejecute:
255
256        rtr2(config-if)# description "Nombre: InterfazXX"
257        rtr2(config-if)# end
258
259    Usted debe caer en este prompt:
260       
261        rtr2#
262
263    Salve la configuracion permanentemente:
264
265        rtr2# write memory
266
267    Debe ver:
268
269        Building configuration...
270        [OK]
271
272    Desconectese:
273       
274        rtr2# exit
275
27615. Ejecutemos 'rancid' otra vez:
277
278        $ /usr/lib/rancid/bin/rancid-run
279
280    Vea la configuracion y los logs. Hay alguna nota sobre el cambio?
281       
282        $ cat /var/lib/rancid/logs/*
283               
284
28516. Vea las diferencias entre configuraciones
286
287        $ cd /var/lib/rancid/all/configs
288        $ ls -l
289
290    Aqui deben ver todas las configuraciones
291
292        $ svn log 10.10.x.254
293
294    (xxx correspondiente a su enrutador, ej: .1 or .2 or 3.)
295
296    Fijese en el numero de las revisiones. Ahora veamos las diferencias entre versiones:
297
298        $ svn diff -r 5:6 10.10.x.254 | less
299
300    ... Puede encontrar los cambios efectuados?
301
30217. Verificar las notificaciones via correo
303
304    Regresemos a ser el usuario "sysadm", y ejecute "mutt" para
305    ver los correos que 'rancid' a enviado:
306
307        $ exit
308        # exit
309        $ id
310        ... verifique que usted es el usuario 'sysadm'
311        ... si no, desconectese y reconectese como 'sysadm'
312                $ mutt
313
314    (Cuando "mutt" le pregunta si crea el directorio Mail, diga "Yes")
315       
316             Create Mail directory?  Yes
317
318    Si todo resulto' como planeado, debe ver los mensajes enviados por 'rancid'
319
320    (use 'q' para retornar al indice de mensajes, y 'q' para salir de "mutt")
321
32218. Ponga a rancid a correr cada 30 minutos por 'cron' (automatizar chequeo)
323       
324        $ sudo bash
325        # crontab -e -u rancid
326
327    (Especifique su editor favorito)
328       
329    Adicione esta linea:
330
331        */30  *  *  *  *  /usr/lib/rancid/bin/rancid-run
332
333    ... salve y salga
334
33519. Ahora adicione todos los otros enrutadores
336    Note the IP addresses for the routers
337
338        10.10.x.254  donde x va de 1 a 6
339
340    Actualize router.db
341
342        # su -s /bin/bash rancid
343        $ vi /var/lib/rancid/all/router.db
344
345    Adicione:
346
347        10.10.1.254:cisco:up
348        10.10.2.254:cisco:up
349        10.10.3.254:cisco:up
350        10.10.4.254:cisco:up
351        10.10.5.254:cisco:up
352        10.10.6.254:cisco:up
353       
354
355    (Note que "cisco" significa equipos Cisco  -- le dice a Rancid
356     que espera conversar con un dispositivo Cisco. 
357         Tambien puede conversar con Juniper, HP, ...)
358
35920. Corra rancid otra vez:
360
361        $ /usr/lib/rancid/bin/rancid-run
362
363    (Debe demorar un minuto o mas, sea paciente)
364
36521. Vea los logs:
366
367        $ cd /var/lib/rancid/logs
368        $ ls -l
369
370    ... Mire el ultimo fichero creado
371
372        $ less all.YYYYMMDD.HHMMSS
373
37422. Vea las configuraciones
375
376        $ cd /var/lib/rancid/all/configs
377        $ more 10.10.*
378
379    si todo salio' bien, debe ver todas las configuraciones
380
38123.  Ejecute Rancid otra vez en caso de que alguien haya cambiado configuraciones
382     otra vez.
383
384        $ /usr/lib/rancid/bin/rancid-run
385     (paciencia, 1 minuto)
386
387
38823. Familiarizarse con clogin:
389
390        $  /usr/lib/rancid/bin/clogin -c "show clock" 10.10.x.254
391
392    Que noto' ?
393
39424. Adicione el repositorio SVN de RANCID a SVNWeb
395
396    Si todavia esta' conectado como 'rancid', regrese a 'root'
397
398        $ exit
399        #
400
401    Instale SVNWeb:
402
403        # apt-get install websvn
404                * Responda "Yes" a la pregunta "want to configure it now"
405                * Presione "Ok" a la proxima pregunta sobre soporte de web servers.
406                * Adicione (dos siguientes preguntas) la localizacion del
407              repositorio de subversion:
408                   /var/lib/rancid/SVN
409                  (asegurese que sea en mayusculas "SVN").
410                * Presione "Ok" para especificar config de los permisos
411
41225. Arreglar los permisos. (El servidor web debe ser capaz de leer el
413                             archivo de subversion)
414                # chgrp -R www-data /var/lib/rancid/SVN
415        # chmod g+w -R /var/lib/rancid/SVN
416
417 
41826. Vea los ficheros de configuracion via web!
419        http://pcXXX.ws.nsrc.org/websvn
420
421    Revise los ficheros en el directorio 'all/configs'.
422    Aqui estan todas las configuraciones.
423
424
425
42627. Vea revisiones
427   
428    Puede ver revisiones, pero esta parte no funciona en el paquete de Ubuntu 10.04
429        Esto puede arreglarse con un patch:
430       
431    Simple:
432       
433        # apt-get install wget patch
434        # cd /usr/share/websvn/include
435        # wget http://noc.ws.nsrc.org/downloads/patch-svn
436        # patch < patch-svn
437
438    Ahora puede ver las diferencias entre revisiones con WebSVN.
439   
440    Vaya a http://pcXXX.ws.nsrc.org/websvn otra vez, seleccione el fichero
441    de su enrutador,  (10.10.x.254) y seleccione "Compare with Previous"
442    Ahora puede ver los ultimos cambios registrados.
443       
444
445+----
446Rev. 30 Aug 2011
447