Está en la página 1de 5

Seguridad de servidores

Seguridad perimetral: chapas seguras, cámaras detectoras de movimiento, letreros de


acceso limitado, son algunos de los métodos más comunes, podemos agregar chapas de
combinación o sistemas biométricos, en cuanto a las cámaras pueden ser IP, de las que
envían por correo cualquier evento en el punto y bien es importante poner letreros en
donde se especifica de manera clara que solo personal autorizado puede entrar a este
lugar.

Seguridad ambiental: el área debe de estar alejada de la humedad, calor extremo, zonas
con cargas eléctricas fuertes o campos magnéticos altos, lugares de paso constante,
instalaciones eléctricas improvisadas o en malas condiciones, es muy importante contar
con sistemas contra incendios en las áreas de servidores que estén basadas en sistemas
en seco ya sean polvos o gases y sistemas de medición te temperatura y humedad.

Control de acceso: nos referimos al acceso a la información, nadie ajeno debe ver las
carpetas de la empresa o la información de nuestros compañeros, para esto se tienen
varias medidas a tomar el primero es cerrar todos los puertos del servidor dejando solo
los indispensables, todos los elementos compartidos tienen que estar restringidos a los
usuarios del dominio que estén registrados, debe contar con antivirus y firewall, en
algunas ocasiones se ponen equipos dedicados a este fin, los cuales son muy buenos,
además llevan el control de acceso a usuarios.

Bases firmes: los sitios designados para instalar los servidores deben estar bien
anclados, ya sean racks o charolas, es importante asegurarse que estén aterrizados,
sujetos al piso y muros, perfectamente armados y que no tengan juego alguno, el piso de
preferencia debe ser antiestático, y modular para hacer cableados limpios, al igual que el
techo de preferencia modular y de materiales antiestáticos y ligeros.

Energía garantizada: en el caso de los servidores es mejor contar con sistemas


redundantes en el caso de las fuentes de poder, en cuanto a la energía es bueno contar
con un buen par de respaldos de energía que soporten la carga de los equipos, y que uno
tenga una de las fuentes y el otro la otra fuente, después de este sistema es bueno tener
el UPS de la empresa y al final de la cadena una planta de energía, si no se cuenta con el
presupuesto para un sistema tan robusto, por lo menos contar con la planta y los
respaldos de los servidores.

Sistemas de notificación: es vital contar con sistemas de notificación vía SMS, correo
electrónico, telefónicamente e incluso sistemas audibles en caso de una falla, esto
apoyará para que sea posible detectar a tiempo algún problema, estos sistemas de
notificación cada vez son más comunes, sobre todo en los sistemas profesionales,
algunos de estos reportan desde fallas de energía hasta acceso de personal no
autorizado.

Sistemas de respaldo: pero ahora nos referimos a los datos, un buen sistema de respaldo
es como un seguro de vida, es indispensable, los datos tienen que tener un ciclo de vida,
no se deben perder nada y todo se debe salvar en cuestión de minutos, ya sean unidades
de cinta, DVD o discos duros siempre debe de existir un respaldo de la información más
importante del negocio.

Estas son algunas de las cosas más importantes a tomar en cuenta en el esquema general
de seguridad de nuestros servidores, algunos que tenemos recursos más limitados
tenemos que ver la forma de cubrir los aspectos más importantes con lo que tenemos a
la mano.

Usando estas directivas puede ayudar a prevenir que cualquier servicio xinetd (es un
servicio ó demonio que usan gran parte de los sistemas Unix dedicado a administrar la
conectividad basada en Internet. xinetd es una extensión más segura del servicio de
Internet inetd ) sobresature el sistema, resultando en un rechazo de servicio.

Cuando un sistema es usado como un servidor en una red pública, se convierte en un


objetivo para ataques. Por esta razón, es de suma importancia para el administrador
fortalecer el sistema y bloquear servicios.

Antes de extendernos en problemas particulares, debería revisar los siguientes consejos


generales para mejorar la seguridad del servidor:

• Mantenga todos los servicios actualizados para así protegerse de las últimas
amenazas informáticas.
• Utilice protocolos seguros siempre que sea posible.
• Proporcione sólo un tipo de servicio de red por máquina siempre que sea
posible.
• Supervise todos los servidores cuidadosamente por actividad sospechosa.

Asegure los servicios con TCP Wrappers y xinetd

Los TCP wrappers (es una herramienta simple que sirve para monitorear y controlar el
tráfico que llega por la red) proporcionan control de acceso a una variedad de servicios.
La mayoría de los servicios modernos de redes, tales como SSH, Telnet y FTP, hacen
uso de TCP wrappers, que montan guardia entre las peticiones entrantes y el servicio
solicitado.

Los beneficios ofrecidos por TCP wrappers son mejorados cuando se usan en conjunto
con xinetd, un super servicio que proporciona acceso adicional, conexión, enlace,
redirección y control de la utilización de recursos.

Los TCP wrappers son capaces de mucho más que simplemente negar el acceso a
servicios

Los TCP Wrappers y las pancartas de conexión

Una buena forma de disfrazar qué sistema está ejecutando el servidor, es enviando un
mensaje intimidante a las conexiones clientes para un servicio. Esto también permite
dejarle saber al atacante que el administrador del sistema está atento y vigilante. Para
implementar un mensaje de TCP wrapper para un servicio, utilice la opción banner.
Este ejemplo implementa una pancarta para vsftpd. Para comenzar, debe crear un archivo
de pancartas. Este puede estar en cualquier lugar en el sistema, pero debe tener el
mismo nombre que el demonio. Para este ejemplo, se nombrará al archivo
/etc/banners/vsftpd.

Los contenidos del archivo se veran así:

220-Hello, %c
220-All activity on ftp.example.com is logged.
220-Act up and you will be banned.

La señal %c proporciona una variedad de información del cliente, tal como el nombre de
usuario y del host, o el nombre del usuario y la dirección IP para hacer la conexión aún
más intimidante. El Manual de referencia de Red Hat Enterprise Linux tiene una lista
de otras señales disponibles con los TCP wrappers.

Para que esta pancarta sea presentada a las conexiones entrantes, añada la siguiente
línea al archivo /etc/hosts.allow:

vsftpd : ALL : banners /etc/banners/

Si un host particular o red ha sido atrapada tratando de atacar el servidor, se pueden usar
los TCP wrappers para advertir de ataques subsecuentes desde esa máquina o red a
través de la directiva spawn.

En este ejemplo, se asume que el cracker desde la red 206.182.68.0/24 ha sido atrapado
intentando atacar el servidor. Colocando la siguiente línea en el archivo /etc/hosts.deny, se
niega el intento de conexión y se registra a un archivo especial.

ALL : 206.182.68.0 : spawn /bin/ 'date' %c %d >> /var/log/intruder_alert

La señal %d suministra el nombre del servicio que el atacante estaba tratando de


acceder.

Para permitir la conexión y registrarla, coloque la directiva spawn en el archivo


/etc/hosts.allow.

TCP Wrappers y el mejoramiento de la conexión

Si ciertos tipos de conexión son de mayor preocupación que otros, se puede subir el
nivel de conexión para ese servicio a través de la opción severity.

En este ejemplo, se asume que cualquiera que esté intentando conectarse al puerto 23 (el
puerto de Telnet) en un servidor FTP, es un maleante informático. Para resaltar esto,
coloque una bandera emerg en los archivos de registro en vez de la bandera por defecto,
info, y niegue la conexión.

Para hacer esto, coloque la línea siguiente en /etc/hosts.deny:

in.telnetd : ALL : severity emerg


Esto usará la facilidad de conexión por defecto authpriv, pero subirá el nivel de prioridad
del valor por defecto de info a emerg, lo cual coloca los mensajes de conexión
directamente a la consola.

Aumento de la seguridad con xinetd


El super servidor xinetd es otra herramienta útil para controlar el acceso a sus servicios
subordinados. Esta sección se enfocará en cómo se puede usar xinetd para colocar un
servicio trampa y controlar la cantidad de recursos otorgados que cualquier servicio
xinetd pueda usar para así frustrar posibles ataques de DoS. Para una lista de las opciones
disponibles, consulte las páginas man para xinetd y xinetd.conf.

Colocando una Trampa

Una característica importante de xinetd es la habilidad de añadir hosts a una lista global
de no_access. A los hosts en esta lista se les negará conexiones a los servicios manejados
por xinetd por un tiempo determinado o hasta que se reinicie xinetd. Esto se logra usando
el atributo SENSOR. Esta técnica es una forma fácil de bloquear máquinas que intenten
escanear un puerto del servidor.

El primer paso en configurar un SENSOR es seleccionar un servicio que usted planea no


utilizar. Para este ejemplo, se utilizará Telnet.

Modifique el archivo /etc/xinetd.d/telnet y cambie la línea flags para que muestre lo


siguiente:

flags = SENSOR

Agregue la línea siguiente entre llaves:

deny_time = 30

Esto negará al host el acceso al puerto por 30 minutos. Otros valores aceptables para el
atributo deny_time son FOREVER, lo que mantiene el bloqueo hasta que se reinicie
xinetd, y NEVER, lo que permite la conexión y la conecta.

Finalmente, la última línea debería mostrar lo siguiente:

disable = no

Aún cuando el uso de SENSOR es una buena forma de detectar y detener conexiones de
máquinas dañinas, tiene dos desventajas:

• No funcionará contra escaneos sigilosos.


• Un atacatante que sabe que usted está ejecutando un SENSOR, puede montar un
ataque de rechazo de servicio (DoS) en contra de un host particular falsificando
sus direcciones IP y conectándose al puerto prohibido.

Control de recursos del servidor


Otra característica importante de xinetd, es su habilidad para controlar la cantidad de
recursos que los servicios bajo su control pueden utilizar.

Esto se hace a través de las siguientes directrices:

• cps = <number_of_connections> <wait_period>— Indica el número de conexiones


permitidas al servicio por segundo. Esta directiva acepta solamente valores
enteros.
• instances = <number_of_connections> — Indica el número total de conexiones
permitidas al servicio. Esta directiva acepta bien sea un valor entero o
UNLIMITED.
• per_source = <number_of_connections> — Indica las conexiones permitidas a un
servicio por cada máquina. Esta directiva acepta un valor entero o UNLIMITED.
• rlimit_as = <number[K|M]> — Indica la cantidad de espacio de direcciones de
memoria que el servicio puede ocupar, en kilobytes o megabytes. Esta directiva
acepta valores enteros o UNLIMITED.
• rlimit_cpu = <number_of_seconds> — Indica la cantidad de tiempo en segundos que
un servicio puede ocupar el CPU. Esta directiva acepta un valor entero o
UNLIMITED.

También podría gustarte