[{"data":1,"prerenderedAt":753},["ShallowReactive",2],{"navigation_docs_es":3,"-es-installation-security-requirements":435,"-es-installation-security-requirements-surround":748},[4,25,83,133,247,262,332,369,415],{"title":5,"path":6,"stem":7,"children":8,"page":24},"Getting Started","\u002Fes\u002Fgetting-started","es\u002F1.getting-started",[9,14,19],{"title":10,"path":11,"stem":12,"icon":13},"Introducción","\u002Fes\u002Fgetting-started\u002Fintroduction","es\u002F1.getting-started\u002F1.introduction","i-lucide-house",{"title":15,"path":16,"stem":17,"icon":18},"Quickstart","\u002Fes\u002Fgetting-started\u002Fquickstart","es\u002F1.getting-started\u002F2.quickstart","i-lucide-rocket",{"title":20,"path":21,"stem":22,"icon":23},"Conceptos","\u002Fes\u002Fgetting-started\u002Fconcepts","es\u002F1.getting-started\u002F3.concepts","i-lucide-book-open",false,{"title":26,"path":27,"stem":28,"children":29,"page":24},"Live Production","\u002Fes\u002Flive-production","es\u002F2.live-production",[30,35,55,69],{"title":31,"path":32,"stem":33,"icon":34},"On air","\u002Fes\u002Flive-production\u002Fon-air","es\u002F2.live-production\u002F1.on-air","i-lucide-radio",{"title":36,"path":37,"stem":38,"children":39,"page":24},"Live Streams","\u002Fes\u002Flive-production\u002Flive-streams","es\u002F2.live-production\u002F2.live-streams",[40,45,50],{"title":41,"path":42,"stem":43,"icon":44},"Overview","\u002Fes\u002Flive-production\u002Flive-streams\u002Foverview","es\u002F2.live-production\u002F2.live-streams\u002F1.overview","i-lucide-list",{"title":46,"path":47,"stem":48,"icon":49},"Options","\u002Fes\u002Flive-production\u002Flive-streams\u002Flive-stream-options","es\u002F2.live-production\u002F2.live-streams\u002F2.live-stream-options","i-lucide-file-text",{"title":51,"path":52,"stem":53,"icon":54},"Inicio y parada","\u002Fes\u002Flive-production\u002Flive-streams\u002Fstart-stop","es\u002F2.live-production\u002F2.live-streams\u002F3.start-stop","i-lucide-play-circle",{"title":56,"path":57,"stem":58,"children":59,"page":24},"Scheduler","\u002Fes\u002Flive-production\u002Fscheduler","es\u002F2.live-production\u002F3.scheduler",[60,64],{"title":41,"path":61,"stem":62,"icon":63},"\u002Fes\u002Flive-production\u002Fscheduler\u002Foverview","es\u002F2.live-production\u002F3.scheduler\u002F1.overview","i-lucide-calendar-clock",{"title":65,"path":66,"stem":67,"icon":68},"Planned actions","\u002Fes\u002Flive-production\u002Fscheduler\u002Fplanned-actions","es\u002F2.live-production\u002F3.scheduler\u002F2.planned-actions","i-lucide-alarm-clock",{"title":70,"path":71,"stem":72,"children":73,"page":24},"Recordings","\u002Fes\u002Flive-production\u002Frecordings","es\u002F2.live-production\u002F4.recordings",[74,78],{"title":41,"path":75,"stem":76,"icon":77},"\u002Fes\u002Flive-production\u002Frecordings\u002Foverview","es\u002F2.live-production\u002F4.recordings\u002F1.overview","i-lucide-circle-dot",{"title":79,"path":80,"stem":81,"icon":82},"Editor","\u002Fes\u002Flive-production\u002Frecordings\u002Feditor","es\u002F2.live-production\u002F4.recordings\u002F2.editor","i-lucide-scissors",{"title":84,"path":85,"stem":86,"children":87,"page":24},"Configuration","\u002Fes\u002Fconfiguration","es\u002F3.configuration",[88,102,107,120],{"title":89,"path":90,"stem":91,"children":92,"page":24},"Devices","\u002Fes\u002Fconfiguration\u002Fdevices","es\u002F3.configuration\u002F1.devices",[93,97],{"title":89,"path":94,"stem":95,"icon":96},"\u002Fes\u002Fconfiguration\u002Fdevices\u002Fdevices","es\u002F3.configuration\u002F1.devices\u002F1.devices","i-lucide-server",{"title":98,"path":99,"stem":100,"icon":101},"Groups","\u002Fes\u002Fconfiguration\u002Fdevices\u002Fgroups","es\u002F3.configuration\u002F1.devices\u002F2.groups","i-lucide-network",{"title":103,"path":104,"stem":105,"icon":106},"Sources","\u002Fes\u002Fconfiguration\u002Fsources","es\u002F3.configuration\u002F2.sources","i-lucide-cable",{"title":108,"path":109,"stem":110,"children":111,"page":24},"Encodings","\u002Fes\u002Fconfiguration\u002Fencodings","es\u002F3.configuration\u002F3.encodings",[112,116],{"title":108,"path":113,"stem":114,"icon":115},"\u002Fes\u002Fconfiguration\u002Fencodings\u002Fprofiles","es\u002F3.configuration\u002F3.encodings\u002F1.profiles","i-lucide-sliders-horizontal",{"title":98,"path":117,"stem":118,"icon":119},"\u002Fes\u002Fconfiguration\u002Fencodings\u002Fgroups","es\u002F3.configuration\u002F3.encodings\u002F2.groups","i-lucide-layers",{"title":121,"path":122,"stem":123,"children":124,"page":24},"Destinations","\u002Fes\u002Fconfiguration\u002Fdestinations","es\u002F3.configuration\u002F4.destinations",[125,129],{"title":121,"path":126,"stem":127,"icon":128},"\u002Fes\u002Fconfiguration\u002Fdestinations\u002Fdestinations","es\u002F3.configuration\u002F4.destinations\u002F1.destinations","i-lucide-send",{"title":98,"path":130,"stem":131,"icon":132},"\u002Fes\u002Fconfiguration\u002Fdestinations\u002Fpublishing-groups","es\u002F3.configuration\u002F4.destinations\u002F2.publishing-groups","i-lucide-share-2",{"title":134,"path":135,"stem":136,"children":137,"page":24},"Settings","\u002Fes\u002Fsettings","es\u002F4.settings",[138,151,156,172,188],{"title":139,"path":140,"stem":141,"children":142,"page":24},"Users","\u002Fes\u002Fsettings\u002Fusers","es\u002F4.settings\u002F1.users",[143,147],{"title":139,"path":144,"stem":145,"icon":146},"\u002Fes\u002Fsettings\u002Fusers\u002Fusers","es\u002F4.settings\u002F1.users\u002F1.users","i-lucide-user",{"title":98,"path":148,"stem":149,"icon":150},"\u002Fes\u002Fsettings\u002Fusers\u002Fuser-groups","es\u002F4.settings\u002F1.users\u002F2.user-groups","i-lucide-users",{"title":152,"path":153,"stem":154,"icon":155},"Security","\u002Fes\u002Fsettings\u002Fsecurity","es\u002F4.settings\u002F2.security","i-lucide-shield",{"title":157,"icon":158,"path":159,"stem":160,"children":161,"page":24},"Assets","i-lucide-image","\u002Fes\u002Fsettings\u002Fassets","es\u002F4.settings\u002F3.assets",[162,167],{"title":163,"path":164,"stem":165,"icon":166},"Logos","\u002Fes\u002Fsettings\u002Fassets\u002Flogos","es\u002F4.settings\u002F3.assets\u002F1.logos","i-lucide-images",{"title":168,"path":169,"stem":170,"icon":171},"Files","\u002Fes\u002Fsettings\u002Fassets\u002Ffiles","es\u002F4.settings\u002F3.assets\u002F2.files","i-lucide-clapperboard",{"title":173,"icon":174,"path":175,"stem":176,"children":177,"page":24},"External Storage","i-lucide-folder-cog","\u002Fes\u002Fsettings\u002Fexternal-storage","es\u002F4.settings\u002F4.external-storage",[178,183],{"title":179,"path":180,"stem":181,"icon":182},"Remote Folders","\u002Fes\u002Fsettings\u002Fexternal-storage\u002Fremote-folders","es\u002F4.settings\u002F4.external-storage\u002F1.remote-folders","i-lucide-folder-archive",{"title":184,"path":185,"stem":186,"icon":187},"Target Folders","\u002Fes\u002Fsettings\u002Fexternal-storage\u002Ftarget-folders","es\u002F4.settings\u002F4.external-storage\u002F2.target-folders","i-lucide-folder-up",{"title":189,"path":190,"stem":191,"children":192,"page":24},"Integrations","\u002Fes\u002Fsettings\u002Fintegrations","es\u002F4.settings\u002F5.integrations",[193,197,202,216],{"title":41,"path":194,"stem":195,"icon":196},"\u002Fes\u002Fsettings\u002Fintegrations\u002Foverview","es\u002F4.settings\u002F5.integrations\u002F1.overview","i-lucide-plug",{"title":198,"path":199,"stem":200,"icon":201},"MediaCopilot","\u002Fes\u002Fsettings\u002Fintegrations\u002Fmediacopilot","es\u002F4.settings\u002F5.integrations\u002F2.mediacopilot","i-lucide-sparkles",{"title":203,"icon":204,"path":205,"stem":206,"children":207,"page":24},"C21 Live Cloud","i-lucide-cloud","\u002Fes\u002Fsettings\u002Fintegrations\u002Fc21livecloud","es\u002F4.settings\u002F5.integrations\u002F3.c21livecloud",[208,211],{"title":41,"path":209,"stem":210,"icon":204},"\u002Fes\u002Fsettings\u002Fintegrations\u002Fc21livecloud\u002Foverview","es\u002F4.settings\u002F5.integrations\u002F3.c21livecloud\u002F1.overview",{"title":212,"path":213,"stem":214,"icon":215},"Accounts","\u002Fes\u002Fsettings\u002Fintegrations\u002Fc21livecloud\u002Faccounts","es\u002F4.settings\u002F5.integrations\u002F3.c21livecloud\u002F2.accounts","i-lucide-key-round",{"title":217,"icon":155,"path":218,"stem":219,"children":220,"page":24},"DRM Providers","\u002Fes\u002Fsettings\u002Fintegrations\u002Fdrm","es\u002F4.settings\u002F5.integrations\u002F4.drm",[221,225,229,233,237,242],{"title":41,"path":222,"stem":223,"icon":224},"\u002Fes\u002Fsettings\u002Fintegrations\u002Fdrm\u002Foverview","es\u002F4.settings\u002F5.integrations\u002F4.drm\u002F1.overview","i-lucide-shield-check",{"title":226,"path":227,"stem":228,"icon":155},"Widevine","\u002Fes\u002Fsettings\u002Fintegrations\u002Fdrm\u002Fwidevine","es\u002F4.settings\u002F5.integrations\u002F4.drm\u002F2.widevine",{"title":230,"path":231,"stem":232,"icon":155},"PlayReady","\u002Fes\u002Fsettings\u002Fintegrations\u002Fdrm\u002Fplayready","es\u002F4.settings\u002F5.integrations\u002F4.drm\u002F3.playready",{"title":234,"path":235,"stem":236,"icon":155},"FairPlay","\u002Fes\u002Fsettings\u002Fintegrations\u002Fdrm\u002Ffairplay","es\u002F4.settings\u002F5.integrations\u002F4.drm\u002F4.fairplay",{"title":238,"path":239,"stem":240,"icon":241},"Providers","\u002Fes\u002Fsettings\u002Fintegrations\u002Fdrm\u002Fproviders","es\u002F4.settings\u002F5.integrations\u002F4.drm\u002F5.providers","i-lucide-shield-half",{"title":243,"path":244,"stem":245,"icon":246},"Workflow","\u002Fes\u002Fsettings\u002Fintegrations\u002Fdrm\u002Fworkflow","es\u002F4.settings\u002F5.integrations\u002F4.drm\u002F6.workflow","i-lucide-workflow",{"title":248,"path":249,"stem":250,"children":251,"page":24},"System Status","\u002Fes\u002Fsystem-status","es\u002F5.system-status",[252,257],{"title":253,"path":254,"stem":255,"icon":256},"Commands","\u002Fes\u002Fsystem-status\u002Fcommands","es\u002F5.system-status\u002F1.commands","i-lucide-square-terminal",{"title":258,"path":259,"stem":260,"icon":261},"Logs","\u002Fes\u002Fsystem-status\u002Flogs","es\u002F5.system-status\u002F2.logs","i-lucide-scroll-text",{"title":263,"path":264,"stem":265,"children":266,"page":24},"How Tos","\u002Fes\u002Fhow-tos","es\u002F6.how-tos",[267,272,277,282,286,291,296,300,304,309,313,318,323,328],{"title":268,"path":269,"stem":270,"icon":271},"Arrancar y detener un Live stream","\u002Fes\u002Fhow-tos\u002Fstart-stream-via-api","es\u002F6.how-tos\u002F1.start-stream-via-api","i-lucide-terminal",{"title":273,"path":274,"stem":275,"icon":276},"Ingestar una emisión de YouTube Live","\u002Fes\u002Fhow-tos\u002Fingest-youtube-live","es\u002F6.how-tos\u002F10.ingest-youtube-live","i-lucide-youtube",{"title":278,"path":279,"stem":280,"icon":281},"Source Synchronized Encoding (SSE) — redundancia bit-idéntica","\u002Fes\u002Fhow-tos\u002Fsource-synchronized-encoding","es\u002F6.how-tos\u002F11.source-synchronized-encoding","i-lucide-copy-check",{"title":283,"path":284,"stem":285,"icon":34},"Emitir radio como vídeo","\u002Fes\u002Fhow-tos\u002Fbroadcast-radio-as-video","es\u002F6.how-tos\u002F12.broadcast-radio-as-video",{"title":287,"path":288,"stem":289,"icon":290},"Real Time streaming hacia Dolby Millicast","\u002Fes\u002Fhow-tos\u002Freal-time-streaming","es\u002F6.how-tos\u002F13.real-time-streaming","i-lucide-zap",{"title":292,"path":293,"stem":294,"icon":295},"Publicar en almacenamiento de objetos (S3, Azure Blob)","\u002Fes\u002Fhow-tos\u002Fpublish-to-object-storage","es\u002F6.how-tos\u002F14.publish-to-object-storage","i-lucide-database",{"title":297,"path":298,"stem":299,"icon":224},"Proteger un Live stream con multi-DRM","\u002Fes\u002Fhow-tos\u002Fmulti-drm-destination","es\u002F6.how-tos\u002F2.multi-drm-destination",{"title":301,"path":302,"stem":303,"icon":63},"Programar una emisión semanal recurrente","\u002Fes\u002Fhow-tos\u002Fweekly-recurring-broadcast","es\u002F6.how-tos\u002F3.weekly-recurring-broadcast",{"title":305,"path":306,"stem":307,"icon":308},"Cortar un clip en el Editor y enviarlo a MediaCopilot","\u002Fes\u002Fhow-tos\u002Fexport-recording-to-mediacopilot","es\u002F6.how-tos\u002F4.export-recording-to-mediacopilot","i-lucide-upload-cloud",{"title":310,"path":311,"stem":312,"icon":158},"Aplicar un logo a un Live stream en emisión","\u002Fes\u002Fhow-tos\u002Fapply-logo-overlay","es\u002F6.how-tos\u002F5.apply-logo-overlay",{"title":314,"path":315,"stem":316,"icon":317},"Hacer blackout o sustituir el programa de un Live stream","\u002Fes\u002Fhow-tos\u002Fbroadcast-blackout","es\u002F6.how-tos\u002F6.broadcast-blackout","i-lucide-square",{"title":319,"path":320,"stem":321,"icon":322},"Cambiar la fuente de un Live stream en emisión","\u002Fes\u002Fhow-tos\u002Fruntime-source-switch","es\u002F6.how-tos\u002F7.runtime-source-switch","i-lucide-repeat-2",{"title":324,"path":325,"stem":326,"icon":327},"Activar \u002F desactivar un Publishing en mitad de la emisión","\u002Fes\u002Fhow-tos\u002Ftoggle-publishing-mid-broadcast","es\u002F6.how-tos\u002F8.toggle-publishing-mid-broadcast","i-lucide-toggle-right",{"title":329,"path":330,"stem":331,"icon":34},"Contribuir una señal en directo a MediaCopilot Live","\u002Fes\u002Fhow-tos\u002Fcontribute-to-mediacopilot-live","es\u002F6.how-tos\u002F9.contribute-to-mediacopilot-live",{"title":333,"path":334,"stem":335,"children":336,"page":24},"Installation","\u002Fes\u002Finstallation","es\u002F7.installation",[337,342,347,352,357,361,365],{"title":338,"path":339,"stem":340,"icon":341},"Preparar el host","\u002Fes\u002Finstallation\u002Fprepare-host","es\u002F7.installation\u002F1.prepare-host","i-lucide-server-cog",{"title":343,"path":344,"stem":345,"icon":346},"Instalar C21 Live Control","\u002Fes\u002Finstallation\u002Fcontrol","es\u002F7.installation\u002F2.control","i-lucide-cloud-download",{"title":348,"path":349,"stem":350,"icon":351},"Instalar C21 Live Encoder","\u002Fes\u002Finstallation\u002Fencoder","es\u002F7.installation\u002F3.encoder","i-lucide-cpu",{"title":353,"path":354,"stem":355,"icon":356},"Actualizaciones","\u002Fes\u002Finstallation\u002Fupdates","es\u002F7.installation\u002F4.updates","i-lucide-refresh-cw",{"title":358,"path":359,"stem":360,"icon":215},"Licencias","\u002Fes\u002Finstallation\u002Flicenses","es\u002F7.installation\u002F5.licenses",{"title":362,"path":363,"stem":364,"icon":96},"Instalar C21 Live Control y C21 Live Encoder en un único host","\u002Fes\u002Finstallation\u002Fcontrol-and-encoder-same-host","es\u002F7.installation\u002F6.control-and-encoder-same-host",{"title":366,"path":367,"stem":368,"icon":224},"Requisitos de seguridad del despliegue","\u002Fes\u002Finstallation\u002Fsecurity-requirements","es\u002F7.installation\u002F7.security-requirements",{"title":370,"path":371,"stem":372,"children":373,"page":24},"Developers","\u002Fes\u002Fdevelopers","es\u002F8.developers",[374,378,396],{"title":41,"path":375,"stem":376,"icon":377},"\u002Fes\u002Fdevelopers\u002Foverview","es\u002F8.developers\u002F1.overview","i-lucide-code",{"title":379,"icon":377,"path":380,"stem":381,"children":382,"page":24},"API","\u002Fes\u002Fdevelopers\u002Fapi","es\u002F8.developers\u002F2.api",[383,386,391],{"title":41,"path":384,"stem":385,"icon":377},"\u002Fes\u002Fdevelopers\u002Fapi\u002Foverview","es\u002F8.developers\u002F2.api\u002F1.overview",{"title":387,"path":388,"stem":389,"icon":390},"Autenticación","\u002Fes\u002Fdevelopers\u002Fapi\u002Fauthentication","es\u002F8.developers\u002F2.api\u002F2.authentication","i-lucide-key",{"title":392,"path":393,"stem":394,"icon":395},"Paginación y errores","\u002Fes\u002Fdevelopers\u002Fapi\u002Fpagination-errors","es\u002F8.developers\u002F2.api\u002F3.pagination-errors","i-lucide-list-ordered",{"title":397,"icon":398,"path":399,"stem":400,"children":401,"page":24},"MCP Server","i-lucide-bot","\u002Fes\u002Fdevelopers\u002Fmcp-server","es\u002F8.developers\u002F3.mcp-server",[402,405,410],{"title":41,"path":403,"stem":404,"icon":398},"\u002Fes\u002Fdevelopers\u002Fmcp-server\u002Foverview","es\u002F8.developers\u002F3.mcp-server\u002F1.overview",{"title":406,"path":407,"stem":408,"icon":409},"Tools","\u002Fes\u002Fdevelopers\u002Fmcp-server\u002Ftools","es\u002F8.developers\u002F3.mcp-server\u002F2.tools","i-lucide-wrench",{"title":411,"path":412,"stem":413,"icon":414},"Examples","\u002Fes\u002Fdevelopers\u002Fmcp-server\u002Fexamples","es\u002F8.developers\u002F3.mcp-server\u002F3.examples","i-lucide-play",{"title":416,"path":417,"stem":418,"children":419,"page":24},"Resources","\u002Fes\u002Fresources","es\u002F9.resources",[420,425,430],{"title":421,"path":422,"stem":423,"icon":424},"Enlaces","\u002Fes\u002Fresources\u002Flinks","es\u002F9.resources\u002F1.links","i-lucide-link",{"title":426,"path":427,"stem":428,"icon":429},"Release Notes","\u002Fes\u002Fresources\u002Frelease-notes","es\u002F9.resources\u002F2.release-notes","i-lucide-clipboard-list",{"title":431,"path":432,"stem":433,"icon":434},"Glosario","\u002Fes\u002Fresources\u002Fglossary","es\u002F9.resources\u002F3.glossary","i-lucide-book-a",{"id":436,"title":366,"body":437,"description":741,"extension":742,"links":743,"meta":744,"navigation":745,"path":367,"seo":746,"stem":368,"__hash__":747},"docs_es\u002Fes\u002F7.installation\u002F7.security-requirements.md",{"type":438,"value":439,"toc":725},"minimark",[440,448,453,456,506,509,513,520,525,528,532,535,539,551,555,558,562,602,606,612,629,633,696,700],[441,442,443,447],"p",{},[444,445,446],"strong",{},"C21 Live Control"," guarda los valores que le permiten emitir en tu nombre. Protegerlos es un trabajo compartido: el producto cifra sus backups y no devuelve las credenciales guardadas a través de la API ni del asistente; el host que ejecuta el producto lo tiene que proteger quien lo despliega. Esta página lista lo que el despliegue debe garantizar antes de meter credenciales de producción en Live Control.",[449,450,452],"h2",{"id":451},"qué-guarda-live-control-que-es-sensible","Qué guarda Live Control que es sensible",[441,454,455],{},"Live Control guarda estos valores tal como los usa, sin cifrarlos campo a campo: el encoder envía al proveedor la stream key, no un hash de ella. Por eso la protección se aplica al host en conjunto y no a cada valor.",[457,458,459,472],"table",{},[460,461,462],"thead",{},[463,464,465,469],"tr",{},[466,467,468],"th",{},"Elemento",[466,470,471],{},"Qué contiene",[473,474,475,486,496],"tbody",{},[463,476,477,483],{},[478,479,480],"td",{},[444,481,482],{},"Base de datos de configuración",[478,484,485],{},"Stream keys de los destinos de publicación (YouTube, Twitch y el resto de proveedores RTMP), credenciales de destinos de almacenamiento de objetos (S3, Azure Blob Storage), Remote Folders (NFS, WebDAV) y Target Folders (FTP, SFTP, S3), passphrases SRT de Channels y destinos, claves de cifrado y credenciales de DRM providers, y claves de integraciones.",[463,487,488,493],{},[478,489,490],{},[444,491,492],{},"Backups",[478,494,495],{},"Un dump de esa base de datos más la configuración de la instalación, cifrado. Todo lo que contiene la base de datos está en cada backup.",[463,497,498,503],{},[478,499,500],{},[444,501,502],{},"Configuración de la instalación",[478,504,505],{},"Passwords de los servicios, la clave que cifra los backups, las credenciales iniciales y la clave privada TLS. Viven bajo el directorio de instalación del host, legibles solo por root.",[441,507,508],{},"Quien pueda leer el disco del host, el directorio de instalación o un backup junto con su clave puede emitir en tus canales y llegar a tu almacenamiento. Trata el host como un activo sensible.",[449,510,512],{"id":511},"requisitos","Requisitos",[441,514,515,516,519],{},"El despliegue ",[444,517,518],{},"debe"," cumplir los cuatro. El instalador no comprueba ninguno: son decisiones sobre el host, tomadas antes de instalar Live Control.",[521,522,524],"h3",{"id":523},"cifrado-de-disco-del-host","Cifrado de disco del host",[441,526,527],{},"Cifra los volúmenes que alojan el directorio de instalación, los volúmenes de datos y el directorio de backups: LUKS en un host físico o virtual, o el cifrado de volumen de tu proveedor cloud (volúmenes EBS cifrados, Azure disk encryption y similares). El cifrado en reposo es lo que protege la base de datos cuando un disco, un snapshot o una máquina dada de baja sale de tu control. Actívalo antes de ejecutar el instalador: el instalador no cifra el disco.",[521,529,531],{"id":530},"acceso-al-host-restringido-a-administradores","Acceso al host restringido a administradores",[441,533,534],{},"Al host solo entran las personas que administran la plataforma, cada una con su propia cuenta y una clave SSH: sin login por password y sin cuentas compartidas. Quien tiene root en el host puede leer la base de datos y la clave de los backups, así que el acceso al host equivale a tener todas las stream keys. Mantén la lista de administradores del host tan corta como la lista de System Administrators de Live Control.",[521,536,538],{"id":537},"la-base-de-datos-no-se-expone-fuera-del-host","La base de datos no se expone fuera del host",[441,540,541,542,546,547,550],{},"El instalador deja la base de datos en la red Docker interna del stack y no publica su puerto. No publiques el puerto de la base de datos, no apuntes clientes de base de datos remotos a ella y no la abras a otros hosts para informes. Todo lo que necesita los datos llega a ellos a través de la API de Live Control. Recuerda que los puertos que publica Docker no los filtra ",[543,544,545],"code",{},"ufw"," (consulta ",[548,549,338],"a",{"href":339},").",[521,552,554],{"id":553},"las-copias-de-los-backups-fuera-del-host-se-guardan-cifradas-y-con-acceso-restringido","Las copias de los backups fuera del host se guardan cifradas y con acceso restringido",[441,556,557],{},"Los backups se cifran en el host con una clave que vive en la configuración de la instalación. Si los copias a otro sitio (un almacenamiento de objetos, un servidor de backups, una bóveda), mantenlos cifrados, guarda esa clave aparte de las copias y restringe quién puede leerlas, con las mismas reglas que el propio host. Un backup más su clave es la base de datos entera.",[449,559,561],{"id":560},"lo-que-el-producto-ya-hace","Lo que el producto ya hace",[563,564,565,576,586],"ul",{},[566,567,568,571,572,575],"li",{},[444,569,570],{},"Los backups automáticos van cifrados."," El instalador programa un backup diario, cifrado con AES-256, con 7 días de retención por defecto. Consulta ",[548,573,492],{"href":574},"\u002Fes\u002Finstallation\u002Fcontrol#backups"," en la página de instalación de Control.",[566,577,578,581,582,585],{},[444,579,580],{},"Los ficheros de la instalación solo los lee root."," La configuración, las credenciales iniciales, la clave privada TLS y el directorio de backups se crean con permisos restringidos, y el CLI se ejecuta con ",[543,583,584],{},"sudo",".",[566,587,588,591,592,595,596,598,599,585],{},[444,589,590],{},"Las credenciales guardadas no se devuelven."," La API devuelve el centinela ",[543,593,594],{},"••••••••"," en lugar de una credencial guardada de un destino (los Target Folders solo informan de si hay password), y el servidor MCP entrega al asistente una huella de la stream key en vez de su valor. Consulta ",[548,597,121],{"href":126}," y ",[548,600,601],{"href":407},"Herramientas MCP",[449,603,605],{"id":604},"recomendaciones","Recomendaciones",[441,607,515,608,611],{},[444,609,610],{},"debería"," además:",[563,613,614,620],{},[566,615,616,619],{},[444,617,618],{},"Rotar las stream keys"," de todos los destinos si un host, una imagen de disco o un backup pueden haberse expuesto. YouTube, Twitch y el resto de proveedores permiten resetear la clave desde su estudio; después actualiza el destino en Live Control.",[566,621,622,625,626,628],{},[444,623,624],{},"Revisar periódicamente quién tiene el rol System Administrator"," en ",[548,627,139],{"href":144},", junto con los API tokens emitidos a esas cuentas. Los administradores gestionan los destinos y sus credenciales; una cuenta de administrador sin uso es un riesgo permanente.",[449,630,632],{"id":631},"responsabilidad-compartida","Responsabilidad compartida",[457,634,635,645],{},[460,636,637],{},[463,638,639,642],{},[466,640,641],{},"Cires21 (el producto)",[466,643,644],{},"Tú (el despliegue)",[473,646,647,655,663,671,679,689],{},[463,648,649,652],{},[478,650,651],{},"Cifra los backups automáticos y los mantiene en el host.",[478,653,654],{},"Cifra los discos del host antes de instalar.",[463,656,657,660],{},[478,658,659],{},"Crea los ficheros de la instalación con permisos solo para root.",[478,661,662],{},"Restringe el acceso al host a administradores con nombre y clave SSH.",[463,664,665,668],{},[478,666,667],{},"Mantiene la base de datos en la red interna del stack y expone los datos solo a través de la API.",[478,669,670],{},"Mantiene cerrado el puerto de la base de datos y filtra los puertos publicados.",[463,672,673,676],{},[478,674,675],{},"No devuelve las credenciales guardadas a través de la API ni del asistente.",[478,677,678],{},"Protege cada copia de un backup fuera del host como protege el host.",[463,680,681,684],{},[478,682,683],{},"Publica las correcciones de seguridad como actualizaciones del producto.",[478,685,686,687,550],{},"Aplica las actualizaciones del producto y las de seguridad del sistema operativo del host (consulta ",[548,688,353],{"href":354},[463,690,691,693],{},[478,692],{},[478,694,695],{},"Rota las claves tras una exposición y revisa la lista de administradores.",[449,697,699],{"id":698},"cross-links","Cross-links",[563,701,702,710,715,720],{},[566,703,704,706,707,709],{},[548,705,338],{"href":339}," — DNS, NTP, ",[543,708,545],{},", swap antes del install.",[566,711,712,714],{},[548,713,343],{"href":344}," — backups, SSL y los comandos de seguridad del CLI.",[566,716,717,719],{},[548,718,139],{"href":144}," — roles y API tokens.",[566,721,722,724],{},[548,723,152],{"href":153}," — sesiones, bloqueo y política de passwords de la instancia.",{"title":726,"searchDepth":727,"depth":727,"links":728},"",2,[729,730,737,738,739,740],{"id":451,"depth":727,"text":452},{"id":511,"depth":727,"text":512,"children":731},[732,734,735,736],{"id":523,"depth":733,"text":524},3,{"id":530,"depth":733,"text":531},{"id":537,"depth":733,"text":538},{"id":553,"depth":733,"text":554},{"id":560,"depth":727,"text":561},{"id":604,"depth":727,"text":605},{"id":631,"depth":727,"text":632},{"id":698,"depth":727,"text":699},"Qué guarda C21 Live Control que es sensible y qué debe garantizar el host que lo ejecuta — cifrado de disco, acceso restringido, una base de datos que no sale del host y copias de backups cifradas.","md",null,{},{"icon":224},{"title":366,"description":741},"Y6Chf37YvuyLfkXB1gY9qW3-fZxY_tMOWdXhbKagTTI",[749,751],{"title":362,"path":363,"stem":364,"description":750,"icon":96,"children":-1},"Ejecuta C21 Live Control y C21 Live Encoder en un único host — reparto de puertos, orden de instalación, paso del Control al puerto 9443, licencias, certificado, firewall e impacto de las actualizaciones.",{"title":41,"path":375,"stem":376,"description":752,"icon":377,"children":-1},"Programa contra C21 Live Control — la REST API en \u002Fc21apiv2 y el servidor MCP, ambos tras un único bearer token.",1794309688829]