Introduction Rundeck Secure Script Executions 37162.en - Es
Introduction Rundeck Secure Script Executions 37162.en - Es
John Becker
Este documento es del sitio de la Sala de Lectura del Instituto SANS. No se permite volver a colocar sin permiso expreso por escrito.
Introducción a Rundeck para Secure Script
Ejecuciones
Resumen
En la actualidad, muchas organizaciones admiten sistemas físicos, virtuales y basados en la nube en una amplia gama de sistemas operativos.
Proporcionar acceso de privilegios mínimos a los sistemas puede ser una compleja malla de archivos sudoers, perfiles, políticas y reglas de firewall. Si
bien las herramientas de administración de la configuración, como Puppet o Chef, ayudan a garantizar la coherencia, no simplifican inherentemente el
proceso para los usuarios o administradores. Además, los equipos actuales de DevOps están impulsando cambios más rápido que nunca. Mantenerse al
día con los nuevos servicios y aplicaciones a menudo obligan a los administradores de sistemas a usar reglas de acceso más generales y, por lo tanto,
exponen un acceso más amplio de lo necesario. Rundeck es una plataforma de orquestación basada en web con potentes ACL y conectividad basada en
ssh para una amplia gama de sistemas operativos y dispositivos. La interfaz de usuario simple para Rundeck se combina con API REST compatibles con
DevOps y archivos de configuración YAML o XML. El uso de Rundeck para el acceso al servidor mejora la seguridad mientras se mantiene al ritmo de los
entornos que cambian rápidamente.
1. Introducción
La simplicidad y el acceso con privilegios mínimos son dos pilares de la seguridad de la información. Un sistema complejo
introduce más defectos y es difícil de probar (Schneier, 1999). Las pautas del NIST establecen "... las organizaciones deben
basar la política de control de acceso en el principio del mínimo privilegio ..." (Swanson y Guttman, 1996). Sin embargo, la
simplicidad y el mínimo privilegio pueden estar reñidos entre sí en una organización que respalda una colección dispareja de
sistemas operativos , dispositivos de red y entornos de nube híbrida. Cada sistema operativo para estos dispositivos tiene una
implementación de control de acceso diferente. Unix y Linux tienen sudo y SELinux, Windows tiene Políticas de grupo y los
dispositivos de red tienen varias opciones. Esta complejidad del sistema se combina con entornos de nube elásticos y DevOps
cambian los resultados de velocidad en conflicto con las políticas de seguridad y los controles de acceso (Lawler,
2015).
Los controles de acceso con privilegios mínimos a menudo se implementan con los controles de acceso basados en roles
(RBAC), pero "a menudo son difíciles o costosos de lograr porque es difícil adaptar el acceso en función de diversos atributos o
restricciones" (Hu, Ferraiolo y Kuhn, 2006). Es difícil para un solo sistema mantenerse al día con la gestión de configuración
automatizada y los entornos virtuales dinámicos. Todavía hay momentos en que un usuario necesita una sesión interactiva (por
ejemplo, SSH) para completar una tarea. Sin embargo, la mayoría de los comandos se pueden procesar de forma centralizada.
interactivamente o programado, y las solicitudes atípicas se pueden marcar y otorgar acceso temporal. Aunque muchas
herramientas permiten la administración de la configuración y el acceso remoto, Rundeck se destaca como una solución robusta
para controlar el acceso mediante la combinación de una interfaz fácil de usar y controles de acceso granulares.
Rundeck es una plataforma de orquestación de código abierto, planificador de trabajos y automatización de runbook escrita en
Java (rundeck.org, 2016). Las mismas herramientas y scripts que los equipos de DevOps, SysAdmin y Security usan hoy en día se
pueden implementar con controles de acceso granulares en Rundeck. A su vez, estos scripts y herramientas pueden delegarse de
manera segura a diferentes grupos de manera controlada. Esta delegación de acceso puede ser controlada por la versión y
programada para mantener el ritmo de los equipos de DevOps. Estas ejecuciones con script se registran centralmente en la base de
velocidad, mientras que los equipos de seguridad ven el acceso con menos privilegios, registro mejorado y una herramienta
Algunos se refieren a Rundeck como "la navaja suiza para operaciones" (rundeck.org, 2016). La función principal de la aplicación
es ejecutar trabajos (scripts o comandos) en los nodos de destino. La interfaz de usuario web, la línea de comandos, la API y el
planificador son todos desencadenantes de trabajos. Los trabajos se pueden agrupar para tareas como runbooks automatizados,
2.1. Preparar
Rundeck está disponible como una instalación de "lanzador" basada en jar Java, paquete Debian o Ubuntu, o un
paquete RPM. Los ejemplos en este documento usarán Ubuntu 16.04. Comience con la instalación de Java:
http://rundeck.org/downloads.html .
865c669c8694a9b6fa595363c9906cf771818337 rundeck-2.6.8-1-GA.deb
Verifique que el hash SHA coincida con lo publicado en rundeck.org, luego instale el paquete e inicie el servicio
rundeckd.
De forma predeterminada, Rundeck se ejecuta como un usuario sin privilegios "rundeck" en 0.0.0.0 (todas las interfaces) en el
puerto TCP 4440. Los usuarios pueden iniciar sesión como "admin" para el nombre de usuario y contraseña predeterminados en
http: // <hostname>: 4440 . La base de datos HSQLDB incorporada es suficiente para instancias pequeñas, pero la mayoría de los
casos de uso de producción necesitan una base de datos relacional dedicada (Rundeck
Guía del administrador, 2016). MySQL es la base de datos preferida con soporte para MS-SQL también (Schueler, 2015).
Muchas organizaciones prefieren LDAP para acceso centralizado. El módulo PAM funciona bien en configuraciones
donde los usuarios se administran localmente con la administración de la configuración (por ejemplo, Puppet).
PropertyFileLoginModule admite tres tipos de hash u ofuscación de contraseñas: OBF, MD5 y CRYPT. Estos están
De los tipos compatibles, OBF es el menos seguro, ya que es un método de ofuscación reversible (Jetty, 2016).
MD5 ha sido inseguro para el hash de contraseñas durante casi 20 años ( Dobbertin 1996). CRYPT es la clase Java de
UnixCrypt (código fuente Jetty, 2016) que se limita a un algoritmo DES de 56 bits (clase UnixCrypt, 2016). Existen
numerosas herramientas superiores para cifrar, auditar y administrar LDAP y PAMPropertyFileLoginModule. Por lo
2.3. Endurecimiento
Una herramienta como Rundeck tiene claves para acceder a una amplia gama de sistemas críticos en una organización. Los
servidores Rundeck deben colocarse en un enclave protegido debido a la necesidad de confidencialidad e integridad (Rome, sf). Las
conexiones entrantes están limitadas a HTTPS para los usuarios y SSH para la administración de Rundeck. Las conexiones salientes
dependen de los complementos de nodo utilizados, pero generalmente requieren SSH en el puerto 22 como mínimo. Después de
asegurar el acceso de red al Rundeck, se debe tener cuidado para configurar y monitorear el propio host.
Rundeck se instala con permisos de archivo para el directorio / etc / rundeck establecido en 655 y propiedad de root. Los
archivos dentro de / etc / rundeck tienen la propiedad de "rundeck" y el grupo "rundeck" con 640 permisos de archivo. Estos
elementos son confidenciales, ya que comprenden listas de control de acceso (* .aclpolicy), cuentas de usuario (realm.properties) y
archivos de configuración principales que incluyen contraseñas (* .properties). Desde la perspectiva del sistema operativo, esto
puede ser
aceptable como el usuario "rundeck" no tiene acceso de shell. Sin embargo, la aplicación Rundeck tiene un vacío en el que los
usuarios pueden ejecutar trabajos localmente como el usuario "rundeck" en Linux. Este acceso permite que los usuarios de
Rundeck no privilegiados lean y modifiquen elementos críticos en / etc / rundeck al ejecutar trabajos o comandos ad-hoc contra el
nodo "localhost". Restringir los objetivos "localhost" a los administradores de Rundeck evita el acceso involuntario a configuraciones
críticas. Una capa adicional de protección es cambiar la propiedad del archivo dentro de / etc / rundeck a "root: rundeck". Los
permisos de 640 archivos permitirán el acceso de lectura del usuario "rundeck", pero limitarán las escrituras al usuario raíz.
Finalmente, los archivos en / etc / rundeck deben ser monitoreados de cerca para detectar cualquier cambio con un programa Host
El primer paso para una configuración de instancia de Rundeck de producción debe ser reemplazar el inicio de sesión del
usuario administrador según CSC 5.3 (Critical Security Controls, 2015). La cuenta predeterminada reside en la última sección de
/etc/rundeck/realm.properties. Elimine o comente la sección a continuación si usa LDAP o PAM. Si se ve obligado a usar la
autenticación PropertyFileLoginModule, cambie el nombre de usuario y la contraseña 'admin' y almacénelos en formato MD5
Rundeck escucha en texto claro en http: // <hostname>: 4440. El transporte HTTP de texto en claro es una mala práctica
para la administración del sistema. CSC 3.4 establece que se debe utilizar un cifrado seguro (TLS) (Critical Security Controls,
2015). Hay dos opciones para proporcionar seguridad de transporte HTTPS. La primera opción es habilitar SSL según las
instrucciones en
Rundeck escuche en https: // <hostname>: 4443. Sin embargo, hay otra opción para usar un proxy web para la terminación
SSL frente a Rundeck. Apache tiene los beneficios adicionales de escuchar en el puerto HTTPS estándar de 443, lo que
permite el soporte para la autenticación multifactor, así como también proporciona opciones para registros adicionales y
El siguiente ejemplo se centrará en Apache para la terminación SSL, proxy inverso y Google
Authenticator. El primer paso es instalar Apache y habilitar los módulos proxy y SSL necesarios:
Luego, configure el certificado SSL y la clave privada utilizada por Apache en / etc / ssl / certs y / etc / ssl / private.
Un certificado estándar SSL x.509 y una clave están disponibles de proveedores como Verisign o Microsoft Certificate
sudo openssl req -x509 -nodes -days 365 -newkey rsa: 2048 -keyout
/etc/ssl/private/rundeck-apache.key -out /etc/ssl/certs/rundeck-apache.crt
Una vez que el certificado y la clave estén listos, aplique las configuraciones a continuación para que Apache redirija
(mod_proxy) y finalice las conexiones SSL (mod_ssl). Esta configuración obligará a las solicitudes HTTP a usar HTTPS,
finalizar las conexiones HTTPS con TLS y cifrados seguros, y conectarse a Rundeck en 127.0.0.1 en lugar de la interfaz
pública.
/etc/apache2/sites-available/rundeck-redirect-port80.conf
/etc/apache2/sites-available/rundeck-ssl.conf
ProxyPreserveHost On SetEnv
proxy-sendchunked ProxyVia On
ProxyRequests Off
SSLProtocol TLSv1
</VirtualHost>
Con los archivos de configuración en / etc / apache2 / sites-available, elimine los valores predeterminados de / etc / apache2 /
sites-enabled y copie las nuevas configuraciones de rundeck. Reinicie Apache para cargar nuevas configuraciones.
Finalmente, establezca “-Drundeck.jetty.connector.forwards = true” en / etc / rundeck / profile para retener la información del
Rundeck ahora tiene TLS, terminación de cifrado fuerte en Apache. Hay módulos adicionales disponibles para la
autenticación multifactor (por ejemplo, Google Authenticator) y la protección de firewall de aplicaciones web (por
ejemplo, ModSecurity).
Los nodos son servidores, máquinas virtuales, instancias o dispositivos a los que Rundeck puede acceder a través de SSH o
complementos de conexión. La opción predeterminada para las definiciones de nodo es utilizar el proveedor integrado que se administra
mediante archivos XML. Los entornos pequeños y relativamente estáticos funcionan bien con el proveedor predeterminado. Las redes
dinámicas más grandes se benefician de los complementos del proveedor de nodos, como los complementos AWS EC2 o PuppetDB.
Una de las características más convincentes de Rundeck es cómo maneja los metadatos. Los nodos Rundeck tienen
atributos que describen la instancia (por ejemplo, nombre, dirección IP, sistema operativo, etc.). El proveedor de nodos gestiona
los atributos en un formato de valor clave (por ejemplo, el complemento EC2 completará el atributo AWS EC2 "instanceId =
i-389f2cdk" para un nodo Rundeck correspondiente). Las etiquetas son un tipo de atributo utilizado para clasificaciones o
categorías (Rundeck User Guide, 2016). La combinación de etiquetas y atributos permite la orientación dinámica de hosts para
2.5. Conectividad
Rundeck dispone de una amplia gama de complementos para ampliar el acceso más allá de la conectividad SSH
predeterminada (Rundeck.org, nd). El complemento WinRM (Windows Remote Management) está disponible para comandos
nativos de Windows. Una alternativa es usar SSH en Windows con el servidor OpenSSH o similar. En otros casos, Rundeck
funciona como un front-end para los comandos Puppet, Ansible o Chef. Se necesita una revisión cuidadosa para determinar qué
conectividad y acceso debería tener Rundeck en una organización. En un extremo del espectro, Rundeck podría tener privilegios
de root o equivalentes de administrador en todos los dispositivos y depender exclusivamente de ACL internas para los controles.
Otros equipos podrían usar múltiples instancias de Rundeck con cuentas de servicio restringidas para reducir el impacto de un
base de datos adjunta. Ninguna de las soluciones está encriptada a menos que use un complemento de Storage Converter (Rundeck
Administrator Guide, 2016). El almacenamiento de claves en una base de datos externa como MySQL las hace disponibles para
múltiples instancias de Rundeck, pero también tiene una mayor superficie de ataque. Use el complemento Storage Converter para cifrar
Es posible usar el almacenamiento del sistema de archivos para Rundeck Key Storage con Storage Converter para el
cifrado, pero la compensación entre seguridad y disponibilidad puede no valer la pena. Los reinicios de Rundeck requerirían leer la
contraseña del convertidor de almacenamiento de una fuente local (archivo, dongle, etc.) o escribir manualmente al inicio. De
cualquier manera, los inicios de servicio son más complicados y la clave de cifrado es potencialmente accesible en la memoria o
en el disco. Un equilibrio razonable con la confidencialidad y la disponibilidad es cifrar el sistema de archivos local dentro del
sistema operativo o la máquina virtual y mantener el almacenamiento de claves Rundeck en texto sin cifrar.
de SSH, lo más probable es que funcione como un comando o trabajo Rundeck. Los comandos ad-hoc son ejecuciones singulares
de comandos de shell contra nodos de destino. Pueden ser tan simples como 'tiempo de actividad' o una cadena compleja de
comandos canalizados. Los trabajos son un conjunto ordenado de pasos compuesto por comandos CLI, scripts de shell y otros
trabajos Rundeck. Cuando se secuencia en un trabajo, estos pasos pueden realizar orquestaciones complejas, como failovers de
Los trabajos pueden tomar entradas variables con "opciones" que se ingresan a través de la interfaz de usuario o de
proveedores de opciones externas (por ejemplo, Jenkins). Del mismo modo, un script de paso de trabajo puede ser un archivo remoto
al que se accede a través de una ruta de archivo o URL. Las opciones remotas y los scripts mejoran la flexibilidad con el control de
versiones, pero también introducen una complejidad adicional para asegurar el contenido. En lugar de simplemente asegurar Rundeck,
los proveedores de opciones remotas y scripts también están en condiciones de endurecimiento y auditoría.
2.7.1. Planificación
Muchos usuarios de Rundeck se centran en la función de programación (Edwards, 2014). Los trabajos programados se
ejecutan en horarios establecidos similares a los servicios cron en Linux o las tareas en Windows. El uso de Rundeck para programar
centraliza la visibilidad de las tareas y salidas que se ejecutan en una red. Los respondedores de incidentes buscarán tareas
programadas en los hosts como posibles bombas lógicas u otros signos de intrusión (Kral, 2011). Mover tareas programadas a
Rundeck permite deshabilitar los servicios cron y schtasks. A su vez, esto hace que la detección de tareas programadas no
Nombrar trabajos puede parecer sencillo al principio hasta que exista una amplia colección de trabajos y roles en Rundeck. A
medida que crecen los trabajos y los archivos de políticas de ACL, el administrador de Rundeck se convierte en un cuello de botella
para alinear los controles de acceso con los trabajos. Este cuello de botella conduce a la disputa por los nombres de los grupos y las
reglas rígidas para la creación de empleo. Un método alternativo es incluir los nombres de los roles dentro del nombre del trabajo.
basic_user y power_user están en patrones de expresiones regulares dentro de las ACL. Cada vez que se agrega o cambia un
trabajo, solo necesita incluir la palabra clave de rol correcta para ser utilizable. Este diseño reduce significativamente la sobrecarga
A continuación se muestran capturas de pantalla del mismo conjunto de trabajos pero con ACL que limitan el acceso de
"lectura" para el rol basic_user. En esta situación, la función power_user puede ejecutar ambos trabajos directamente, pero la función
Vista power_user
Un buen punto de partida para agrupar trabajos es separar los trabajos por función. Gestión de usuarios, lanzamiento, parches
son ejemplos de buenos grupos de alto nivel. Un grupo de trabajos de "Biblioteca" puede ser referenciado por muchos otros trabajos
mientras se mantiene oculto el contenido de los scripts. Por ejemplo, se puede crear un trabajo genérico de "Cambiar contraseña"
como trabajo principal que ejecutan los usuarios. Este trabajo apuntará a un nodo y pasará una opción de "nombre de usuario" a un
trabajo de Biblioteca que los usuarios no suelen ver directamente. El trabajo de la Biblioteca contiene los scripts reales para ejecutar
los comandos. Las ACL básicas de los usuarios hacen referencia al grupo de la Biblioteca para el acceso de "ejecución" pero no de
"lectura". Este enfoque permite la ejecución al tiempo que evita que la mayoría de los usuarios vean información confidencial.
Las listas de control de acceso (ACL) en Rundeck permiten el acceso basado en roles con un alto grado de granularidad. Los
recursos en Rundeck son denegados por defecto hasta que las ACL lo permitan explícitamente. Las políticas de ACL administran los
privilegios en muchos niveles dentro de Rundeck, incluidos proyectos, trabajos, nodos, comandos ad-hoc, almacenamiento de claves
y la API de Rundeck. Los archivos de políticas se escriben en YAML y residen en el directorio / etc / rundeck, pero también se
pueden crear utilizando la API de ACL del sistema y la API de ACL del proyecto.
Para obtener un conjunto de ACL directo y fácil de auditar, comience con archivos .aclpolicy estándar en el directorio / etc /
rundeck. Cree un archivo .aclpolicy por grupo o rol y asigne un nombre al archivo para que coincida (por ejemplo, un archivo de
política ACL para el grupo "operaciones" debería llamarse "operations.aclpolicy”). Pruebe las ACL resultantes después de cualquier
cambio.
acceso nodos
soporte
Este es el administrador predeterminado.aclpolicy de / etc / rundeck permite el acceso completo a todo para
- permitir: '*' # permitir lectura / escritura / eliminación / ejecución / eliminación de todos los
nodos de trabajos:
- allow: '*' # permitir lectura / ejecución para todos los nodos por:
---
recurso:
- allow: '*' # allow create of projects project:
Los archivos de políticas de Rundeck ACL definen qué acciones (leer, crear, actualizar, eliminar, admin, enable_executions,
disable_executions, configure, import, export) se aplican a los recursos (proyecto, sistema, system_acl, usuario, trabajo,
reglas precisos, si no complicados. La estructuración de los archivos de políticas de ACL para la flexibilidad puede evitar la
Denegar el acceso al servidor Rundeck. De forma predeterminada, esto es "localhost" y se puede hacer referencia en la ACL con la
nodo:
- partido:
nombre_nodo: 'localhost'
negar: '*'
- partido:
nombre_nodo: '. *'
permitir: '*'
Limite las funciones de administración de Rundeck a un solo rol (Administrador en el ejemplo a continuación). El acceso de
administrador incluye la capacidad de crear / modificar proyectos, modificar ACL de proyectos y modificar el almacenamiento de
claves. Los bloques de código "aplicación: 'rundeck'" son más restrictivos para roles que no son de administrador.
Acceso de administrador
recurso:
- allow: '*' # allow create of projects project:
recurso:
- igual: tipo:
sistema
permitir: [leer] # permitir la lectura del proyecto de recursos:
- partido:
nombre: ['Soporte', 'Red']
permitir: [leer] # Permitir acceso de lectura al almacenamiento de proyectos
específicos:
- permitir: [leer] # Permitir permitir acceso de lectura para usar claves ssh de la siguiente
manera:
grupo: usuario_básico
Use expresiones regulares para orientar el acceso específico a palabras clave en los nombres de los trabajos. Negar el acceso de
lectura para evitar que los usuarios vean trabajos y proyectos a los que no deberían acceder. Su interfaz de usuario será más
limpia y hay menos posibilidades de escalada accidental de privilegios. El siguiente ejemplo permitirá que el rol basic_user ejecute
cualquier trabajo con la palabra clave "basic_user" en el nombre, así como evitará la visualización de trabajos en el grupo
Biblioteca.
Basic_user ACL
- partido:
nombre: '. * basic_user. *'
permitir: [leer, ejecutar, matar] # permitir leer / ejecutar / matar trabajos
- partido:
grupo: 'Biblioteca. *'
permitir: [ejecutar, matar] # permitir leer / ejecutar / matar de todos los nodos
de trabajos:
- allow: '*' # permitir lectura / ejecución para todos los nodos por:
grupo: 'basic_user'
estándar de los comandos está disponible como "actividad" junto con la hora, la fecha y el usuario que ejecutó el trabajo o el comando
ad-hoc. El historial de actividades reside en la base de datos y se puede buscar a través de la interfaz de usuario Rundeck.
Rundeck usa log.4j y los registros escriben en / var / log / rundeck en la distribución del paquete. Los registros clave para la
revisión de seguridad son rundeck.audit.log (decisiones de ACL), rundeck.jobs.log (cambios en los trabajos), rundeck.log (los mensajes
generales de la aplicación incluyen actividad de ejecución). Los detalles completos sobre el registro y el formato de Rundeck están
disponibles en http://rundeck.org/docs/administration/logging.html.
Si bien Rundeck admite muchos casos de uso diferentes, la respuesta a incidentes es un buen ejemplo para los equipos de
Contención, erradicación, recuperación y lecciones aprendidas (Kral, 2011). Rundeck se ajusta a las fases de preparación
(control de acceso y herramientas), identificación (recopilación de eventos) y contención (aislamiento a corto plazo, respaldo,
aislamiento a largo plazo). Rundeck también podría resultar útil en las fases de Erradicación y Recuperación como una
herramienta de Build / Deployment / Release. Para este ejemplo, Rundeck se utiliza para acceder, encontrar, contener y
eliminar intrusos.
3.1.1. Preparación
La fase de preparación se centra en la preparación del equipo para manejar un incidente con poco o ningún aviso (Kral, 2011).
Rundeck es una herramienta útil para acceder y revisar sistemas de forma remota. Los equipos de respuesta a incidentes pueden
crear trabajos regulares para recuperar registros, archivos críticos de hash, verificar permisos, así como realizar cambios como
actualizar las reglas del firewall o aplicar parches. Muchos scripts utilizados para la caza y las investigaciones funcionan bien como
trabajos de Rundeck.
3.1.2. Identificación
Un respondedor puede usar los trabajos Rundeck creados en la fase de preparación para determinar si ha ocurrido
un incidente. Estos trabajos son útiles para cualquier sistema o patrón no incluido en los sistemas IDS. Los comandos
ad-hoc son útiles para buscar patrones específicos en muchos dispositivos. Por ejemplo, el siguiente comando ad-hoc
devolverá el nombre de host, md5sum para /etc/init/ssh.conf y el número de archivos en / etc / init en formato CSV. Copie
3.1.3. Contención
El objetivo de la fase de contención es evitar más daños y preservar la evidencia (Kral, 2011). Los nodos comprometidos
etiquetados con un identificador único, como el ID de incidente "inc50298" en este ejemplo, son fáciles de agrupar en Rundeck.
dirigido a los nodos por ID de incidente cuando "etiquetas: $ {option.Incident_ID}" se establece para el objetivo del nodo. La
contención a corto plazo puede ser tan simple como actualizar firewalls o dispositivos de red para detener el tráfico a un host
determinado. La preservación puede tomar la forma de una instantánea o copia de seguridad de un host comprometido. Finalmente,
el paso de contención a largo plazo es eliminar cualquier puerta trasera o malware para devolver el dispositivo a la producción. A
1) El paso 1 es una referencia de trabajo de la biblioteca. La dirección IP del nodo de destino pasa a
Trabajo de biblioteca "Biblioteca / IR / Nodo aislado". El trabajo Aislar nodo actualizará las reglas del firewall para
2) El paso 2 realiza una instantánea del nodo desde el servidor de respaldo. El trabajo de la biblioteca
"Library / IR / Snapshot Node" ejecuta un script de instantánea para el nombre de host dado.
3) El paso 3 usa una ruta de script "file: /// ir / cleanup / $ {option.Incident_ID} .sh" para hacer referencia
un script único para esta limpieza de incidentes. La ruta se expandirá a la ubicación del sistema de archivos en Rundeck
como "/ir/cleanup/inc50298.sh". En este script hay comandos de contención únicos para este incidente. Ejecutar el
trabajo con un script vacío está bien si los pasos completos de limpieza no están listos.
4. Conclusión
Rundeck proporciona una interfaz fácil de usar para programar y ejecutar comandos en un inventario dinámico de dispositivos. El
acceso centralizado y sin agentes a dispositivos de red, servidores Windows, máquinas virtuales Linux e instancias en la nube es muy
poderoso para desarrolladores, administradores y equipos de seguridad por igual. Todos los equipos se benefician de una mayor
visibilidad del historial de ejecución, el registro y la programación centralizada de tareas. La coordinación entre los equipos de
seguridad y los equipos de DevOps ha mejorado la colaboración con el control de acceso y la gestión de claves.
Sin embargo, un único punto de acceso para los sistemas también es un objetivo clave para los intrusos. La protección de este
acceso comienza con el endurecimiento de Rundeck usando TLS y los cambios de permisos. Un enfoque común para el trabajo y el
diseño de ACL garantiza el acceso correcto, pero aún es ágil, para entornos modernos. Mantener roles claros y asignaciones de
A medida que los equipos adoptan Rundeck para las tareas diarias, el historial de esas tareas se vuelve más valioso para los
auditores y los respondedores de incidentes. Además, las ejecuciones fuera de Rundeck se destacan para una posible
investigación. Rundeck en sí es útil durante la respuesta a incidentes para recopilar información y contención. Los equipos de
seguridad pueden etiquetar rápidamente los nodos comprometidos y ejecutar trabajos de detección y contención específicos. Este
enfoque funciona con otras herramientas y scripts. Sin embargo, las características integradas en Rundeck hacen una solución
Referencias
Blog tecnológico de Oyster.com. (2016, 7 de marzo). Rundeck vs. Crontab: ¿Por qué ganó Rundeck?
https://commons.apache.org/proper/commons-
Controles críticos de seguridad para una defensa cibernética efectiva. ( 2015, 15 de octubre). El Centro de Seguridad de Internet,
https://www.cisecurity.org/critical-controls/
Dobbertin, H. (1996). El estado de MD5 después de un ataque reciente. CryptoBytes, 2 (2), 1-6.
Recuperado de ftp://ftp.arnes.si/packages/cryptotools/rsa.com/cryptobytes/crypto2n2.pdf.gz
Edwards, D. (29 de agosto de 2014). Creciente popularidad de las funciones del planificador de trabajos de Rundeck.
http://csrc.nist.gov/publications/nistir/7316/NISTIR-7316.pdf
https://www.eclipse.org/jetty/documentation/9.3.x/configuring-security-securepasswords.html
Código fuente del embarcadero, Password.java. ( 2016, 9 de febrero). Recuperado el 28 de julio de 2016 de
de https://www.sans.org/reading-room/whitepapers/incident/incident-handlershandbook-33901
Lawler, E. (2015, abril). ¿DevOps está rompiendo su empresa? Consultado el 15 de julio de 2016,
de https://www.rsaconference.com/writable/presentations/file_upload/asd-w02is-devops-breaking-your-company.pdf
http://web.ornl.gov/~webworks/cppr/y2001/pres/117259.pdf
Guía del administrador de Rundeck. (10 de junio de 2016). Recuperado el 28 de julio de 2016 de
http://rundeck.org/docs/administration/index.html
Schneier, B. (19 de noviembre de 1999). Una súplica por la simplicidad. Recuperado el 28 de julio de 2016 de
https://www.schneier.com/essays/archives/1999/11/a_plea_for_simplicit.html
Schueler, G. (2015, 16 de abril). Base de datos preferida para Rundeck. Julio recuperado
Prácticas para asegurar los sistemas de tecnología de la información. Recuperado el 12 de julio de 2016 de http://csrc.nist.gov/publications/nist