He montado un servidor CentOS y quiero que se conecte a la red automáticamente por wifi, o por cable si está disponible. Esto, en principio, sirve también para Fedora, RHEL, o derivados, que utilice NetworkManager para las conexiones.
Tiene gracia, porque NetworkManager originalmente es un proyecto de GNOME, pero aun usándolo en un servidor sin interfaz gráfica facilita mucho la vida.
Configurar conexión por cable ethernet
# echo '# Configuración de eth0 # Indicar que quieres que NetworkManager use esta conexión MODE=Managed # Tipo de conexión TYPE=Ethernet # Configurar una IP estática BOOTPROTO=static IPADDR=192.168.1.2 # Puerta de enlace (IP del router) GATEWAY=192.168.1.1 # Quiero que se conecte al encender ONBOOT=yes # Quiero que intnente conectar por IPV6 IPV6INIT=yes IPV6_AUTOCONF=yes IPV6_PRIVACY=rfc3041 # Le pondré un nombre, que me ha caído bien NAME=home # Esta opción siempre será "yes" salvo para conexiones PPP (3G) DEFROUTE=yes # Quiero que obtengas los DNS del router PEERDNS=yes ' > /etc/sysconfig/network-scripts/ifcfg-eth0
Configurar la conexión automática por Wifi
# echo '# Configuración de wlan0 # Indicar que quieres que NetworkManager use esta conexión MODE=Managed # Tipo de conexión TYPE=Wireless # Tipo de contraseña KEY_MGMT=WPA-PSK WPA_ALLOW_WPA=yes WPA_ALLOW_WPA2=yes # Nombre de la red ESSID="ONO1AE0" # Configurar una IP estática BOOTPROTO=static IPADDR=192.168.1.2 # Puerta de enlace (IP del router) GATEWAY=192.168.1.1 # Quiero que se conecte al encender ONBOOT=yes # Quiero que intnente conectar por IPV6 IPV6INIT=yes IPV6_AUTOCONF=yes IPV6_PRIVACY=rfc3041 # Le pondré un nombre, que me ha caído bien NAME="Wifi de mi casa" # Esta opción siempre será "yes" salvo para conexiones PPP (3G) DEFROUTE=yes # Quiero que obtengas los DNS del router PEERDNS=yes ' > /etc/sysconfig/network-scripts/ifcfg-wlan0
Para la conexión WLAN también hay que crear un segundo fichero en que se encuentra la clave WPA, el cual protegeremos para que solo rootpueda verla.
# echo '# Contraseña de la red wifi WPA_PSK="clave-de-red" ' > /etc/sysconfig/network-scripts/keys-wlan0 # chmod u=rw,go= /etc/sysconfig/network-scripts/keys-wlan0
Configurar NetworkManager para que arranque automáticamente al inicio
# chkconfig --level 345 NetworkManager on
Eso de 345 significa que queremos que arranque automáticamente en los runlevels 3, 4 y 5. Puede que en tu caso solo quieras que pase en el 5, por ejemplo.
Hecho esto, reinicia y debería conectarse por cable si está disponible, y si no por wifi, obteniendo la IP estática que le hemos asignado.
Tienes mucha más información en español en el artículo Configuración de parámetros de red en GNU/Linux, de Alcance Libre.