Capitulos de este wiki
  1. 1 Cómo determinar qué asegurar y cómo asegurarlo
  2. 2 Instalación segura de Linux
  3. 3 Conceptos generales, servidores versus estaciones de trabajo, etc
  4. 4 Ficheros del sistema
  5. 5 Seguridad de Ficheros / Sistema de ficheros
  6. 6 PAM
  7. 7 Seguridad Física / de Arranque
  8. 8 Seguridad de contraseñas
  9. 9 Almacenamiento de Contraseñas
  10. 10 Seguridad basica de servicios de red
  11. 11 Ficheros basicos de configuración de red
  12. 12 TCP-IP y seguridad de redes
  13. 13 Seguridad PPP
  14. 14 Seguridad IP (IPSec)
  15. 15 Cifrado de servicios / datos
  16. 16 Rutado
  17. 17 Software de Proxy
  18. 18 Cortafuegos
  19. 19 Telnet
  20. 20 SSH
  21. 21 FTP
  22. 22 HTTP / HTTPS
  23. 23 SMTP
  24. 24 POP
  25. 25 IMAPD
  26. 26 DNS
  27. 27 NNTP
  28. 28 DHCPD
  29. 29 RSH, REXEC, RCP
  30. 30 NFSD
  31. 31 TFTP
  32. 32 BOOTP
  33. 33 SNMP
  34. 34 Finger
  35. 35 Identd
  36. 36 NTPD
  37. 37 CVS
  38. 38 rsync
  39. 39 lpd
  40. 40 Samba
  41. 41 Servidores LDAP Linux
  42. 42 Sistema X Window
  43. 43 Conectividad SNA
  44. 44 Software de Autoridad de Certificación para Linux
  45. 45 El kernel de Linux
  46. 46 Parches de seguridad del kernel y del compilador
  47. 47 Herramientas administrativas
  48. 48 Gestión de Software
  49. 49 Herramientas de monitorización de Hosts
  50. 50 Ficheros de Log y otros métodos de monitorización
  51. 51 Limitación y monitorización de usuarios
  52. 52 Lista de comprobación para la conexión a Internet
  53. 53 Métodos de compartición de ficheros
  54. 54 Lectores de correo basados en WWW
  55. 55 Autentificación Basada en Red
  56. 56 Software de Listas de correo
  57. 57 Escaneo / herramientas de prueba de intrusos
  58. 58 Herramientas de escaneo y detección de intrusos
  59. 59 Sniffers de Paquetes
  60. 60 Normas de comportamiento / integridad de ficheros
  61. 61 Gestión de auditorías
  62. 62 Copias de Seguridad
  63. 63 Enfrentandose a los ataques
  64. 64 Ataques de Negación de Servicio
  65. 65 Ejemplos de ataques
  66. 66 Virus, Caballos de Troya y Gusanos
  67. 67 Distribuciones seguras de Linux
  68. 68 Información específica por Distribuidor / Vendedor
  69. 69 Información de contacto con vendedores
  70. 70 Programación segura
  71. 71 Apéndice A: Libros y Revistas
  72. 72 Apéndice B: Otra documentación de seguridad sobre Linux
  73. 73 Apéndice C: Documentación de seguridad en línea
  74. 74 Apéndice D: Sitios de seguridad en general
  75. 75 Apéndice E: Sitios de Linux en general
Temas relacionados:
Búsquedas relacionadas:
  • Vnc linux
  • Instalar linux en xbox
  • Existen virus linux
  • Cual es mejor distribucion linux
  • Comandos linux
  • Estructura linux
  • Ldap linux
  • Hay virus linux

    Guía de Seguridad del Administrador de Linux - Seguridad basica de servicios de red

    10 - Seguridad basica de servicios de red


    Tutorial creado por Kurt Seifried . Extraido de: http://es.tldp.org/Manuales-LuCAS/GSAL/gsal-19991128-htm/
    16 Febrero 2006
    < anterior | 1 .. 8 9 10 11 12 .. 75 | siguiente >
    ¿Qué se está ejecutando y con quién se está hablando?

    No se pueden empezar a segurar servicios hasta que no se sepa qué se está ejecutando. Para este tipo de tareas, ps y netstat no tienen precio; ps dice qué se está ejecutando (httpd, inetd, etc) y netstat te dirá cuál es el estado de los puertos (llegados a este punto, estamos interesados en los puertos que están abiertos y escuchando, es decir, esperando conexiones). Se les puede echar un vistazo a los diferentes ficheros de configuración que controlan los servicios de red.



    Salida de PS

    El programa ps nos muestra el estado de procesos (información disponible en el sistema de ficheros virtual /proc). Las opciones más comúnmente utilizadas son "ps -xau", que muestra algo así como toda la información que siempre quisiste saber. Por favor, ten en cuenta: estas opciones cambian entre sistemas UNIX, Solaris, SCO, todos se comportan de manera diferente (lo cual es increíblemente molesto). Lo que viene a continuación es una salida típica de una máquina (utilizando "ps -xau").

    USER PID %CPU %MEM SIZE RSS TTY STAT START TIME COMMAND

    bin 320 0.0 0.6 760 380 ? S Feb 12 0:00 portmap

    daemon 377 0.0 0.6 784 404 ? S Feb 12 0:00 /usr/sbin/atd

    named 2865 0.0 2.1 2120 1368 ? S 01:14 0:01 /usr/sbin/named -u named -g named -t /home/named

    nobody 346 0.0 18.6 12728 11796 ? S Feb 12 3:12 squid

    nobody 379 0.0 0.8 1012 544 ? S Feb 12 0:00 (dnsserver)

    nobody 380 0.0 0.8 1012 540 ? S Feb 12 0:00 (dnsserver)

    nobody 383 0.0 0.6 916 416 ? S Feb 12 0:00 (dnsserver)

    nobody 385 0.0 0.8 1192 568 ? S Feb 12 0:00 /usr/bin/ftpget -S 1030

    nobody 392 0.0 0.3 716 240 ? S Feb 12 0:00 (unlinkd)

    nobody 1553 0.0 1.8 1932 1200 ? S Feb 14 0:00 httpd

    nobody 1703 0.0 1.8 1932 1200 ? S Feb 14 0:00 httpd

    root 1 0.0 0.6 776 404 ? S Feb 12 0:04 init [3]

    root 2 0.0 0.0 0 0 ? SW Feb 12 0:00 (kflushd)

    root 3 0.0 0.0 0 0 ? SW Feb 12 0:00 (kswapd)

    root 4 0.0 0.0 0 0 ? SW Feb 12 0:00 (md_thread)

    root 64 0.0 0.5 736 348 ? S Feb 12 0:00 kerneld

    root 357 0.0 0.6 800 432 ? S Feb 12 0:05 syslogd

    root 366 0.0 1.0 1056 684 ? S Feb 12 0:01 klogd

    root 393 0.0 0.7 852 472 ? S Feb 12 0:00 crond

    root 427 0.0 0.9 1272 592 ? S Feb 12 0:19 /usr/sbin/sshd

    root 438 0.0 1.0 1184 672 ? S Feb 12 0:00 rpc.mountd

    root 447 0.0 1.0 1180 644 ? S Feb 12 0:00 rpc.nfsd

    root 458 0.0 1.0 1072 680 ? S Feb 12 0:00 /usr/sbin/dhcpd

    root 489 0.0 1.7 1884 1096 ? S Feb 12 0:00 httpd

    root 503 0.0 0.4 724 296 2 S Feb 12 0:00 /sbin/mingetty tty2

    root 505 0.0 0.3 720 228 ? S Feb 12 0:02 update (bdflush)

    root 541 0.0 0.4 724 296 1 S Feb 12 0:00 /sbin/mingetty tty1

    root 1372 0.0 0.6 772 396 ? S Feb 13 0:00 inetd

    root 1473 0.0 1.5 1492 1000 ? S Feb 13 0:00 sendmail: accepting connections on port 25

    root 2862 0.0 0.0 188 44 ? S 01:14 0:00 /usr/sbin/holelogd.named /home/named/dev/log

    root 3090 0.0 1.9 1864 1232 ? S 12:16 0:02 /usr/sbin/sshd

    root 3103 0.0 1.1 1448 728 p1 S 12:16 0:00 su -root 3104 0.0 1.3 1268 864 p1 S 12:16 0:00 -bash

    root 3136 0.0 1.9 1836 1212 ? S 12:21 0:04 /usr/sbin/sshd

    Los interesantes son: portmap, named, Squid (y su servidor dns, los procesos hijos unlinkd y ftpget), httpd, syslogd, sshd, rpc.mountd, rpc.nfsd, dhcpd, inetd, y sendmail (este servidor parece estar proveyendo servicios de puerta de enlace, correo y compartición de ficheros FNS). La forma más fácil de aprender a leer la salida de ps es irse a la página del manual de ps y aprender a qué se refiere cada campo (la mayoría se explican por sí mismos, tales como el %CPU, mientras que algunos como SIZE son un poco más oscuros: SIZE es el número de páginas de memoria de 4k que está utilizando un programa). Para averiguar qué programas se están ejecutando, una apuesta segura es hacer ‘man <nombre_de_comando>’; lo cual casi siempre suele sacar la página del manual que pertenece a ese servicio (como httpd). Te darás cuenta de que servicios como telnet, ftpd, identd y otros no aparecen aunque estén ahí. Esto es debido a que se ejecutan desde inetd, el "superservidor". Para encontrar estos servicios, mira en /etc/inetd.conf o en la salida de "netstat -vat".



    Salida de Netstat

    netstat informa acerca de casi cualquier cosa que se pueda imaginar relacionada con la red. Es especialmente buena para sacar listados de conexiones y sockets activos. Al usar netstat se puede encontrar qué interfaces están activas en qué puertos. Lo que viene a continuación es la salida típica de un servidor, con netstat –an.

    Active Internet connections (including servers)

    Proto Recv-Q Send-Q Local Address Foreign Address State

    tcp 0 0 24.108.11.200:80 205.253.183.122:3661 ESTABLISHED

    tcp 0 0 0.0.0.0:1036 0.0.0.0:* LISTEN

    tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN

    tcp 0 0 10.0.0.10:53 0.0.0.0:* LISTEN

    tcp 0 0 28.208.55.254:53 0.0.0.0:* LISTEN

    tcp 0 0 127.0.0.1:53 0.0.0.0:* LISTEN

    tcp 0 0 0.0.0.0:139 0.0.0.0:* LISTEN

    tcp 0 0 0.0.0.0:25 0.0.0.0:* LISTEN

    tcp 0 0 0.0.0.0:2049 0.0.0.0:* LISTEN

    tcp 0 0 0.0.0.0:635 0.0.0.0:* LISTEN

    tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN

    tcp 0 0 0.0.0.0:21 0.0.0.0:* LISTEN

    tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN

    udp 0 0 127.0.0.1:1031 0.0.0.0:*

    udp 0 0 0.0.0.0:1029 0.0.0.0:*

    udp 0 0 0.0.0.0:800 0.0.0.0:*

    udp 0 0 0.0.0.0:1028 0.0.0.0:*

    udp 0 0 10.0.0.10:53 0.0.0.0:*

    udp 0 0 28.208.55.254:53 0.0.0.0:*

    udp 0 0 127.0.0.1:53 0.0.0.0:*

    udp 0 0 10.1.0.1:138 0.0.0.0:*

    udp 0 0 10.1.0.1:137 0.0.0.0:*

    udp 0 0 10.0.0.10:138 0.0.0.0:*

    udp 0 0 10.0.0.10:137 0.0.0.0:*

    udp 0 0 0.0.0.0:138 0.0.0.0:*

    udp 0 0 0.0.0.0:137 0.0.0.0:*

    udp 0 0 0.0.0.0:2049 0.0.0.0:*

    udp 0 0 0.0.0.0:635 0.0.0.0:*

    udp 0 0 0.0.0.0:514 0.0.0.0:*

    udp 0 0 0.0.0.0:111 0.0.0.0:*

    raw 0 0 0.0.0.0:1 0.0.0.0:*

    raw 0 0 0.0.0.0:6 0.0.0.0:*

    En mi opinión la salida numérica es más fácil de leer (una vez que se memoriza /etc/services). Los campos que nos interesan son el primero, el tipo de servicio, el cuarto campo, que es la dirección IP de la interfaz y el puerto, la dirección externa (si no es 0.0.0.0.* significa que alguien le está hablando activamente), y el estado del puerto. La primera línea es un cliente remoto hablando con el servidor de Web de esta máquina (puerto 80). Cuando se ve el servidor www escuchando en 0.0.0.0:80 que significa, todos los interfaces, puerto 80, seguidos del servidor DNS ejecutándose en las 3 interfaces, un servidor samba (139), un servidor de correo (25), un servidor NFS (2049), etc. Observarás listado el servidor de ftp (21), que aunque se ejecuta desde inetd, y aunque actualmente no está en uso (p. ej., no hay nadie activo haciendo un ftp), sale en el listado de la salida de netstat. Lo cual convierte a netstat en una herramienta especialmente útil para averiguar qué es lo que está activo en una máquina, haciendo más sencillo el inventariado en el servidor del software activo e inactivo.



    lsof

    lsof es un práctico programa cuya idea es similar a la de ps, excepto en que muestra qué ficheros/etc están abiertos, lo cual puede incluir sockets de red. Desafortunadamente, el lsof medio saca bastante información, de modo que será necesario utilizar grep o redireccionarlo mediante less ("lsof | less") para hacerlo más cómodo de leer.

    squid 9726 root 4u inet 78774 TCP localhost:2074->localhost:2073 (ESTABLISHED)

    squid 9726 root 5u inet 78777 TCP localhost:2076->localhost:2075 (ESTABLISHED)

    squid 9726 root 6u inet 78780 TCP localhost:2078->localhost:2077 (ESTABLISHED)

    squid 9726 root 7w CHR 1,3 6205 /dev/null

    squid 9726 root 14u inet 78789 TCP host1:3128 (LISTEN)

    squid 9726 root 15u inet 78790 UDP host1:3130

    squid 9726 root 16u inet 78791 UDP host1:3130

    squid 9726 root 12u inet 167524 TCP host1:3128->host2:3630 (ESTABLISHED)

    squid 9726 root 17u inet 167528 TCP host1:3424->www.ejemplo.org:http (SYN_SENT)

    Este ejemplo muestra que se tiene ejecutándose a Squid, escuchando en los puertos 3128 y 3130, las últimas dos líneas muestran una conexión abierta desde un host interno al servidor de Squid y la acción resultante que ha emprendido Squid para cumplir con la solicitud (ir a www.playboy.com) host1 es el servidor de Squid y host2 es la máquina cliente haciendo la petición. Es una herramienta que no tiene precio para hacerse una idea exacta de qué es lo que está ocurriendo con tu servidor en la red. Se puede conseguir lsof con algunas distribuciones. Ten en cuenta que las versiones de losf compiladas para las versiones del kernel 2.0.x no funcionarán con el kernel 2.2.x y vice versa, pues hay bastantes cambios. El sitio primario de lsof es: ftp://vic.cc.purdue.edu/pub/tools/unix/lsof/
    < anterior | 1 .. 8 9 10 11 12 .. 75 | siguiente >

    Autor y licencia de 'Guía de Seguridad del Administrador de Linux'


    Tutorial de Kurt Seifried . Extraido de: http://es.tldp.org/Manuales-LuCAS/GSAL/gsal-19991128-htm/ CopyLeft
    Este contenido ha sido recopilado por el equipo de Wikilearning. Todo el contenido recopilado se ha obtenido respetando y comunicando en nuestro site la licencia de cada fuente.