Instalar un certificado SSL gratuito de Let’s Encrypt en un VPS

Instalar un certificado SSL gratuito de Let’s Encrypt en un VPS

Para instalar un certificado SSL gratuito de Let’s Encrypt en un VPS, puedes usar herramientas como Certbot o paneles como CloudPanel o cPanel, dependiendo de tu configuración.

Aquí tienes una guía general paso a paso para hacerlo manualmente con Certbot, que es la herramienta oficial recomendada por Let’s Encrypt:

Requisitos previos

  • Un VPS con acceso root (por SSH)
  • Un nombre de dominio apuntando a la IP del VPS
  • Un servidor web instalado (como Apache o Nginx)

🔐 Instalación con Certbot (método manual)

  1. Accede a tu VPS por SSH: ssh root@tu_dominio.com
  2. Instala Certbot:

En Debian/Ubuntu:

sudo apt update sudo apt install certbot python3-certbot-nginx

En CentOS/RHEL:

sudo yum install epel-release sudo yum install certbot python3-certbot-nginx

SOLICITA EL CERTIFICADO

Para Nginx:

sudo certbot --nginx

Para Apache:

sudo certbot --apache
  1. Sigue las instrucciones:
    • Certbot detectará tus dominios configurados y te preguntará si deseas redirigir todo el tráfico a HTTPS.
  2. Verifica la renovación automática:
    • Let’s Encrypt emite certificados válidos por 90 días.
    • Certbot instala automáticamente un cron job para renovarlos.

Puedes probarlo con:

sudo certbot renew --dry-run

Cuando hay que renovar el Certificado SSL

Los certificados de Let’s Encrypt deben renovarse cada 90 días.

Esto es una política estándar de Let’s Encrypt para mejorar la seguridad. Aquí tienes los detalles clave:

📅 Frecuencia de renovación

  • Validez: 90 días desde la emisión
  • Recomendación: Renovar alrededor del día 60 para evitar expiraciones accidentales

Renovación automática con Certbot

Si usaste Certbot para instalar el certificado, probablemente ya esté configurado para renovarse automáticamente mediante un cron job o un timer de systemd.

Puedes verificarlo ejecutando:

sudo certbot renew --dry-run

Este comando simula la renovación para confirmar que todo funciona correctamente.

⚠️ ¿Qué pasa si no se renueva?

  • El sitio web mostrará advertencias de seguridad a los visitantes
  • Los navegadores bloquearán el acceso por HTTPS
  • Podrías perder posicionamiento SEO y confianza de los usuarios

Mantenimiento de un VPS en Debian 10

El mantenimiento de un VPS con Debian 10 incluye actualizaciones de seguridad, limpieza del sistema, monitoreo de recursos y copias de seguridad regulares. Estas tareas aseguran estabilidad, rendimiento y protección frente a amenazas.

🔧 Mantenimiento básico recomendado

1. Actualización del sistema

Mantén tu VPS al día con los últimos parches:

bash

apt update && apt upgrade -y && apt autoremove -y

También puedes usar apt dist-upgrade para actualizaciones más profundas.

2. Limpieza de paquetes y caché

Elimina paquetes innecesarios y limpia la caché:

bash

apt clean && apt autoclean

3. Verificación del sistema de archivos

Comprueba y repara errores:

bash

fsck -Af -V

(Usar con precaución, preferiblemente en modo de recuperación)

4. Monitoreo de recursos

Instala herramientas como:

  • htop para ver procesos activos
  • df -h para revisar espacio en disco
  • free -h para memoria RAM

5. Firewall y seguridad

Configura iptables o usa ufw:

bash

ufw allow 22
ufw allow 80
ufw allow 443
ufw enable

Instala fail2ban para proteger contra intentos de acceso no autorizados.

6. Copias de seguridad

Haz backups regulares con herramientas como:

  • rsync
  • borgbackup
  • duplicity

Antes de cualquier cambio importante, realiza una copia completa del sistema.

🛠️ Scripts útiles

Puedes automatizar el mantenimiento con scripts como este de GitHub: 🔗 Debian_Maintenance – RichyKunBv

Este script incluye:

  • Actualización del sistema
  • Limpieza de caché
  • Verificación SMART del disco
  • Cierre de procesos de alto consumo
  • Reinicio de servicios de red

📌 Consejos adicionales

  • Revisa los logs del sistema: journalctl/var/log/syslog/var/log/auth.log
  • Configura alertas con monit o Nagios
  • Usa cron para programar tareas automáticas
Como configurar un VPS con OVH

Como configurar un VPS con OVH

Configurar un VPS con OVH te da control total sobre tu servidor, ideal para proyectos como tudominio.com 
 o cualquier entorno personalizado que necesites. Aquí tienes una guía paso a paso para hacerlo correctamente:

Guía para configurar un VPS en OVH

1. 🛒 Contrata el VPS

  • Accede a ovhcloud.com
  • Elige un plan VPS según tus necesidades (RAM, CPU, almacenamiento)
  • Selecciona el sistema operativo: DebianUbuntuCentOS, etc.
  • Añade tu método de pago y finaliza la compra

2. 📩 Accede a tu VPS

  • OVH te enviará un correo con:
    • IP del servidor
    • Usuario (normalmente root)
    • Contraseña o clave SSH

3. 🔐 Conéctate por SSH

Desde tu terminal (Linux/macOS) o PuTTY (Windows):

bash

ssh root@IP_DEL_SERVIDOR

Reemplaza IP_DEL_SERVIDOR por la IP que te dio OVH

4. 🔧 Actualiza el sistema

Una vez dentro, ejecuta:

bash

apt update && apt upgrade -y   # Para Debian/Ubuntu
yum update -y                  # Para CentOS

5. 🔥 Configura el firewall

Instala y configura ufw (Ubuntu/Debian):

bash

apt install ufw
ufw allow ssh
ufw enable

6. Instala tu stack web (ejemplo: Apache + PHP + MySQL)

bash

apt install apache2 php mysql-server -y

Puedes adaptar esto si prefieres Nginx o MariaDB

7. 🌐 Apunta tu dominio

  • Ve a tu panel de OVH > DNS
  • Añade un registro A apuntando a la IP del VPS
  • Espera la propagación (puede tardar hasta 24h)

8. 🔒 Instala SSL gratuito con Let’s Encrypt

bash

apt install certbot python3-certbot-apache -y
certbot --apache

9. Seguridad adicional

  • Cambia el puerto SSH si lo deseas (/etc/ssh/sshd_config)
  • Crea un usuario no root para tareas diarias
  • Activa copias de seguridad si OVH lo permite
RAM del VPS

RAM del VPS

La cantidad de memoria RAM que debe tener un VPS para albergar una web depende de varios factores, principalmente del tipo de sitio web que vas a alojar y la cantidad de tráfico que esperas. No hay una respuesta única, pero puedo darte una guía general y algunos ejemplos:

Factores a considerar:

  • Tipo de sitio web:
    • Sitios web estáticos (HTML, CSS, JavaScript): Requieren menos recursos.
    • Sitios web dinámicos (WordPress, Joomla, Drupal): Necesitan más recursos, especialmente si usan bases de datos y plugins.
    • Tiendas online (eCommerce): Demandan muchos recursos debido a la gestión de productos, carritos de compra y transacciones.
    • Aplicaciones web complejas: Exigen la mayor cantidad de recursos.
  • Tráfico esperado: A mayor tráfico, mayor necesidad de RAM para manejar las peticiones simultáneas.
  • Software del servidor: Algunos servidores web (como Apache) consumen más recursos que otros (como Nginx).
  • Base de datos: Si usas una base de datos (MySQL, PostgreSQL), esta también consumirá RAM.
  • Sistema operativo: El sistema operativo del VPS también utiliza una porción de la RAM.

Recomendaciones generales:

  • Sitios web sencillos con poco tráfico (blogs personales, páginas informativas): 1 GB a 2 GB de RAM pueden ser suficientes.
  • Sitios web con tráfico moderado (blogs con muchos artículos, pequeñas empresas): 2 GB a 4 GB de RAM son recomendables.
  • Sitios web con alto tráfico (tiendas online, foros, aplicaciones web): 4 GB de RAM o más son necesarios.

Ejemplos más concretos:

  • WordPress con pocos plugins y tráfico bajo: 1 GB a 2 GB de RAM.
  • WordPress con muchos plugins y tráfico moderado: 4 GB de RAM.
  • Tienda online con WooCommerce: 4 GB a 8 GB de RAM o más, dependiendo del catálogo y el tráfico.

Más allá de la RAM:

Recuerda que la RAM no es el único factor a tener en cuenta. También son importantes:

  • CPU: Un buen procesador es crucial para el rendimiento del servidor.
  • Almacenamiento: El tipo de almacenamiento (SSD, NVMe) influye en la velocidad de carga.
  • Ancho de banda: Un buen ancho de banda asegura una conexión rápida.

Monitoreo y escalabilidad:

Es importante monitorear el uso de recursos del VPS. Si notas que la RAM se está agotando, es hora de escalar a un plan con más memoria. La mayoría de los proveedores de VPS ofrecen la posibilidad de aumentar los recursos fácilmente.

En resumen:

Comienza con una cantidad de RAM que consideres adecuada para tu proyecto y monitoriza el rendimiento. Si experimentas lentitud o errores, probablemente necesites más memoria. No dudes en consultar con tu proveedor de hosting, ellos te pueden asesorar según tus necesidades específicas.

Te recomiendo leer los siguientes resultados de búsqueda para complementar esta información:

Control del VPS

Control del VPS

Se puede tener el control total sobre un VPS. 

Sí, se puede tener un control significativo, y en muchos casos prácticamente total, sobre un VPS (Servidor Privado Virtual). La principal ventaja de un VPS frente a un hosting compartido es precisamente el mayor grado de control y personalización que ofrece.

Aquí te explico los aspectos clave del control que tienes sobre un VPS:

  • Acceso Root o de Administrador: En la mayoría de los casos, los proveedores de VPS te proporcionan acceso root (en Linux) o de administrador (en Windows). Esto te da privilegios completos para realizar cambios en la configuración del sistema operativo, instalar y desinstalar software, modificar archivos de configuración, gestionar usuarios y permisos, y mucho más. Esencialmente, tienes el mismo nivel de control que tendrías sobre un servidor dedicado.
  • Aislamiento del Entorno: Un VPS funciona como un entorno aislado dentro de un servidor físico. Aunque varios VPS comparten los recursos físicos de un mismo servidor, cada uno opera de forma independiente, con su propio sistema operativo, recursos asignados (CPU, RAM, almacenamiento) y configuraciones. Esto significa que las acciones de otros usuarios en sus respectivos VPS no te afectarán, y viceversa.
  • Instalación de Software: Tienes la libertad de instalar cualquier software compatible con el sistema operativo de tu VPS. Esto incluye servidores web (como Apache o Nginx), bases de datos (como MySQL o PostgreSQL), lenguajes de programación (como PHP, Python o Node.js), y cualquier otra aplicación que necesites.
  • Configuración del Servidor: Puedes ajustar la configuración del servidor según tus necesidades. Esto incluye la configuración de la red, la seguridad (firewall, reglas de acceso), la optimización del rendimiento, y mucho más.
  • Elección del Sistema Operativo: En muchos casos, puedes elegir el sistema operativo que deseas instalar en tu VPS (por ejemplo, diferentes distribuciones de Linux como Ubuntu, CentOS o Debian, o Windows Server).
  • Control sobre los Recursos: Si bien los recursos están asignados por tu plan de VPS, tienes control sobre cómo se utilizan. Puedes monitorear el uso de CPU, RAM y almacenamiento, y optimizar la configuración para un mejor rendimiento.

Limitaciones al Control Total:

Aunque el control sobre un VPS es muy amplio, existen algunas limitaciones:

  • Hardware Físico: No tienes control directo sobre el hardware físico del servidor. Esto lo gestiona el proveedor de hosting.
  • Infraestructura de Red: La infraestructura de red (conexión a internet, enrutamiento, etc.) también está gestionada por el proveedor.
  • Virtualización: El software de virtualización que se utiliza para crear los VPS (como KVM o VMware) está gestionado por el proveedor.

En resumen: Un VPS te ofrece un alto grado de control y personalización sobre tu entorno de servidor, similar al de un servidor dedicado, pero a un costo menor. Tienes acceso root o de administrador, puedes instalar el software que necesites, configurar el servidor a tu gusto y controlar los recursos asignados. Si necesitas un mayor control que el que ofrece un hosting compartido, un VPS es una excelente opción.

Como configurar un VPS con OVH

Subir una página HTML a un VPS

Qué comandos ssh tengo que usar para subir una pagina html a un VPS 

Para subir una página HTML a tu VPS usando SSH, no necesitas comandos SSH para la transferencia en sí. SSH es el protocolo para conectarte de forma segura al servidor. Para transferir archivos, usarás un programa adicional que se conecta a través de SSH, como scp (Secure Copy) o sftp (SSH File Transfer Protocol).

Aquí te detallo los pasos y comandos relevantes:

Conexión SSH:

Primero, necesitas conectarte a tu VPS mediante SSH. Abre tu terminal (en macOS/Linux) o usa un cliente como PuTTY (en Windows).

  • Comando básico:ssh usuario@direccion_ip_del_vps
    • Reemplaza usuario con tu nombre de usuario en el VPS (normalmente root si es la primera vez).
    • Reemplaza direccion_ip_del_vps con la dirección IP pública de tu VPS.
  • Ejemplo: ssh root@192.168.1.100

Te pedirá la contraseña del usuario.

2. Transferencia de archivos (opciones):

Aquí tienes dos opciones principales para transferir tus archivos HTML:

  • a) scp (Secure Copy):
    • scp se usa para copiar archivos individuales o directorios completos.
    • Subir un archivo:scp archivo.html usuario@direccion_ip_del_vps:/ruta/en/el/servidor
      • Reemplaza archivo.html con el nombre de tu archivo HTML.
      • Reemplaza /ruta/en/el/servidor con la ruta donde quieres guardar el archivo en tu VPS. Por ejemplo, /var/www/html/ es una ubicación común para los archivos web.
      • Ejemplo: scp index.html root@192.168.1.100:/var/www/html/
    • Subir un directorio completo:scp -r directorio_local usuario@direccion_ip_del_vps:/ruta/en/el/servidor
      • El flag -r (recursive) es importante para copiar directorios y su contenido.
      • Reemplaza directorio_local con el nombre del directorio en tu computadora.
      • Ejemplo: scp -r mi_sitio_web root@192.168.1.100:/var/www/html/
  • b) sftp (SSH File Transfer Protocol):
    • sftp te proporciona una interfaz interactiva similar a un cliente FTP.
    • Conectar: sftp usuario@direccion_ip_del_vps
    • Comandos dentro de sftp:
      • put archivo_local: Sube un archivo local al servidor.
      • get archivo_remoto: Descarga un archivo del servidor a tu computadora.
      • cd ruta_remota: Cambia el directorio en el servidor.
      • lcd ruta_local: Cambia el directorio en tu computadora.
      • ls: Lista los archivos en el directorio remoto.
      • lls: Lista los archivos en el directorio local.
      • mkdir directorio_remoto: Crea un directorio en el servidor.
      • exit: Sale de sftp.
    • Ejemplo:sftp root@192.168.1.100 sftp> cd /var/www/html/ sftp> put index.html sftp> put estilos.css sftp> exit

Permisos (Importante):

Una vez que los archivos estén en el servidor, asegúrate de que tengan los permisos correctos para que el servidor web pueda acceder a ellos. Generalmente, los archivos HTML deben tener permisos de lectura para todos (644) y los directorios permisos de ejecución y lectura (755).

  • Comando (dentro del VPS, después de conectarte por SSH):
    • chmod 644 /var/www/html/index.html (para un archivo)
    • chmod -R 755 /var/www/html/mi_sitio_web (para un directorio y su contenido)

Resumen de comandos útiles dentro del VPS (después de la conexión SSH):

  • ls: Listar archivos y directorios.
  • cd: Cambiar de directorio.
  • pwd: Mostrar el directorio actual.
  • mkdir: Crear un directorio.
  • rm: Borrar archivos.
  • rm -r: Borrar directorios (con precaución).
  • chmod: Cambiar permisos de archivos y directorios.

Recuerda adaptar las rutas y nombres de archivo a tu configuración específica. Si tienes un servidor web configurado (como Apache o Nginx), asegúrate de que esté configurado correctamente para servir los archivos desde la ubicación donde los has subido.

Mas información VPS