6.4.2.1. Preliminares¶
Antes de instalar samba, debe tenerse convenientemente configurado el servidor.
6.4.2.1.1. Red¶
Dado que queremos montar el servidor en la red interna, dejaremos in fichero
/etc/network/interfaces
con este aspecto:
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
allow-hotplug eth0
iface eth0 inet dhcp
address 192.168.1.20/24
gateway 192.168.1.1
up iptables -t nat -A POSTROUTING -o $IFACE -j MASQUERADE
down iptables -t nat -D POSTROUTING -o $IFACE -j MASQUERADE
# Interfaz en la red interna
allow-hotplug eth1
iface eth1 inet static
address 192.168.255.1/24
Obsérvese que se ha dejado que la interfaz externa reciba su configuración de un
servidor DHCP. Puede también configurarse de modo estático (que además sería
lo más normal), pero si se hace como se propone aquí nos encontraremos con el
inconveniente de que la configuración dinámica alterará el fichero
/etc/resolv.conf
en que se define el dominio de búsqueda y los
servidores DNS que se usan. Nuestra intención es evitarlo así que podemos
añadir a /etc/dhcp/dhclient.conf
las siguientes líneas:
# cat >> /etc/dhcp/dhclient.conf
interface "eth0" {
supersede domain-name "iespjm.domus";
supersede domain-search "iespjm.domus";
supersede domain-name-servers 127.0.0.1;
}
que forzarán a que sean esos los datos incluidos en /etc/resolv.conf
.
Nota
Como el cliente dhclient no estaba configurado de este modo en el momento de obtener ip, si echamos un vistazo al fichero, veremos que no tiene los valores adecuados. No importa y, además, es necesario que siga así, puesto que como aún no tenemos servidor DNS seríamos incapaces de descargar paquetes.
6.4.2.1.2. Hostname¶
El nombre del controlador de dominio pretendemos que sea dc, de modo que debemos hacer lo siguiente:
# hostname dc
# hostname > /etc/hostname
Además deberíamos dejar así en /etc/hosts
la línea referida a la propia
máquina:
192.168.255.1 dc.iespjm.domus dc
Hecho esto, debería ocurrir lo siguiente:
$ hostname
dc
$ hostname -d
iespjm.domus
6.4.2.1.3. Sistema de ficheros¶
Hay que asegurarse de que el sistema de ficheros que compartiremos con samba[1] soporta atributos extendidos de usuarios y
permisos ACL. Lo habitual en linux es que usemos ext4 y este
ya tiene habilitadas estas dos características por defecto. De todos modos,
podemos cercionarnos revisando las opciones de montaje de la partición
/dev/VGserver/samba
, que es en la que se supone que almacenaremos los
ficheros que compartamos mediante el servidor:
$ grep -E '(acl|user_xattr)' /proc/fs/ext4/$(basename `readlink /dev/VGserver/samba`)/options
user_xattr
acl
Si no aparecen las dos opciones, habrá que corregirlo modificando la entrada en /etc/fstab.
Nota
La razón de que la orden se haya complicado de tal manera es
debido a que en nuestro servidor de pruebas no tenemos particiones, sino
volúmenes lógicos. Si el sistema de ficheros hubiera estado sobre una
partición normal como sda4
la ruta habría tan simple como
/proc/fs/ext4/sda4/options
.
6.4.2.1.4. Servidor de hora¶
Es absolutamente indispensable que todos los ordenadores de la red tengan sincronizada su hora, por lo que es inevitable instalar un servidor de hora. No entraremos aquí a analizar concienzudamente cómo se configura uno, pero indicaremos una configuración que puede valernos:
1# Politica predeterminada 2restrict default ignore 3 4restrict 127.0.0.1 5restrict ::1 6 7driftfile /var/lib/ntp/ntp.drift 8#ntpsigndsocket /var/lib/samba/ntp_signd 9 10# Servidor del Real Observatorio de la Armada. 11server hora.roa.es iburst 12restrict hora.roa.es mask 255.255.255.255 nomodify notrap noquery 13 14# Hora local, en caso de que no haya conexión a internet. 15server 127.127.1.0 16fudge 127.127.1.0 stratum 10 17 18#broadcastdelay 0.008 19restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap 20restrict 192.168.255.0 mask 255.255.255.0 nomodify notrap mssntp
La únicas novedades de esta configuración son dos:
La línea 8 que permite comunicar mediante socket al servidor de hora con samba[2]. Permanecerá comentada hasta que dispongamos de este último.
La directiva restrict para las red interna (línea 20) que ha añadido mssntp porque los clientes exigen que los paquetes de hora vayan firmados.
6.4.2.1.5. Servidor DHCP¶
Este servicio no tiene relación alguna con samba, pero es común que se
encuentre habilitado en una red local, así que lo instalaremos también según
lo estudiado en el epígrafe correspondiente. La configuración es
muy sencilla y basta con crear un /etc/dhcp/dhcpd.conf
:
# /etc/dhcp/dhcpd.conf
authoritative;
ddns-update-style none;
default-lease-time 6000;
max-lease-time 7200;
subnet 192.168.255.0 netmask 255.255.255.0 {
option domain-name-servers 192.168.255.1;
option domain-name "iespjm.domus";
# option domain-search "iespjm.domus";
option routers 192.168.255.1;
option broadcast-address 192.168.255.255;
range 192.168.255.100 192.168.255.150;
}
Notas al pie