Start typing to search across invoices, services, domains, tickets, and more...
Los servidores nuevos suelen funcionar en UTC, por lo que las marcas de tiempo de los logs no coinciden con su hora local, y un reloj desajustado rompe la verificación de certificados HTTPS, las tareas de cron y los códigos de verificación en dos pasos. Esta guía muestra cómo cambiar la zona horaria en Linux con timedatectl, activar la sincronización horaria por NTP con chrony, cambiar el hostname y /etc/hosts, y configurar correctamente los servidores DNS tanto si el sistema usa systemd-resolved, NetworkManager o un resolv.conf simple. Cubre Debian/Ubuntu y Rocky Linux/AlmaLinux.
Revise el estado actual y elija un nombre de zona de la lista: Asia/Hong_Kong para Hong Kong, Asia/Tokyo para Japón, Europe/Moscow para Rusia. Si el servidor atiende a usuarios de muchas regiones, mantener UTC es una opción perfectamente válida. Cambiar la zona no modifica la hora real, solo cómo se muestra; reinicie los servicios de larga ejecución, como PHP-FPM o MySQL, para que adopten la nueva zona.
timedatectl # current time, time zone, NTP status
timedatectl list-timezones | grep -E 'Asia|UTC'
timedatectl set-timezone Asia/Hong_Kong # e.g. Asia/Tokyo, Asia/Shanghai, Europe/Moscow, UTC
timedatectl set-local-rtc 0 # keep the hardware clock in UTC
date
chrony mantiene la hora exacta incluso en redes inestables. Es el servicio predeterminado en Rocky/AlmaLinux y, en Debian/Ubuntu, sustituye a systemd-timesyncd al instalarlo. En la salida, la línea marcada con ^* es la fuente en uso, y chronyc tracking muestra la desviación actual.
# Debian / Ubuntu (sustituye a systemd-timesyncd)
apt install -y chrony
systemctl enable --now chrony
# Rocky Linux / AlmaLinux
dnf install -y chrony
systemctl enable --now chronyd
timedatectl set-ntp true
chronyc sources -v # "^*" marks the server currently in use
chronyc tracking # "System time" shows the current offset
El pool predeterminado de la distribución suele ser suficiente. Para elegir servidores concretos, edite las líneas pool/server de la configuración de chrony. makestep permite a chrony saltar el reloj cuando la desviación es grande justo después del arranque. Su firewall debe permitir el tráfico saliente por el puerto UDP 123.
# Archivo de configuración: /etc/chrony/chrony.conf (Debian/Ubuntu) o /etc/chrony.conf (Rocky/AlmaLinux)
# Sustituya o añada las líneas de servidor, por ejemplo:
pool pool.ntp.org iburst
server time.cloudflare.com iburst
makestep 1.0 3
# Aplicar y ajustar el reloj de inmediato si la desviación es grande
systemctl restart chrony # chronyd on Rocky/AlmaLinux
chronyc makestep
hostnamectl aplica el cambio de inmediato y lo mantiene tras reiniciar. Después añada el nuevo nombre a /etc/hosts; de lo contrario, sudo puede mostrar el aviso «unable to resolve host» y algunos programas de correo o bases de datos arrancan lentamente. En imágenes con cloud-init, configure preserve_hostname para que un reinicio no revierta el cambio. El prompt de la shell muestra el nuevo nombre después de volver a conectarse por SSH.
hostnamectl set-hostname web01.example.com
hostnamectl
# /etc/hosts - hacer que el nuevo nombre se resuelva localmente
127.0.0.1 localhost
127.0.1.1 web01.example.com web01 # Debian/Ubuntu convention
# o asociarlo a la IP pública del servidor:
# 203.0.113.10 web01.example.com web01
# Imágenes con cloud-init: evitar que restablezca el hostname al reiniciar
grep -n preserve_hostname /etc/cloud/cloud.cfg
sed -i 's/^preserve_hostname:.*/preserve_hostname: true/' /etc/cloud/cloud.cfg
Cada distribución gestiona el DNS de forma distinta, y si edita /etc/resolv.conf directamente, el cambio puede sobrescribirse en el siguiente reinicio. Compruebe si el archivo es un enlace simbólico o un archivo normal y si empieza con un comentario «Generated by» antes de decidir cómo modificarlo.
ls -l /etc/resolv.conf
# -> ../run/systemd/resolve/stub-resolv.conf : managed by systemd-resolved (Ubuntu)
# -> regular file "Generated by NetworkManager": managed by NetworkManager (Rocky/AlmaLinux)
# -> regular file without such comment : edited by hand (common on Debian)
resolvectl status 2>/dev/null | head -n 20
Elija un método según el paso anterior: un archivo drop-in para systemd-resolved en Ubuntu, nmcli en Rocky/AlmaLinux (use el nombre de conexión que muestra nmcli con show) o la edición directa de resolv.conf en Debian clásico. Por último, pruebe la resolución de nombres con getent.
# A) systemd-resolved (Ubuntu y algunas instalaciones de Debian)
mkdir -p /etc/systemd/resolved.conf.d
cat > /etc/systemd/resolved.conf.d/dns.conf <<'EOF'
[Resolve]
DNS=1.1.1.1 8.8.8.8 2606:4700:4700::1111
FallbackDNS=9.9.9.9
EOF
systemctl restart systemd-resolved
resolvectl status
# B) NetworkManager (Rocky Linux / AlmaLinux)
nmcli -t -f NAME,DEVICE con show --active
nmcli con mod "System eth0" ipv4.dns "1.1.1.1 8.8.8.8" ipv4.ignore-auto-dns yes
nmcli con up "System eth0"
# C) /etc/resolv.conf simple (Debian con ifupdown)
cat > /etc/resolv.conf <<'EOF'
nameserver 1.1.1.1
nameserver 8.8.8.8
options timeout:2 attempts:2
EOF
# Prueba
getent hosts www.imidc.com
nmcli con up recarga brevemente la interfaz de red, y un error puede cortar su sesión SSH. Verifique bien el nombre de la conexión y, si es posible, trabaje desde la consola disponible en el área de cliente.Normalmente el puerto UDP 123 está bloqueado por un firewall o el DNS no puede resolver los nombres de los servidores NTP. Revise primero el DNS y después permita el tráfico saliente UDP 123 o cambie a servidores NTP accesibles.
Es el stub local de systemd-resolved y es lo esperado. Ejecute resolvectl status para ver los servidores reales y cámbielos con el método A del paso 6.
Normalmente no, pero actualice cualquier servidor de correo, aaPanel (BaoTa) o permisos de base de datos que hagan referencia al nombre antiguo. El hostname de un servidor de correo también debe coincidir con su registro rDNS (PTR); consulte nuestro tutorial de rDNS/PTR.
¿Sigue con problemas después de seguir estos pasos? Abra un ticket de soporte y el equipo técnico de IMIDC, disponible 24/7, le ayudará. Incluya la IP del servidor, la versión del sistema operativo, los comandos que ejecutó y la salida completa del error para que podamos localizar el problema más rápido.