# Bastion host

Un bastion host (servidor bastion o pasarela de aplicaciones) es una aplicación que se localiza en un servidor con el fin de ofrecer seguridad a la red interna, por lo que ha sido especialmente configurado para la recepción de ataques, generalmente provee un solo servicio (como por ejemplo un servidor proxy).

## Definición

Históricamente, se le llamaba bastiones a las altas partes fortificadas de los castillos medievales; puntos que cubrían áreas críticas de defensa en caso de invasión, usualmente teniendo murallas muy fortificadas, salas para alojar tropas, y armas de ataque a corta distancia como ollas de aceite hirviendo para alejar a los invasores cuando ya estaban por penetrar al castillo. Haciendo una analogía, un bastion host es un sistema identificado por el administrador de firewall como un punto crítico en la seguridad de la red. Generalmente, los bastion hosts tendrán cierto grado de atención extra para configurar y diseñar su seguridad, pudiendo tener software modificado para asegurar su buen desempeño.

## Diseño

A diferencia del filtro realizado a través de un router, que permite o no el flujo directo de paquetes desde el interior al exterior de una red, los bastion hosts (también llamados en inglés application-level gateways) permiten un flujo de información pero no un flujo de paquetes, lo que permite una mayor seguridad de las aplicaciones del host. El diseño del bastión consiste en decidir qué servicios incluirá. Se podría tener un servicio diferente por host, pero esto involucraría un costo muy elevado, pero en caso de que se pueda abordar, se podrían llegar a tener múltiples bastion hosts para mantener seguros múltiples puntos de ataque.
Definida la cantidad de bastion hosts, se debe ahora analizar qué se instalará en cada uno de ellos, para esto se proponen distintas estrategias:
* Que la plataforma de hardware del bastion host ejecute una versión segura de su sistema operativo, diseñado específicamente para proteger al sistema operativo de sus vulnerabilidades y asegurar la integridad del cortafuegos.
* Instalar sólo los servicios que se consideren esenciales. La razón de esto es que si el servicio no está instalado, éste no puede ser atacado. En general, una limitada cantidad de aplicaciones proxy son instaladas en un bastion host.
* El bastion host podría requerir autentificación adicional antes de que un usuario ingrese a sus servicios.
* En caso de alojar un proxy, este puede tener variadas configuraciones que ayuden a la seguridad del bastion host, tales como: configurados para soportar sólo un subconjunto de aplicaciones, permitiendo el acceso a determinados hosts y/o proveyendo toda la información de los clientes que se conecten.

## Tipos de bastion host

Los bastiones pueden clasificarse en tres tipos: single-homed bastion host, dual-homed bastion host y multihomed bastion host.

### Single-homed bastion host

Es un dispositivo con una interfaz única de red, frecuentemente se utiliza para una puerta de enlace (gateway)en el nivel de aplicación. El router externo está configurado para enviar los datos al Bastion Host y los clientes internos enviar los datos de salida al host. Finalmente el host evaluará los datos según las directrices de seguridad.

### Dual-homed bastión host

Es un dispositivo que tiene al menos dos interfaces de red. Sirve como puerta de enlace al nivel de aplicación y como filtro de paquetes. La ventaja de usar este host es crear un quiebre entre las red externa e interna, lo que permite que todo el tráfico de entrada y salida pase por el host. Este host evitará que un atacante intente acceder a un dispositivo interno.

### Multihomed bastión host

Un Servidor Bastión interno puede ser clasificado como multihomed. Cuando la política de seguridad requiere que todo tráfico entrante y salida sea enviado a través de un servidor proxy, un nuevo servidor proxy debería ser creado para la nueva aplicación streaming. Cuando se utiliza un bastión host como interno, debe residir dentro de una organización de la red interna, en general como puerta de acceso para recibir toda el tráfico de un bastión host externo. Lo que agrega un nivel mayor de seguridad.

## Aplicaciones

El uso de bastión host puede ser extendible a variados sistemas y servicios:
* Servidor web.
* Servidor DNS.
* Servidor de correo electrónico.
* Servidor FTP.
* Servidor proxy.
* Honeypot.
* Servidor de una red privada virtual.
* Deep-secure bastion.
A continuación se expone un ejemplo de una red donde se utilizan dos bastiones host, como se observa se forma una capa adicional de seguridad entre el Internet y la red interna. Para tener acceso a la red interna, un atacante debe pasar por el router externo, alguno de los bastiones y el router interno. El paso por todas estas etapas como presenta una dificultad para el atacante, es de esperar que por el tiempo que le demore traspasar todas las capas, el administrador de red ya debiese haber reconocido la intrusión y haber tomado una posición defensiva.