¿Cuál es el propósito de avahi en un servidor RHEL 7?

19

Al ejecutar una máquina servidor con CentOS 7, noté que el servicio avahi se ejecuta de manera predeterminada.

Me pregunto cuál es el propósito de esto.

Una cosa que parece hacer (en mi entorno) es deshabilitar aleatoriamente la conectividad IPv6, que se ve así en los registros:

Oct 20 12:23:29 example.org 
  avahi-daemon[779]: Withdrawing address record for fd00::1:2:3:4 on eno1
Oct 20 12:23:30 example.org
  Withdrawing address record for 2001:1:2:3:4:5:6:7
Oct 20 12:23:30 example.org
  Registering new address record for fe80::1:2:3:4 on eno1.*.

(los sufijos 1:2:3...están compuestos)

Y, de hecho, después de eso, la 2001:1:2:3:4:5:6:7dirección IPv6 pública ya no es accesible.

Por eso he deshabilitado el servicio avahi a través de:

# systemctl disable avahi-daemon.socket avahi-daemon.service
# systemctl mask avahi-daemon.socket avahi-daemon.service
# systemctl stop avahi-daemon.socket avahi-daemon.service

Hasta ahora no he notado ninguna limitación.

Por lo tanto, mi pregunta sobre los casos de uso de avahi en un sistema de servidor.

maxschlepzig
fuente

Respuestas:

21

Avahi es la implementación de código abierto de Bonjour / Zeroconf.

extracto - http://avahi.org/

Avahi es un sistema que facilita el descubrimiento de servicios en una red local a través del conjunto de protocolos mDNS / DNS-SD. Esto le permite conectar su computadora portátil o computadora a una red y ver instantáneamente a otras personas con las que puede chatear, encontrar impresoras para imprimir o encontrar archivos compartidos. La tecnología compatible se encuentra en Apple MacOS X (marca Bonjour y, a veces, Zeroconf).

Una descripción más detallada está aquí junto con el artículo de Wikipedia . El artículo de ArchLinux es más útil, especificando los tipos de servicios que pueden beneficiarse de Avahi.

En el pasado, generalmente lo deshabilitaba en los servidores, ya que a todos los servidores que he administrado en el pasado se les informó explícitamente sobre los diversos recursos a los que necesitaba acceder.

Los dos grandes beneficios de Avahi son la resolución de nombres y la búsqueda de impresoras, pero en un servidor, en un entorno administrado, tiene poco valor.

slm
fuente
Solo quería comentar sobre todo la primera respuesta: "... pero en un servidor, en un entorno administrado, tiene poco valor". El objetivo de ejecutar avahi en un servidor es que anuncie sus servicios a los clientes. Por lo tanto, tiene mucho sentido tenerlo en un servidor. Pero para recibir anuncios del servidor, también necesita avahi en el cliente (a menos que sea una Mac). En general, también necesita clientes que hagan uso de avahi para encontrar servicios.
Supresión solicitada
2
@TommySvensson, tal vez uno tiene que diferenciar entre 'servidores domésticos' (en una red confiable) y servidores de Internet 'reales' que alojan sitios web, proporcionan servicios de correo, etc. (en una especie de entorno hostil). AFAIU, avahi está sangrado para el uso de la red doméstica, es decir, donde ni siquiera puede distinguir realmente entre cliente y servidor (es decir, donde muchas máquinas que brindan servicios también son clientes).
maxschlepzig
@TommySvensson: en las configuraciones del centro de datos que he tratado durante mi carrera, las diversas comunicaciones que se permiten entre un grupo de servidores y otro están estrechamente controladas (conectividad tipo puerto @ host) y algo como lo haría Avahi realmente no sirven para nada, y ni siquiera se les permitiría trabajar dada la naturaleza restrictiva de las comunicaciones que están permitidas.
slm
2
Parece inútil y problemático. Siempre lo desinstalo. Ni siquiera me molestaré en descubrir cómo deshabilitarlo.
sudo
5

Es posible que desee ejecutar lo siguiente

systemctl disable avahi-daemon.socket avahi-daemon.service 

Sin embargo, tenga en cuenta que lo anterior deshabilitará avahi solo temporalmente. Para evitar la habilitación automática, debe enmascararse:

systemctl mask avahi-daemon.socket avahi-daemon.service 

¿Por qué, oh, por qué los proveedores crean paquetes que fuerzan las dependencias de avahi?

Lee J
fuente
66
¿Por qué usar una secuencia de comandos cron cuando puede simplemente systemctl maskusarlos y nunca tener que preocuparse de que se habiliten nuevamente?
Michael Hampton