Un servidor tiene un nombre corto y un nombre completamente cualificado, y tres cosas distintas tienen que coincidir sobre ellos: el núcleo, el archivo hosts y el DNS. Fija uno y no los demás y todo parecerá funcionar hasta que se rechace un correo o sudo se pare diez segundos en cada orden.
Fíjalo
sudo hostnamectl set-hostname web1.example.com
hostnamectl
Después el archivo hosts
Esta es la parte que suele pasarse por alto. La máquina debe poder resolver su propio nombre sin preguntar al DNS.
# /etc/hosts
127.0.0.1 localhost
127.0.1.1 web1.example.com web1
La pausa de diez segundos antes de cada orden sudo viene de este archivo. sudo busca el nombre de host, la consulta agota su tiempo y luego sigue con normalidad.
Después el DNS
Un registro A para web1.example.com apuntando al servidor, y un registro inverso desde la IP de vuelta a ese nombre. El registro directo lo controlas tú; el inverso lo fija quien posee la IP, es decir tu proveedor.
Por qué al correo le importa
- Un servidor receptor comprueba que el nombre que tu servidor anuncia en el HELO se resuelve, y que la IP se resuelve de vuelta a él.
- Un desajuste es una de las señales de spam más fuertes que existen, y se aplica antes incluso de leer tu contenido.
- Es la misma comprobación descrita en DNS inverso para un servidor de correo.
Confirma
hostname -f # the fully qualified name
getent hosts $(hostname -f)
dig +short web1.example.com
Haz esto antes de instalar nada. Varios paquetes leen el nombre de host al instalarse y lo escriben en su propia configuración, así que cambiarlo después obliga a editarlos todos.
