Actualizar contenido desde staging (ics53)
All checks were successful
Deploy Site / deploy (push) Successful in 38s
All checks were successful
Deploy Site / deploy (push) Successful in 38s
- Nuevo diseño dark theme estilo ICSManager - Contenido actualizado con narrativa problema/solución - Sección "Amplía tu departamento IT" para partners - Stack tecnológico actualizado - Botones "Volver al inicio" eliminados - SEO: sitemap actualizado, indexación habilitada 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
parent
b277103d9d
commit
6391ce55f0
|
|
@ -1,45 +1,100 @@
|
|||
/* DO CLOUD Brand Colors - Oficial */
|
||||
/* ============================================
|
||||
DOCLOUD - Dark Theme (ICSManager Style)
|
||||
============================================ */
|
||||
|
||||
/* Variables del tema */
|
||||
:root {
|
||||
--primary-color: #0A6CFF;
|
||||
--primary-dark: #0856CC;
|
||||
--primary-gradient: linear-gradient(135deg, #0A6CFF, #1FD1C3);
|
||||
--turquoise: #1FD1C3;
|
||||
--dark-blue: #0B1E3B;
|
||||
--light-gray: #F2F4F7;
|
||||
--link-color: #0856CC;
|
||||
--link-hover: #0A6CFF;
|
||||
/* Colores base - estilo ICSManager */
|
||||
--bg-primary: #1a1f2e;
|
||||
--bg-secondary: #252b3b;
|
||||
--bg-tertiary: #2d3548;
|
||||
--bg-card: rgba(55, 65, 81, 0.5);
|
||||
--text-primary: #e5e7eb;
|
||||
--text-secondary: #d1d5db;
|
||||
--text-muted: #9ca3af;
|
||||
--accent-blue: #2299dd;
|
||||
--accent-green: #10b981;
|
||||
--accent-red: #dc2626;
|
||||
--accent-yellow: #f59e0b;
|
||||
--border-color: #4b5563;
|
||||
--border-light: #374151;
|
||||
--link-color: #2299dd;
|
||||
--link-hover: #3baaee;
|
||||
--header-bg: #111827;
|
||||
--cta-bg: #2299dd;
|
||||
--cta-hover: #1d88c9;
|
||||
--input-bg: #374151;
|
||||
}
|
||||
|
||||
/* Modo claro (alto contraste) */
|
||||
[data-theme="light"] {
|
||||
--bg-primary: #f3f4f6;
|
||||
--bg-secondary: #ffffff;
|
||||
--bg-tertiary: #e5e7eb;
|
||||
--bg-card: rgba(255, 255, 255, 0.9);
|
||||
--text-primary: #111827;
|
||||
--text-secondary: #374151;
|
||||
--text-muted: #6b7280;
|
||||
--border-color: #d1d5db;
|
||||
--border-light: #e5e7eb;
|
||||
--header-bg: #ffffff;
|
||||
--input-bg: #f9fafb;
|
||||
}
|
||||
|
||||
/* ============================================
|
||||
OCULTAR SIDEBAR IZQUIERDO (navegacion)
|
||||
BASE
|
||||
============================================ */
|
||||
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap');
|
||||
|
||||
* {
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
html {
|
||||
scroll-behavior: smooth;
|
||||
}
|
||||
|
||||
body {
|
||||
font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
|
||||
background-color: var(--bg-primary);
|
||||
color: var(--text-primary);
|
||||
line-height: 1.6;
|
||||
font-size: 16px;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
min-height: 100vh;
|
||||
}
|
||||
|
||||
/* ============================================
|
||||
OCULTAR ELEMENTOS DE DOCMD
|
||||
============================================ */
|
||||
.sidebar-nav,
|
||||
nav.sidebar-nav {
|
||||
display: none !important;
|
||||
}
|
||||
|
||||
/* ============================================
|
||||
OCULTAR TOC DERECHO (On This Page)
|
||||
============================================ */
|
||||
nav.sidebar-nav,
|
||||
.toc-sidebar,
|
||||
.toc-container,
|
||||
.toc-list,
|
||||
div.toc-sidebar {
|
||||
display: none !important;
|
||||
width: 0 !important;
|
||||
}
|
||||
|
||||
/* ============================================
|
||||
OCULTAR FOOTER DE DOCMD
|
||||
============================================ */
|
||||
div.toc-sidebar,
|
||||
.page-footer,
|
||||
.branding-footer,
|
||||
footer.page-footer {
|
||||
footer.page-footer,
|
||||
.sidebar-menu-button,
|
||||
.sidebar .mobile-view,
|
||||
.sidebar-header h1,
|
||||
.sidebar h1 {
|
||||
display: none !important;
|
||||
}
|
||||
|
||||
/* Ocultar primera línea horizontal (frontmatter) */
|
||||
.content > hr:first-child,
|
||||
.main-content > hr:first-child,
|
||||
article > hr:first-child,
|
||||
.content-area > hr:first-child,
|
||||
.main-content article > hr:first-child {
|
||||
display: none !important;
|
||||
}
|
||||
|
||||
/* ============================================
|
||||
MOSTRAR HEADER CON LOGO
|
||||
HEADER
|
||||
============================================ */
|
||||
.sidebar {
|
||||
position: fixed !important;
|
||||
|
|
@ -47,12 +102,12 @@ footer.page-footer {
|
|||
left: 0 !important;
|
||||
right: 0 !important;
|
||||
width: 100% !important;
|
||||
height: 70px !important;
|
||||
background: white !important;
|
||||
box-shadow: none !important;
|
||||
height: 64px !important;
|
||||
background: var(--header-bg) !important;
|
||||
border-bottom: 1px solid var(--border-color) !important;
|
||||
display: flex !important;
|
||||
align-items: center !important;
|
||||
padding: 0 30px !important;
|
||||
padding: 0 24px !important;
|
||||
z-index: 1000 !important;
|
||||
}
|
||||
|
||||
|
|
@ -63,30 +118,24 @@ footer.page-footer {
|
|||
width: 100% !important;
|
||||
height: 100% !important;
|
||||
border-bottom: none !important;
|
||||
padding-bottom: 0 !important;
|
||||
margin-bottom: 0 !important;
|
||||
padding: 0 !important;
|
||||
margin: 0 !important;
|
||||
}
|
||||
|
||||
.sidebar-header .logo-link {
|
||||
display: flex !important;
|
||||
align-items: center !important;
|
||||
}
|
||||
|
||||
/* Ocultar título DO CLOUD del header */
|
||||
.sidebar-header h1,
|
||||
.sidebar h1 {
|
||||
display: none !important;
|
||||
gap: 12px;
|
||||
}
|
||||
|
||||
.sidebar-header .logo-link img {
|
||||
max-height: 45px !important;
|
||||
max-height: 40px !important;
|
||||
width: auto !important;
|
||||
filter: brightness(0) invert(1);
|
||||
}
|
||||
|
||||
/* Ocultar elementos innecesarios del sidebar */
|
||||
.sidebar-menu-button,
|
||||
.sidebar .mobile-view {
|
||||
display: none !important;
|
||||
[data-theme="light"] .sidebar-header .logo-link img {
|
||||
filter: none;
|
||||
}
|
||||
|
||||
/* ============================================
|
||||
|
|
@ -95,206 +144,282 @@ footer.page-footer {
|
|||
.main-content,
|
||||
main.content,
|
||||
.content-wrapper,
|
||||
.page-container {
|
||||
.page-container,
|
||||
.main-content-wrapper {
|
||||
margin-left: 0 !important;
|
||||
margin-right: 0 !important;
|
||||
padding-top: 90px !important;
|
||||
padding-top: 64px !important;
|
||||
max-width: 100% !important;
|
||||
width: 100% !important;
|
||||
background: var(--bg-primary) !important;
|
||||
}
|
||||
|
||||
.content,
|
||||
.main-content article {
|
||||
max-width: 900px;
|
||||
.main-content article,
|
||||
.content-area {
|
||||
max-width: 960px;
|
||||
margin: 0 auto;
|
||||
padding: 20px 40px;
|
||||
padding: 48px 24px;
|
||||
}
|
||||
|
||||
/* ============================================
|
||||
TIPOGRAFIA
|
||||
TIPOGRAFÍA
|
||||
============================================ */
|
||||
body {
|
||||
font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
|
||||
h1, h2, h3, h4, h5, h6 {
|
||||
font-family: 'Inter', sans-serif;
|
||||
color: var(--text-primary);
|
||||
font-weight: 600;
|
||||
margin-top: 2em;
|
||||
margin-bottom: 0.75em;
|
||||
line-height: 1.3;
|
||||
}
|
||||
|
||||
h1 {
|
||||
font-size: 2.25rem;
|
||||
font-weight: 700;
|
||||
margin-top: 0;
|
||||
}
|
||||
|
||||
h2 {
|
||||
font-size: 1.5rem;
|
||||
color: var(--text-primary);
|
||||
padding-bottom: 0.5em;
|
||||
border-bottom: 1px solid var(--border-light);
|
||||
}
|
||||
|
||||
h3 {
|
||||
font-size: 1.25rem;
|
||||
color: var(--text-secondary);
|
||||
}
|
||||
|
||||
p {
|
||||
margin: 1em 0;
|
||||
color: var(--text-secondary);
|
||||
}
|
||||
|
||||
strong {
|
||||
color: var(--text-primary);
|
||||
font-weight: 600;
|
||||
}
|
||||
|
||||
/* ============================================
|
||||
ENLACES CON CONTRASTE MEJORADO (WCAG AA)
|
||||
ENLACES
|
||||
============================================ */
|
||||
a {
|
||||
color: var(--link-color);
|
||||
text-decoration: underline;
|
||||
text-decoration-thickness: 1px;
|
||||
text-underline-offset: 2px;
|
||||
text-decoration: none;
|
||||
transition: color 0.2s ease;
|
||||
}
|
||||
|
||||
a:hover,
|
||||
a:focus {
|
||||
color: var(--dark-blue);
|
||||
text-decoration-thickness: 2px;
|
||||
color: var(--link-hover);
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
/* Enlaces en navegacion sin subrayado */
|
||||
nav a,
|
||||
.sidebar a,
|
||||
.logo-link {
|
||||
.logo-link,
|
||||
.header-login-btn {
|
||||
text-decoration: none !important;
|
||||
}
|
||||
|
||||
h1, h2, h3, h4 {
|
||||
color: var(--dark-blue);
|
||||
font-weight: 600;
|
||||
}
|
||||
|
||||
/* ============================================
|
||||
BOTONES CON GRADIENTE
|
||||
============================================ */
|
||||
a[style*="background:#0066cc"],
|
||||
a[style*="background:#28a745"],
|
||||
a[style*="background:#dc3545"],
|
||||
.btn-primary {
|
||||
background: var(--primary-gradient) !important;
|
||||
border: none !important;
|
||||
color: white !important;
|
||||
text-decoration: none !important;
|
||||
transition: all 0.3s ease;
|
||||
box-shadow: 0 4px 15px rgba(10, 108, 255, 0.3);
|
||||
}
|
||||
|
||||
a[style*="background:#0066cc"]:hover,
|
||||
a[style*="background:#28a745"]:hover,
|
||||
a[style*="background:#dc3545"]:hover,
|
||||
.btn-primary:hover {
|
||||
transform: translateY(-2px);
|
||||
box-shadow: 0 6px 20px rgba(10, 108, 255, 0.4);
|
||||
filter: brightness(1.1);
|
||||
}
|
||||
|
||||
a[style*="background:#6c757d"] {
|
||||
background: var(--dark-blue) !important;
|
||||
text-decoration: none !important;
|
||||
transition: all 0.3s ease;
|
||||
}
|
||||
|
||||
a[style*="background:#6c757d"]:hover {
|
||||
background: #1a3a5c !important;
|
||||
transform: translateY(-2px);
|
||||
}
|
||||
|
||||
/* ============================================
|
||||
TABLAS ESTILIZADAS
|
||||
============================================ */
|
||||
table {
|
||||
border-radius: 12px;
|
||||
overflow: hidden;
|
||||
box-shadow: 0 4px 20px rgba(11, 30, 59, 0.1);
|
||||
border-collapse: separate;
|
||||
border-spacing: 0;
|
||||
}
|
||||
|
||||
th {
|
||||
background: var(--primary-gradient) !important;
|
||||
color: white !important;
|
||||
font-weight: 600;
|
||||
padding: 15px;
|
||||
}
|
||||
|
||||
td {
|
||||
padding: 12px 15px;
|
||||
border-bottom: 1px solid var(--light-gray);
|
||||
}
|
||||
|
||||
tr:hover td {
|
||||
background: var(--light-gray);
|
||||
}
|
||||
|
||||
/* ============================================
|
||||
FOOTER PERSONALIZADO
|
||||
============================================ */
|
||||
div[align="center"]:last-of-type {
|
||||
border-top: 3px solid;
|
||||
border-image: var(--primary-gradient) 1;
|
||||
padding-top: 25px;
|
||||
margin-top: 50px;
|
||||
}
|
||||
|
||||
div[align="center"]:last-of-type a {
|
||||
color: var(--dark-blue);
|
||||
font-weight: 500;
|
||||
}
|
||||
|
||||
/* ============================================
|
||||
MODO OSCURO
|
||||
============================================ */
|
||||
[data-theme="dark"] .sidebar {
|
||||
background: #1a1a2e !important;
|
||||
}
|
||||
|
||||
[data-theme="dark"] {
|
||||
--dark-blue: #ffffff;
|
||||
--light-gray: #1a1a2e;
|
||||
--link-color: #5BA3FF;
|
||||
--link-hover: #8BC4FF;
|
||||
}
|
||||
|
||||
[data-theme="dark"] th {
|
||||
background: var(--primary-gradient) !important;
|
||||
}
|
||||
|
||||
/* ============================================
|
||||
BOTÓN LOGIN EN HEADER
|
||||
BOTÓN CTA - Acceso ICSManager
|
||||
============================================ */
|
||||
.header-login-btn {
|
||||
display: inline-flex !important;
|
||||
align-items: center;
|
||||
gap: 10px;
|
||||
background: var(--primary-gradient) !important;
|
||||
color: white !important;
|
||||
padding: 12px 28px !important;
|
||||
gap: 8px;
|
||||
background: var(--cta-bg) !important;
|
||||
color: #ffffff !important;
|
||||
padding: 10px 20px !important;
|
||||
border-radius: 8px;
|
||||
font-weight: 700;
|
||||
font-size: 15px;
|
||||
font-family: 'Inter', sans-serif;
|
||||
font-weight: 600;
|
||||
font-size: 14px;
|
||||
text-decoration: none !important;
|
||||
transition: all 0.3s ease;
|
||||
box-shadow: 0 4px 15px rgba(10, 108, 255, 0.35);
|
||||
transition: all 0.2s ease;
|
||||
border: none;
|
||||
cursor: pointer;
|
||||
letter-spacing: 0.3px;
|
||||
}
|
||||
|
||||
.header-login-btn:hover {
|
||||
transform: translateY(-3px);
|
||||
box-shadow: 0 6px 20px rgba(10, 108, 255, 0.5);
|
||||
filter: brightness(1.1);
|
||||
color: white !important;
|
||||
background: var(--cta-hover) !important;
|
||||
transform: translateY(-1px);
|
||||
box-shadow: 0 4px 12px rgba(34, 153, 221, 0.3);
|
||||
color: #ffffff !important;
|
||||
}
|
||||
|
||||
.header-login-btn:active {
|
||||
transform: translateY(-1px);
|
||||
.header-login-btn::before {
|
||||
content: none;
|
||||
}
|
||||
|
||||
.header-login-btn svg {
|
||||
width: 18px;
|
||||
height: 18px;
|
||||
fill: currentColor;
|
||||
display: none;
|
||||
}
|
||||
|
||||
/* ============================================
|
||||
BOTÓN FEEDBACK ZAMMAD (flotante)
|
||||
TOGGLE MODO CLARO/OSCURO
|
||||
============================================ */
|
||||
.theme-toggle-btn {
|
||||
background: var(--bg-card);
|
||||
border: 1px solid var(--border-color);
|
||||
color: var(--text-secondary);
|
||||
padding: 8px 12px;
|
||||
border-radius: 8px;
|
||||
cursor: pointer;
|
||||
font-size: 16px;
|
||||
transition: all 0.2s ease;
|
||||
margin-right: 12px;
|
||||
}
|
||||
|
||||
.theme-toggle-btn:hover {
|
||||
border-color: var(--accent-blue);
|
||||
background: var(--bg-tertiary);
|
||||
}
|
||||
|
||||
/* ============================================
|
||||
BLOQUES DE CÓDIGO
|
||||
============================================ */
|
||||
pre, code {
|
||||
font-family: ui-monospace, 'SF Mono', 'Fira Code', Consolas, monospace;
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
code {
|
||||
background: var(--bg-tertiary);
|
||||
color: var(--accent-blue);
|
||||
padding: 2px 8px;
|
||||
border-radius: 6px;
|
||||
border: 1px solid var(--border-light);
|
||||
}
|
||||
|
||||
pre {
|
||||
background: var(--bg-secondary);
|
||||
border: 1px solid var(--border-color);
|
||||
border-radius: 12px;
|
||||
padding: 20px;
|
||||
overflow-x: auto;
|
||||
}
|
||||
|
||||
pre code {
|
||||
background: none;
|
||||
border: none;
|
||||
padding: 0;
|
||||
color: var(--text-secondary);
|
||||
}
|
||||
|
||||
/* ============================================
|
||||
TABLAS
|
||||
============================================ */
|
||||
table {
|
||||
width: 100%;
|
||||
border-collapse: collapse;
|
||||
margin: 1.5em 0;
|
||||
font-size: 15px;
|
||||
background: var(--bg-secondary);
|
||||
border: 1px solid var(--border-color);
|
||||
border-radius: 12px;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
th {
|
||||
background: var(--bg-tertiary) !important;
|
||||
color: var(--text-primary) !important;
|
||||
font-weight: 600;
|
||||
padding: 14px 16px;
|
||||
text-align: left;
|
||||
border-bottom: 1px solid var(--border-color);
|
||||
font-size: 13px;
|
||||
text-transform: uppercase;
|
||||
letter-spacing: 0.5px;
|
||||
}
|
||||
|
||||
td {
|
||||
padding: 14px 16px;
|
||||
border-bottom: 1px solid var(--border-light);
|
||||
color: var(--text-secondary);
|
||||
}
|
||||
|
||||
tr:hover td {
|
||||
background: var(--bg-tertiary);
|
||||
}
|
||||
|
||||
tr:last-child td {
|
||||
border-bottom: none;
|
||||
}
|
||||
|
||||
/* ============================================
|
||||
CARDS / SECCIONES
|
||||
============================================ */
|
||||
.section-card {
|
||||
background: var(--bg-secondary);
|
||||
border: 1px solid var(--border-color);
|
||||
border-radius: 12px;
|
||||
padding: 24px;
|
||||
margin: 24px 0;
|
||||
}
|
||||
|
||||
/* ============================================
|
||||
LISTAS
|
||||
============================================ */
|
||||
ul, ol {
|
||||
padding-left: 1.5em;
|
||||
color: var(--text-secondary);
|
||||
}
|
||||
|
||||
li {
|
||||
margin: 0.5em 0;
|
||||
}
|
||||
|
||||
ul li::marker {
|
||||
color: var(--accent-blue);
|
||||
}
|
||||
|
||||
ol li::marker {
|
||||
color: var(--accent-blue);
|
||||
}
|
||||
|
||||
/* ============================================
|
||||
BLOCKQUOTES
|
||||
============================================ */
|
||||
blockquote {
|
||||
border-left: 4px solid var(--accent-blue);
|
||||
margin: 1.5em 0;
|
||||
padding: 16px 24px;
|
||||
background: var(--bg-secondary);
|
||||
border-radius: 0 12px 12px 0;
|
||||
color: var(--text-secondary);
|
||||
}
|
||||
|
||||
/* ============================================
|
||||
HR
|
||||
============================================ */
|
||||
hr {
|
||||
border: none;
|
||||
border-top: 1px solid var(--border-light);
|
||||
margin: 48px 0;
|
||||
}
|
||||
|
||||
/* ============================================
|
||||
BOTÓN CONTACTAR (Zammad)
|
||||
============================================ */
|
||||
#zammad-feedback-form {
|
||||
position: fixed;
|
||||
bottom: 20px;
|
||||
right: 20px;
|
||||
background: var(--primary-gradient);
|
||||
color: white;
|
||||
bottom: 24px;
|
||||
right: 24px;
|
||||
background: var(--cta-bg);
|
||||
color: #ffffff;
|
||||
border: none;
|
||||
padding: 12px 24px;
|
||||
border-radius: 50px;
|
||||
border-radius: 8px;
|
||||
font-family: 'Inter', sans-serif;
|
||||
font-weight: 600;
|
||||
font-size: 14px;
|
||||
cursor: pointer;
|
||||
box-shadow: 0 4px 20px rgba(10, 108, 255, 0.4);
|
||||
transition: all 0.3s ease;
|
||||
box-shadow: 0 4px 16px rgba(34, 153, 221, 0.3);
|
||||
transition: all 0.2s ease;
|
||||
z-index: 999;
|
||||
display: inline-flex;
|
||||
align-items: center;
|
||||
|
|
@ -302,36 +427,150 @@ div[align="center"]:last-of-type a {
|
|||
}
|
||||
|
||||
#zammad-feedback-form:hover {
|
||||
transform: translateY(-3px);
|
||||
box-shadow: 0 6px 25px rgba(10, 108, 255, 0.5);
|
||||
background: var(--cta-hover);
|
||||
transform: translateY(-2px);
|
||||
box-shadow: 0 6px 20px rgba(34, 153, 221, 0.4);
|
||||
}
|
||||
|
||||
#zammad-feedback-form::before {
|
||||
content: '💬';
|
||||
font-size: 16px;
|
||||
content: none;
|
||||
}
|
||||
|
||||
/* Estilos para modal de Zammad */
|
||||
/* Modal Zammad */
|
||||
.zammad-form-modal {
|
||||
font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif !important;
|
||||
font-family: 'Inter', sans-serif !important;
|
||||
}
|
||||
|
||||
.zammad-form-modal .zammad-form-modal-body {
|
||||
background: var(--bg-secondary) !important;
|
||||
border: 1px solid var(--border-color) !important;
|
||||
border-radius: 12px !important;
|
||||
color: var(--text-primary) !important;
|
||||
}
|
||||
|
||||
.zammad-form-modal input,
|
||||
.zammad-form-modal textarea,
|
||||
.zammad-form-modal select {
|
||||
border-radius: 6px !important;
|
||||
border: 1px solid var(--light-gray) !important;
|
||||
padding: 10px 12px !important;
|
||||
background: var(--input-bg) !important;
|
||||
border: 1px solid var(--border-color) !important;
|
||||
border-radius: 8px !important;
|
||||
padding: 12px 16px !important;
|
||||
color: var(--text-primary) !important;
|
||||
font-family: 'Inter', sans-serif !important;
|
||||
}
|
||||
|
||||
.zammad-form-modal input:focus,
|
||||
.zammad-form-modal textarea:focus {
|
||||
border-color: var(--accent-blue) !important;
|
||||
outline: none !important;
|
||||
box-shadow: 0 0 0 3px rgba(34, 153, 221, 0.2) !important;
|
||||
}
|
||||
|
||||
.zammad-form-modal button[type="submit"] {
|
||||
background: var(--primary-gradient) !important;
|
||||
background: var(--cta-bg) !important;
|
||||
border: none !important;
|
||||
border-radius: 6px !important;
|
||||
border-radius: 8px !important;
|
||||
padding: 12px 24px !important;
|
||||
font-weight: 600 !important;
|
||||
color: white !important;
|
||||
}
|
||||
|
||||
/* ============================================
|
||||
FOOTER
|
||||
============================================ */
|
||||
div[align="center"]:last-of-type {
|
||||
border-top: 1px solid var(--border-light);
|
||||
padding: 32px 24px;
|
||||
margin-top: 64px;
|
||||
background: var(--bg-secondary);
|
||||
}
|
||||
|
||||
div[align="center"]:last-of-type p {
|
||||
color: var(--text-muted);
|
||||
font-size: 14px;
|
||||
margin: 8px 0;
|
||||
}
|
||||
|
||||
div[align="center"]:last-of-type a {
|
||||
color: var(--text-secondary);
|
||||
}
|
||||
|
||||
div[align="center"]:last-of-type a:hover {
|
||||
color: var(--accent-blue);
|
||||
}
|
||||
|
||||
/* ============================================
|
||||
RESPONSIVE
|
||||
============================================ */
|
||||
@media (max-width: 768px) {
|
||||
.sidebar {
|
||||
padding: 0 16px !important;
|
||||
height: 56px !important;
|
||||
}
|
||||
|
||||
.main-content,
|
||||
main.content,
|
||||
.content-wrapper,
|
||||
.page-container {
|
||||
padding-top: 56px !important;
|
||||
}
|
||||
|
||||
.header-login-btn {
|
||||
padding: 8px 16px !important;
|
||||
font-size: 13px;
|
||||
}
|
||||
|
||||
.content,
|
||||
.main-content article,
|
||||
.content-area {
|
||||
padding: 32px 16px;
|
||||
}
|
||||
|
||||
h1 {
|
||||
font-size: 1.75rem;
|
||||
}
|
||||
|
||||
h2 {
|
||||
font-size: 1.25rem;
|
||||
}
|
||||
|
||||
#zammad-feedback-form {
|
||||
bottom: 16px;
|
||||
right: 16px;
|
||||
padding: 10px 20px;
|
||||
}
|
||||
}
|
||||
|
||||
/* ============================================
|
||||
SELECCIÓN DE TEXTO
|
||||
============================================ */
|
||||
::selection {
|
||||
background: var(--accent-blue);
|
||||
color: white;
|
||||
}
|
||||
|
||||
::-moz-selection {
|
||||
background: var(--accent-blue);
|
||||
color: white;
|
||||
}
|
||||
|
||||
/* ============================================
|
||||
SCROLLBAR
|
||||
============================================ */
|
||||
::-webkit-scrollbar {
|
||||
width: 8px;
|
||||
height: 8px;
|
||||
}
|
||||
|
||||
::-webkit-scrollbar-track {
|
||||
background: var(--bg-primary);
|
||||
}
|
||||
|
||||
::-webkit-scrollbar-thumb {
|
||||
background: var(--border-color);
|
||||
border-radius: 4px;
|
||||
}
|
||||
|
||||
::-webkit-scrollbar-thumb:hover {
|
||||
background: var(--text-muted);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,19 +1,21 @@
|
|||
/**
|
||||
* DOCLOUD - Custom JavaScript
|
||||
* - Botón Login en header
|
||||
* - Integración Zammad Feedback Form (carga diferida)
|
||||
* - Botón CTA "Acceso ICSManager"
|
||||
* - Toggle modo oscuro/claro
|
||||
* - Integración Zammad
|
||||
*/
|
||||
|
||||
(function() {
|
||||
'use strict';
|
||||
|
||||
// Esperar a que el DOM esté listo
|
||||
document.addEventListener('DOMContentLoaded', initCustomFeatures);
|
||||
|
||||
function initCustomFeatures() {
|
||||
setDefaultDarkMode();
|
||||
fixLogoLink();
|
||||
addThemeToggle();
|
||||
addLoginButton();
|
||||
// Cargar Zammad después de la carga inicial (mejora LCP)
|
||||
// Cargar Zammad de forma diferida
|
||||
if ('requestIdleCallback' in window) {
|
||||
requestIdleCallback(loadZammadForm);
|
||||
} else {
|
||||
|
|
@ -21,6 +23,19 @@
|
|||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Establece modo oscuro por defecto
|
||||
*/
|
||||
function setDefaultDarkMode() {
|
||||
var savedTheme = localStorage.getItem('docloud-theme');
|
||||
if (!savedTheme) {
|
||||
document.documentElement.setAttribute('data-theme', 'dark');
|
||||
localStorage.setItem('docloud-theme', 'dark');
|
||||
} else {
|
||||
document.documentElement.setAttribute('data-theme', savedTheme);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Asegura que el logo siempre enlace al home
|
||||
*/
|
||||
|
|
@ -32,33 +47,76 @@
|
|||
}
|
||||
|
||||
/**
|
||||
* Añade el botón de Login al header
|
||||
* Añade el toggle de modo claro/oscuro
|
||||
*/
|
||||
function addLoginButton() {
|
||||
function addThemeToggle() {
|
||||
var header = document.querySelector('.sidebar-header');
|
||||
if (!header) return;
|
||||
|
||||
var toggleBtn = document.createElement('button');
|
||||
toggleBtn.className = 'theme-toggle-btn';
|
||||
toggleBtn.setAttribute('aria-label', 'Cambiar tema');
|
||||
toggleBtn.setAttribute('title', 'Alto contraste');
|
||||
updateToggleIcon(toggleBtn);
|
||||
|
||||
toggleBtn.addEventListener('click', function() {
|
||||
var currentTheme = document.documentElement.getAttribute('data-theme');
|
||||
var newTheme = currentTheme === 'dark' ? 'light' : 'dark';
|
||||
document.documentElement.setAttribute('data-theme', newTheme);
|
||||
localStorage.setItem('docloud-theme', newTheme);
|
||||
updateToggleIcon(toggleBtn);
|
||||
});
|
||||
|
||||
// Crear contenedor para los botones del header
|
||||
var btnContainer = document.createElement('div');
|
||||
btnContainer.style.cssText = 'display:flex;align-items:center;gap:12px;';
|
||||
btnContainer.appendChild(toggleBtn);
|
||||
header.appendChild(btnContainer);
|
||||
|
||||
return btnContainer;
|
||||
}
|
||||
|
||||
/**
|
||||
* Actualiza el icono del toggle según el tema
|
||||
*/
|
||||
function updateToggleIcon(btn) {
|
||||
var isDark = document.documentElement.getAttribute('data-theme') === 'dark';
|
||||
btn.innerHTML = isDark ? '☀' : '☽';
|
||||
btn.title = isDark ? 'Modo claro' : 'Modo oscuro';
|
||||
}
|
||||
|
||||
/**
|
||||
* Añade el botón CTA "Acceso ICSManager"
|
||||
*/
|
||||
function addLoginButton() {
|
||||
var btnContainer = document.querySelector('.sidebar-header > div:last-child');
|
||||
if (!btnContainer) {
|
||||
var header = document.querySelector('.sidebar-header');
|
||||
if (!header) return;
|
||||
btnContainer = document.createElement('div');
|
||||
btnContainer.style.cssText = 'display:flex;align-items:center;gap:12px;';
|
||||
header.appendChild(btnContainer);
|
||||
}
|
||||
|
||||
var loginBtn = document.createElement('a');
|
||||
loginBtn.href = 'https://icsmanager.docloud.es/ics1';
|
||||
loginBtn.className = 'header-login-btn';
|
||||
loginBtn.innerHTML = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 12c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm0 2c-2.67 0-8 1.34-8 4v2h16v-2c0-2.66-5.33-4-8-4z"/></svg>Login';
|
||||
loginBtn.textContent = 'Acceso ICSManager';
|
||||
loginBtn.setAttribute('rel', 'noopener');
|
||||
loginBtn.setAttribute('title', 'Acceder al panel de cliente');
|
||||
loginBtn.setAttribute('title', 'Acceder al panel de gestión');
|
||||
|
||||
header.appendChild(loginBtn);
|
||||
btnContainer.appendChild(loginBtn);
|
||||
}
|
||||
|
||||
/**
|
||||
* Carga jQuery y Zammad Form
|
||||
*/
|
||||
function loadZammadForm() {
|
||||
// Crear botón de feedback
|
||||
var feedbackBtn = document.createElement('button');
|
||||
feedbackBtn.id = 'zammad-feedback-form';
|
||||
feedbackBtn.textContent = 'Contactar';
|
||||
document.body.appendChild(feedbackBtn);
|
||||
|
||||
// Cargar jQuery si no existe
|
||||
if (typeof jQuery === 'undefined') {
|
||||
var jqueryScript = document.createElement('script');
|
||||
jqueryScript.src = 'https://code.jquery.com/jquery-3.6.0.min.js';
|
||||
|
|
@ -70,7 +128,7 @@
|
|||
}
|
||||
|
||||
/**
|
||||
* Carga el script de Zammad y inicializa el formulario
|
||||
* Carga el script de Zammad
|
||||
*/
|
||||
function loadZammadScript() {
|
||||
var zammadScript = document.createElement('script');
|
||||
|
|
@ -86,9 +144,9 @@
|
|||
function initZammadForm() {
|
||||
if (typeof jQuery !== 'undefined' && jQuery.fn.ZammadForm) {
|
||||
jQuery('#zammad-feedback-form').ZammadForm({
|
||||
messageTitle: 'Contacto con Soporte',
|
||||
messageTitle: 'Contacto con Soporte Técnico',
|
||||
messageSubmit: 'Enviar',
|
||||
messageThankYou: 'Gracias por su consulta (#%s). Nos pondremos en contacto con usted lo antes posible.',
|
||||
messageThankYou: 'Gracias por contactarnos (#%s). Responderemos a la brevedad.',
|
||||
modal: true
|
||||
});
|
||||
}
|
||||
|
|
|
|||
|
|
@ -22,7 +22,7 @@ En cumplimiento con el deber de información recogido en el artículo 10 de la L
|
|||
| **Municipio** | Amposta |
|
||||
| **Provincia** | Tarragona |
|
||||
| **País** | España |
|
||||
| **Email de Contacto** | soporte@docloud.es |
|
||||
| **Email de Contacto** | david@toribio.eu |
|
||||
| **CNAE** | 6310 - Infraestructura informática, procesamiento de datos, hosting |
|
||||
| **Forma Jurídica** | Sociedad Limitada |
|
||||
|
||||
|
|
@ -96,14 +96,6 @@ Se recomienda revisar periódicamente esta página para estar informado de posib
|
|||
|
||||
<div align="center">
|
||||
|
||||
<a href="../" style="display:inline-block;background:#6c757d;color:white;padding:12px 30px;text-decoration:none;border-radius:5px;margin:10px;">← Volver al inicio</a>
|
||||
|
||||
</div>
|
||||
|
||||
---
|
||||
|
||||
<div align="center">
|
||||
|
||||
**DOCLOUD** - Internet Cloud Services SL · CIF: B67246371
|
||||
|
||||
[Quiénes Somos](/quienes-somos/) · [Contacto](/contacto/) · [Aviso Legal](/aviso-legal/) · [Cookies](/politica-cookies/) · [Privacidad](/politica-privacidad/) · [Seguridad](/politica-seguridad/)
|
||||
|
|
|
|||
|
|
@ -73,8 +73,6 @@ Gestión de incidencias y consultas
|
|||
|
||||
<a href="https://soporte.tecnico.com.es" style="display:inline-block;background:#28a745;color:white;padding:12px 30px;text-decoration:none;border-radius:5px;font-weight:bold;margin:10px;">Contactar ahora</a>
|
||||
|
||||
<a href="../" style="display:inline-block;background:#6c757d;color:white;padding:12px 30px;text-decoration:none;border-radius:5px;margin:10px;">← Volver al inicio</a>
|
||||
|
||||
</div>
|
||||
|
||||
---
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
module.exports = {
|
||||
siteTitle: 'DO CLOUD',
|
||||
siteTitle: 'DOCLOUD - Infraestructura Cloud Corporativa',
|
||||
siteUrl: 'https://docloud.es',
|
||||
description: 'Internet Cloud Services - Servicios cloud profesionales',
|
||||
description: 'Servicios cloud profesionales para PYMES. Servidores Proxmox, VPN cifrada, backup empresarial.',
|
||||
srcDir: './',
|
||||
outDir: './site',
|
||||
|
||||
|
|
@ -9,15 +9,15 @@ module.exports = {
|
|||
logo: {
|
||||
light: 'assets/images/logo.svg',
|
||||
dark: 'assets/images/logo.svg',
|
||||
alt: 'DO CLOUD Logo',
|
||||
alt: 'DOCLOUD - Internet Cloud Services',
|
||||
href: './',
|
||||
},
|
||||
favicon: 'assets/favicon.svg',
|
||||
|
||||
// Features - DESACTIVAR MERMAID para rendimiento
|
||||
// Features
|
||||
search: false,
|
||||
minify: true,
|
||||
copyCode: false,
|
||||
copyCode: true,
|
||||
pageNavigation: false,
|
||||
mermaid: false,
|
||||
|
||||
|
|
@ -30,28 +30,28 @@ module.exports = {
|
|||
// Theme
|
||||
theme: {
|
||||
name: 'default',
|
||||
defaultMode: 'light',
|
||||
defaultMode: 'dark',
|
||||
enableModeToggle: false,
|
||||
positionMode: 'top',
|
||||
codeHighlight: false,
|
||||
codeHighlight: true,
|
||||
customCss: ['assets/custom.css'],
|
||||
},
|
||||
|
||||
// Custom JS - botón Login y Zammad form
|
||||
// Custom JS
|
||||
customJs: ['assets/custom.js'],
|
||||
|
||||
// Navigation
|
||||
// Navigation - paths relativos con ./
|
||||
navigation: [
|
||||
{ title: 'Inicio', path: './' },
|
||||
{ title: 'Nosotros', path: './quienes-somos/' },
|
||||
{ title: 'Contacto', path: './contacto/' },
|
||||
{ title: 'Legal', path: './aviso-legal/' },
|
||||
{ title: 'Seguridad', path: './politica-seguridad/' },
|
||||
],
|
||||
|
||||
// SEO
|
||||
// SEO - solo campos soportados
|
||||
plugins: {
|
||||
seo: {
|
||||
defaultDescription: 'DO CLOUD - Internet Cloud Services. Infraestructura cloud profesional, hosting, backup y seguridad gestionada.',
|
||||
defaultDescription: 'DOCLOUD - Infraestructura Cloud Corporativa para PYMES. Servidores Proxmox, VPN empresarial, backup profesional.',
|
||||
openGraph: {
|
||||
defaultImage: 'assets/images/icon-512.png',
|
||||
},
|
||||
|
|
|
|||
138
index.md
138
index.md
|
|
@ -1,90 +1,108 @@
|
|||
<div align="center">
|
||||
---
|
||||
title: Infraestructura Cloud Corporativa para PYMES | DOCLOUD
|
||||
description: Servicios cloud profesionales para empresas. Servidores Proxmox, VPN cifrada, backup empresarial y soporte técnico nivel 3. El backend que tu negocio necesita.
|
||||
---
|
||||
|
||||
## Internet Cloud Services
|
||||
# Infraestructura Cloud Corporativa
|
||||
|
||||
**Tu partner tecnológico en soluciones cloud**
|
||||
**El backend que tu negocio (y tu informático) necesitan.**
|
||||
|
||||
Infraestructura fiable, segura y escalable para impulsar tu negocio.
|
||||
Llevamos la potencia del Datacenter a la PYME. Infraestructura profesional, segura y gestionada por expertos.
|
||||
|
||||
</div>
|
||||
## El problema: piezas que no encajan
|
||||
|
||||
```
|
||||
$ diagnose --infrastructure
|
||||
|
||||
[ERROR] vpn_config: inconsistent
|
||||
[ERROR] backup_policy: undefined
|
||||
[ERROR] server_monitoring: disabled
|
||||
[WARN] security_updates: 847 days overdue
|
||||
[FAIL] disaster_recovery: not configured
|
||||
|
||||
Status: CRITICAL - Infrastructure fragmented
|
||||
```
|
||||
|
||||
¿Tu infraestructura IT es un puzle incompleto? Servidores aquí, backups allá, VPNs que nadie entiende, y cuando algo falla... el caos.
|
||||
|
||||
**Nosotros organizamos las piezas.**
|
||||
|
||||
---
|
||||
|
||||
## Nuestros Servicios
|
||||
## La solución: infraestructura que funciona
|
||||
|
||||
<table>
|
||||
<tr>
|
||||
<td width="33%" align="center" style="padding:20px;">
|
||||
### Continuidad de negocio
|
||||
|
||||
### ☁️ Infraestructura Cloud
|
||||
Tus aplicaciones on-premise, accesibles desde la nube. Sin interrupciones, sin excusas.
|
||||
|
||||
Servidores virtuales de alto rendimiento con disponibilidad 24/7 y recursos garantizados.
|
||||
- Virtualización Proxmox gestionada
|
||||
- Alta disponibilidad real (no marketing)
|
||||
- Migración sin cortes de servicio
|
||||
|
||||
</td>
|
||||
<td width="33%" align="center" style="padding:20px;">
|
||||
### Seguridad sin compromisos
|
||||
|
||||
### 🌐 Hosting Profesional
|
||||
Conexiones cifradas punto a punto. Tus datos viajan seguros o no viajan.
|
||||
|
||||
Alojamiento web optimizado para aplicaciones empresariales con SSL incluido.
|
||||
- VPN corporativa con cifrado de grado militar
|
||||
- Segmentación de red por defecto
|
||||
- Monitorización 24/7 de anomalías
|
||||
|
||||
</td>
|
||||
<td width="33%" align="center" style="padding:20px;">
|
||||
### Backup que recupera
|
||||
|
||||
### 💾 Backup y DR
|
||||
No es backup si no puedes restaurar. Probamos cada restauración.
|
||||
|
||||
Copias de seguridad automatizadas y planes de disaster recovery.
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="33%" align="center" style="padding:20px;">
|
||||
|
||||
### 🔒 Seguridad Gestionada
|
||||
|
||||
Protección avanzada contra amenazas y monitorización continua 24/7.
|
||||
|
||||
</td>
|
||||
<td width="33%" align="center" style="padding:20px;">
|
||||
|
||||
### 📧 Email Empresarial
|
||||
|
||||
Correo profesional con antispam, antivirus y alta disponibilidad.
|
||||
|
||||
</td>
|
||||
<td width="33%" align="center" style="padding:20px;">
|
||||
|
||||
### 🛠️ Soporte Técnico
|
||||
|
||||
Equipo experto disponible para resolver cualquier incidencia.
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
- Copias incrementales cada hora
|
||||
- Retención configurable (días, semanas, meses)
|
||||
- Disaster Recovery testado y documentado
|
||||
|
||||
---
|
||||
|
||||
## ¿Por qué elegir DOCLOUD?
|
||||
## Amplía tu departamento IT
|
||||
|
||||
| | | |
|
||||
|:---:|:---:|:---:|
|
||||
| **🏆 Fiabilidad** | **🔐 Seguridad** | **📈 Escalabilidad** |
|
||||
| Infraestructura redundante | Cumplimiento RGPD | Crece con tu negocio |
|
||||
| SLA 99.9% garantizado | Cifrado de datos | Recursos flexibles |
|
||||
```
|
||||
$ sudo su - IT_PRO
|
||||
Password: ********
|
||||
Welcome, IT Professional.
|
||||
```
|
||||
|
||||
| | | |
|
||||
|:---:|:---:|:---:|
|
||||
| **⚡ Rendimiento** | **🇪🇸 Soporte Local** | **💰 Precio Justo** |
|
||||
| Hardware de última generación | Equipo técnico en España | Sin sorpresas ni costes ocultos |
|
||||
| Conexiones de alta velocidad | Atención personalizada | Facturación transparente |
|
||||
Cuando tu equipo necesita ir más allá, nosotros cubrimos el escalado. Infraestructura especializada y soporte Nivel 3 para que tu departamento se centre en lo estratégico.
|
||||
|
||||
### Cómo encajamos
|
||||
|
||||
| Tu equipo | Nosotros |
|
||||
|-----------|----------|
|
||||
| Estrategia IT | Infraestructura cloud |
|
||||
| Gestión del día a día | Soporte especializado |
|
||||
| Control total | Sin intermediarios |
|
||||
|
||||
[Hablemos](/contacto/)
|
||||
|
||||
---
|
||||
|
||||
## Empieza hoy
|
||||
## Stack tecnológico
|
||||
|
||||
<div align="center">
|
||||
| Componente | Tecnología |
|
||||
|------------|------------|
|
||||
| Virtualización | Proxmox VE |
|
||||
| Contenedores | LXC / Docker |
|
||||
| Storage | ZFS |
|
||||
| Backup | Proxmox Backup Server |
|
||||
| VPN | WireGuard / OpenVPN |
|
||||
| Monitorización | Alertas proactivas |
|
||||
| Gestión | ICSManager (propio) |
|
||||
|
||||
¿Listo para llevar tu infraestructura al siguiente nivel?
|
||||
---
|
||||
|
||||
## Siguiente paso
|
||||
|
||||
```
|
||||
$ ./contactar.sh --motivo="quiero-saber-mas"
|
||||
|
||||
Iniciando conexión segura...
|
||||
[OK] Formulario de contacto disponible
|
||||
[OK] Sin compromiso, sin spam
|
||||
[OK] Respuesta en < 24h laborables
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
|
|
|
|||
|
|
@ -104,14 +104,6 @@ Si tienes alguna pregunta sobre nuestra política de cookies:
|
|||
|
||||
<div align="center">
|
||||
|
||||
<a href="../" style="display:inline-block;background:#6c757d;color:white;padding:12px 30px;text-decoration:none;border-radius:5px;margin:10px;">← Volver al inicio</a>
|
||||
|
||||
</div>
|
||||
|
||||
---
|
||||
|
||||
<div align="center">
|
||||
|
||||
**DOCLOUD** - Internet Cloud Services SL
|
||||
|
||||
[Quiénes Somos](/quienes-somos/) · [Contacto](/contacto/) · [Aviso Legal](/aviso-legal/) · [Cookies](/politica-cookies/) · [Privacidad](/politica-privacidad/) · [Seguridad](/politica-seguridad/)
|
||||
|
|
|
|||
|
|
@ -147,14 +147,6 @@ INTERNET CLOUD SERVICES SL se reserva el derecho de modificar esta política. Cu
|
|||
|
||||
<div align="center">
|
||||
|
||||
<a href="../" style="display:inline-block;background:#6c757d;color:white;padding:12px 30px;text-decoration:none;border-radius:5px;margin:10px;">← Volver al inicio</a>
|
||||
|
||||
</div>
|
||||
|
||||
---
|
||||
|
||||
<div align="center">
|
||||
|
||||
**DOCLOUD** - Internet Cloud Services SL · CIF: B67246371
|
||||
|
||||
[Quiénes Somos](/quienes-somos/) · [Contacto](/contacto/) · [Aviso Legal](/aviso-legal/) · [Cookies](/politica-cookies/) · [Privacidad](/politica-privacidad/) · [Seguridad](/politica-seguridad/)
|
||||
|
|
|
|||
|
|
@ -1,183 +1,204 @@
|
|||
<div align="center">
|
||||
---
|
||||
title: Política de Seguridad | DOCLOUD
|
||||
description: Medidas de seguridad implementadas en DOCLOUD. Cifrado, VPN, backup, monitorización 24/7 y gestión de incidentes. Infraestructura cloud segura.
|
||||
---
|
||||
|
||||
# 🛡️ Política de Seguridad
|
||||
# Política de Seguridad
|
||||
|
||||
**Nuestro compromiso con la protección de tu información**
|
||||
|
||||
</div>
|
||||
```
|
||||
$ security --status
|
||||
|
||||
[OK] Firewall: active
|
||||
[OK] IDS/IPS: monitoring
|
||||
[OK] Encryption: AES-256
|
||||
[OK] VPN: WireGuard enabled
|
||||
[OK] Backup: verified
|
||||
[OK] Monitoring: 24/7
|
||||
|
||||
Security Status: HARDENED
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 🎯 Compromiso con la Seguridad
|
||||
## Compromiso con la Seguridad
|
||||
|
||||
En **INTERNET CLOUD SERVICES SL** la seguridad es una prioridad fundamental. Implementamos múltiples capas de protección para garantizar la **integridad, confidencialidad y disponibilidad** de los datos y servicios de nuestros clientes.
|
||||
En **DOCLOUD** la seguridad no es un feature, es la base. Implementamos múltiples capas de protección para garantizar la **integridad, confidencialidad y disponibilidad** de los datos y servicios.
|
||||
|
||||
---
|
||||
|
||||
## 🏗️ Medidas de Seguridad Implementadas
|
||||
## Seguridad de Infraestructura
|
||||
|
||||
### 🏢 Seguridad de Infraestructura
|
||||
### Datacenter
|
||||
|
||||
<table>
|
||||
<tr>
|
||||
<td width="50%" style="padding:15px;">
|
||||
| Medida | Implementación |
|
||||
|--------|----------------|
|
||||
| Ubicación | Datacenters Tier III+ en Europa |
|
||||
| Acceso físico | Control biométrico + tarjeta |
|
||||
| Videovigilancia | CCTV 24/7 con retención |
|
||||
| Alimentación | SAI + Generadores redundantes |
|
||||
| Climatización | N+1 con monitorización |
|
||||
| Detección incendios | Sistema de extinción automático |
|
||||
|
||||
| Medida | Descripción |
|
||||
|:---|:---|
|
||||
| 🏛️ **Datacenters** | Certificados con controles de acceso físico |
|
||||
| 🔄 **Redundancia** | Sistemas críticos y conexiones duplicadas |
|
||||
| 👁️ **Monitorización** | Vigilancia 24/7 de toda la infraestructura |
|
||||
| ⚡ **SAI** | Alimentación ininterrumpida + generadores |
|
||||
### Redundancia
|
||||
|
||||
</td>
|
||||
<td width="50%" style="padding:15px;">
|
||||
```
|
||||
$ cat /etc/infrastructure/redundancy.conf
|
||||
|
||||
| Medida | Descripción |
|
||||
|:---|:---|
|
||||
| ❄️ **Climatización** | Control de temperatura redundante |
|
||||
| 🔥 **Anti-incendios** | Sistemas de detección y extinción |
|
||||
| 📹 **CCTV** | Videovigilancia perimetral |
|
||||
| 🚪 **Acceso** | Control biométrico |
|
||||
network_links=2
|
||||
power_feeds=2
|
||||
storage_replicas=3
|
||||
backup_locations=2
|
||||
failover_time=<60s
|
||||
```
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
---
|
||||
|
||||
### 🌐 Seguridad de Red
|
||||
## Seguridad de Red
|
||||
|
||||
| Capa | Tecnología | Función |
|
||||
|:---:|:---|:---|
|
||||
| 🔥 | **Firewalls NG** | Filtrado de tráfico de última generación |
|
||||
| 🕵️ | **IDS/IPS** | Detección y prevención de intrusiones |
|
||||
| 🛡️ | **Anti-DDoS** | Protección multicapa contra ataques volumétricos |
|
||||
| 🔀 | **Segmentación** | Aislamiento de servicios y clientes |
|
||||
| 🔒 | **VPN** | Acceso seguro a la gestión |
|
||||
|------|------------|---------|
|
||||
| Perímetro | Firewall NG | Filtrado stateful + DPI |
|
||||
| Detección | IDS/IPS | Análisis de anomalías |
|
||||
| Mitigación | Anti-DDoS | Scrubbing multicapa |
|
||||
| Aislamiento | VLANs | Segmentación por cliente |
|
||||
| Acceso | VPN | WireGuard / OpenVPN |
|
||||
|
||||
### 💾 Seguridad de Datos
|
||||
### Cifrado en tránsito
|
||||
|
||||
<table>
|
||||
<tr>
|
||||
<td width="50%" align="center" style="padding:15px;">
|
||||
- **TLS 1.3** para todas las conexiones HTTPS
|
||||
- **WireGuard** para VPN (ChaCha20-Poly1305)
|
||||
- **SSH** con claves ED25519, passwords deshabilitados
|
||||
- Certificados **Let's Encrypt** renovados automáticamente
|
||||
|
||||
### 🔐 Cifrado
|
||||
---
|
||||
|
||||
- **TLS 1.3** en tránsito
|
||||
- **AES-256** en reposo
|
||||
- Certificados SSL/TLS gratuitos
|
||||
## Seguridad de Datos
|
||||
|
||||
</td>
|
||||
<td width="50%" align="center" style="padding:15px;">
|
||||
### Cifrado en reposo
|
||||
|
||||
### 💾 Backup
|
||||
| Dato | Algoritmo |
|
||||
|------|-----------|
|
||||
| Discos VM | AES-256-XTS |
|
||||
| Backups | AES-256-GCM |
|
||||
| Bases de datos | TDE donde aplica |
|
||||
| Credenciales | Argon2id |
|
||||
|
||||
- Copias **automatizadas** diarias
|
||||
- Retención configurable
|
||||
- Verificación de integridad
|
||||
### Backup y Disaster Recovery
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
```
|
||||
$ backup --status --verbose
|
||||
|
||||
### 👤 Seguridad de Acceso
|
||||
Schedule: hourly incremental, daily full
|
||||
Retention: 7 daily, 4 weekly, 12 monthly
|
||||
Replication: 2 sites geográficamente separados
|
||||
Verification: restore test monthly
|
||||
RTO target: < 4 hours
|
||||
RPO target: < 1 hour
|
||||
|
||||
Last backup: 2025-01-06 12:00 UTC [OK]
|
||||
Last restore test: 2025-01-01 [OK]
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Gestión de Accesos
|
||||
|
||||
| Control | Implementación |
|
||||
|:---|:---|
|
||||
| **Autenticación** | Contraseñas robustas + 2FA disponible |
|
||||
| **Autorización** | RBAC (Control de Acceso Basado en Roles) |
|
||||
| **Auditoría** | Logs de todos los accesos y cambios |
|
||||
| **Revisión** | Auditorías periódicas de permisos |
|
||||
|---------|----------------|
|
||||
| Autenticación | Contraseñas + 2FA obligatorio |
|
||||
| Autorización | RBAC (mínimo privilegio) |
|
||||
| Sesiones | Timeout + invalidación remota |
|
||||
| Auditoría | Logs inmutables de todo acceso |
|
||||
| Revisión | Auditoría trimestral de permisos |
|
||||
|
||||
---
|
||||
|
||||
## 🚨 Gestión de Incidentes
|
||||
## Gestión de Incidentes
|
||||
|
||||
<div align="center">
|
||||
```
|
||||
$ cat /etc/security/incident-response.md
|
||||
|
||||
| Fase | Acción |
|
||||
|:---:|:---|
|
||||
| 1️⃣ | **Detección** - Monitorización proactiva 24/7 |
|
||||
| 2️⃣ | **Contención** - Aislamiento inmediato de la amenaza |
|
||||
| 3️⃣ | **Respuesta** - Equipo de respuesta coordinado |
|
||||
| 4️⃣ | **Comunicación** - Notificación transparente al cliente |
|
||||
| 5️⃣ | **Recuperación** - Restauración del servicio |
|
||||
| 6️⃣ | **Análisis** - Post-mortem y mejora continua |
|
||||
## Protocolo de Respuesta
|
||||
|
||||
</div>
|
||||
1. DETECTAR → Monitorización 24/7, alertas automáticas
|
||||
2. CONTENER → Aislamiento inmediato del vector
|
||||
3. ANALIZAR → Forensics, determinación de alcance
|
||||
4. ERRADICAR → Eliminación de la amenaza
|
||||
5. RECUPERAR → Restauración desde backup limpio
|
||||
6. COMUNICAR → Notificación al cliente (< 72h RGPD)
|
||||
7. MEJORAR → Post-mortem, actualización de controles
|
||||
```
|
||||
|
||||
### SLA de respuesta
|
||||
|
||||
| Severidad | Tiempo de respuesta |
|
||||
|-----------|---------------------|
|
||||
| Crítica (servicio caído) | < 15 minutos |
|
||||
| Alta (degradación) | < 1 hora |
|
||||
| Media (potencial riesgo) | < 4 horas |
|
||||
| Baja (consulta) | < 24 horas |
|
||||
|
||||
---
|
||||
|
||||
## 🔄 Actualizaciones y Parches
|
||||
## Actualizaciones y Parches
|
||||
|
||||
| Tipo | Frecuencia |
|
||||
|:---|:---|
|
||||
| **Parches críticos** | Inmediato (< 24h) |
|
||||
| **Actualizaciones de seguridad** | Semanal |
|
||||
| **Actualizaciones de sistema** | Mensual (ventana de mantenimiento) |
|
||||
| **Evaluación de vulnerabilidades** | Trimestral |
|
||||
| Tipo | Política |
|
||||
|------|----------|
|
||||
| Parches críticos (CVSS >= 9) | < 24 horas |
|
||||
| Parches altos (CVSS >= 7) | < 7 días |
|
||||
| Actualizaciones regulares | Ventana mensual |
|
||||
| Escaneo de vulnerabilidades | Semanal |
|
||||
|
||||
---
|
||||
|
||||
## 🤝 Responsabilidad Compartida
|
||||
## Responsabilidad Compartida
|
||||
|
||||
La seguridad es una **responsabilidad compartida** entre DOCLOUD y nuestros clientes.
|
||||
|
||||
### ✅ Nosotros nos encargamos de:
|
||||
### DOCLOUD se encarga de:
|
||||
|
||||
- Seguridad física del datacenter
|
||||
- Seguridad de la red y la infraestructura
|
||||
- Actualizaciones del sistema base
|
||||
- Seguridad de red e infraestructura
|
||||
- Actualizaciones del hipervisor y sistemas base
|
||||
- Monitorización y respuesta a incidentes
|
||||
- Backup de la infraestructura
|
||||
|
||||
### 📋 Recomendamos a nuestros clientes:
|
||||
### Recomendamos al cliente:
|
||||
|
||||
- 🔑 Utilizar contraseñas **robustas y únicas**
|
||||
- 📱 Activar **autenticación de dos factores** (2FA)
|
||||
- 🔄 Mantener **actualizadas** sus aplicaciones
|
||||
- 🚨 **Reportar** cualquier actividad sospechosa
|
||||
- 💾 Realizar sus propios **backups** adicionales
|
||||
- Usar contraseñas únicas y robustas
|
||||
- Activar 2FA en todas las cuentas
|
||||
- Mantener actualizadas sus aplicaciones
|
||||
- Implementar backup adicional de datos críticos
|
||||
- Reportar cualquier actividad sospechosa
|
||||
|
||||
---
|
||||
|
||||
## 🐛 Reporte de Vulnerabilidades
|
||||
## Reporte de Vulnerabilidades
|
||||
|
||||
Si detectas alguna vulnerabilidad de seguridad, te agradeceríamos que nos lo comuniques de forma responsable:
|
||||
Si detectas una vulnerabilidad, te agradeceríamos que nos lo comuniques de forma responsable.
|
||||
|
||||
<div align="center">
|
||||
```
|
||||
$ ./report-vulnerability.sh
|
||||
|
||||
<a href="mailto:soporte@docloud.es" style="display:inline-block;background:#dc3545;color:white;padding:15px 40px;text-decoration:none;border-radius:5px;font-weight:bold;margin:20px;">🔒 Reportar Vulnerabilidad</a>
|
||||
Contacto: seguridad@docloud.es
|
||||
PGP Key: [disponible bajo petición]
|
||||
|
||||
**soporte@docloud.es**
|
||||
|
||||
</div>
|
||||
|
||||
> Nos comprometemos a investigar todos los reportes y mantener informado al reportador sobre el progreso.
|
||||
Nos comprometemos a:
|
||||
- Acusar recibo en < 48h
|
||||
- Mantener informado al reportador
|
||||
- No emprender acciones legales contra
|
||||
investigadores de buena fe
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 📈 Mejora Continua
|
||||
|
||||
Revisamos y mejoramos continuamente nuestras medidas de seguridad:
|
||||
|
||||
- ✅ Auditorías de seguridad periódicas
|
||||
- ✅ Formación continua del equipo
|
||||
- ✅ Actualización de políticas y procedimientos
|
||||
- ✅ Seguimiento de nuevas amenazas y vulnerabilidades
|
||||
|
||||
*Última actualización: Enero 2024*
|
||||
*Última actualización: Enero 2025*
|
||||
|
||||
---
|
||||
|
||||
<div align="center">
|
||||
|
||||
<a href="../" style="display:inline-block;background:#6c757d;color:white;padding:12px 30px;text-decoration:none;border-radius:5px;margin:10px;">← Volver al inicio</a>
|
||||
|
||||
</div>
|
||||
|
||||
---
|
||||
|
||||
<div align="center">
|
||||
|
||||
**DOCLOUD** - Internet Cloud Services SL · CIF: B67246371
|
||||
**DOCLOUD** - Internet Cloud Services SL
|
||||
|
||||
[Quiénes Somos](/quienes-somos/) · [Contacto](/contacto/) · [Aviso Legal](/aviso-legal/) · [Cookies](/politica-cookies/) · [Privacidad](/politica-privacidad/) · [Seguridad](/politica-seguridad/)
|
||||
|
||||
|
|
|
|||
|
|
@ -12,13 +12,13 @@
|
|||
|
||||
**DOCLOUD** es la marca comercial de **Internet Cloud Services SL**, empresa española especializada en servicios de infraestructura cloud y soluciones tecnológicas para empresas.
|
||||
|
||||
Fundada con la visión de democratizar el acceso a infraestructura cloud de calidad, nuestro objetivo es proporcionar a nuestros clientes las herramientas necesarias para que puedan centrarse en lo que realmente importa: **hacer crecer su negocio**.
|
||||
Fundada con la visión de democratizar el acceso a infraestructura cloud de calidad, nuestro objetivo es proporcionar a nuestros usuarios las herramientas necesarias para que puedan centrarse en lo que realmente importa: **hacer crecer su negocio**.
|
||||
|
||||
---
|
||||
|
||||
## 🎯 Nuestra Misión
|
||||
|
||||
> Ofrecer servicios cloud de alta calidad, seguros y fiables, con un soporte técnico cercano y profesional que acompañe a nuestros clientes en su transformación digital.
|
||||
> Ofrecer servicios cloud de alta calidad, seguros y fiables, con un soporte técnico cercano y profesional que acompañe a nuestros usuarios en su transformación digital.
|
||||
|
||||
---
|
||||
|
||||
|
|
@ -32,7 +32,7 @@ Fundada con la visión de democratizar el acceso a infraestructura cloud de cali
|
|||
Mantenemos los más altos estándares de disponibilidad y rendimiento en todos nuestros servicios.
|
||||
|
||||
### 🔐 Seguridad
|
||||
La protección de los datos de nuestros clientes es nuestra prioridad número uno.
|
||||
La protección de los datos de nuestros usuarios es nuestra prioridad número uno.
|
||||
|
||||
### 💡 Innovación
|
||||
Actualizamos constantemente nuestra infraestructura para ofrecer las últimas tecnologías.
|
||||
|
|
@ -47,7 +47,7 @@ Comunicación clara y honesta en todas nuestras relaciones comerciales.
|
|||
Soporte técnico humano y accesible, sin barreras ni intermediarios. Equipo 100% en España.
|
||||
|
||||
### ⚡ Agilidad
|
||||
Respuesta rápida a las necesidades cambiantes de nuestros clientes.
|
||||
Respuesta rápida a las necesidades cambiantes de nuestros usuarios.
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
|
|
@ -72,8 +72,6 @@ Contamos con **más de 10 años de experiencia** en el sector tecnológico, gest
|
|||
|
||||
<a href="https://soporte.tecnico.com.es" style="display:inline-block;background:#0066cc;color:white;padding:12px 30px;text-decoration:none;border-radius:5px;font-weight:bold;margin:10px;">Contactar con nosotros</a>
|
||||
|
||||
<a href="../" style="display:inline-block;background:#6c757d;color:white;padding:12px 30px;text-decoration:none;border-radius:5px;margin:10px;">← Volver al inicio</a>
|
||||
|
||||
</div>
|
||||
|
||||
---
|
||||
|
|
|
|||
14
sitemap.xml
14
sitemap.xml
|
|
@ -2,43 +2,43 @@
|
|||
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
|
||||
<url>
|
||||
<loc>https://docloud.es/</loc>
|
||||
<lastmod>2026-01-04</lastmod>
|
||||
<lastmod>2026-01-06</lastmod>
|
||||
<changefreq>weekly</changefreq>
|
||||
<priority>1.0</priority>
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://docloud.es/quienes-somos/</loc>
|
||||
<lastmod>2026-01-04</lastmod>
|
||||
<lastmod>2026-01-06</lastmod>
|
||||
<changefreq>monthly</changefreq>
|
||||
<priority>0.8</priority>
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://docloud.es/contacto/</loc>
|
||||
<lastmod>2026-01-04</lastmod>
|
||||
<lastmod>2026-01-06</lastmod>
|
||||
<changefreq>monthly</changefreq>
|
||||
<priority>0.8</priority>
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://docloud.es/aviso-legal/</loc>
|
||||
<lastmod>2026-01-04</lastmod>
|
||||
<lastmod>2026-01-06</lastmod>
|
||||
<changefreq>yearly</changefreq>
|
||||
<priority>0.3</priority>
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://docloud.es/politica-cookies/</loc>
|
||||
<lastmod>2026-01-04</lastmod>
|
||||
<lastmod>2026-01-06</lastmod>
|
||||
<changefreq>yearly</changefreq>
|
||||
<priority>0.3</priority>
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://docloud.es/politica-privacidad/</loc>
|
||||
<lastmod>2026-01-04</lastmod>
|
||||
<lastmod>2026-01-06</lastmod>
|
||||
<changefreq>yearly</changefreq>
|
||||
<priority>0.3</priority>
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://docloud.es/politica-seguridad/</loc>
|
||||
<lastmod>2026-01-04</lastmod>
|
||||
<lastmod>2026-01-06</lastmod>
|
||||
<changefreq>yearly</changefreq>
|
||||
<priority>0.3</priority>
|
||||
</url>
|
||||
|
|
|
|||
Loading…
Reference in a new issue