Autor: David Barbero
Fecha de creación: 8 de marzo de 2004 09:57:21 CET
Cuantas veces os habéis preguntado como podría hacer para que los ordenadores de mi red puedan acceder de una manera fácil a los datos que tengo en el servidor? Bien, pues esa misma pregunta es la que vamos a intentar responder aquí. Trataremos de explicar de una forma fácil y sencilla la manera de configurar nuestro servidor para que pueda acceder desde distintos sistemas, ya sea Unix/Linux, windows o Macintosh.
Como todos sabreis, la forma más sencilla y mejor pensada para compartir ficheros entre diferentes Unix, es NFS (Network FileSystem), Que es compatible con todo tipo de Unix/Linux.
Este protocolo viene completamente integrado en el sistema y con todo lo necesario para funcionar.
El principal archivo de configuración para que nfs funcione, es /etc/exports que principalmente está formado por el directorio que compartimos, los permisos que le damos y que ordenadores pueden acceder. Veamos un ejemplo:
# Exportamos src y ports a client01 y client02, pero solo # client01 tiene privilegios de root. /usr/src /usr/ports -maproot=root client01 /usr/src /usr/ports client02
Como veis es muy sencillo, solo tenemos que definir el directorio que queremos compartir, los privilegios que le queremos das, si es que le damos alguno y que ordenadores pueden acceder a el. En este caso el nombre de el ordenador está definido en un servidor dns o en el archivo /etc/hosts, pero se pueden sustituir por las direcciones IP de cada ordenador. Para más información puedes consultar la página del manual de exports(5) y la de hosts(5).
Una vez que ya tenemos nuestro archivo configurado a nuestro gusto, solo nos queda arrancar los servicios oportunos para que funcione. Para que dichos servicios funcionen desde el inicio del sistema, tenemos que modificar el archivo /etc/rc.conf en el cual debemos introducir las siguientes líneas:
portmap_enable="YES" nfs_server_enable="YES"
Esto hará que nfsd arranque cuando el sistema se inicie, pero si queremos arrancarlo sin reiniciar el servidor, ejecutaremos:
server #portmap server #mountd server #nfsd
Y con esto ya tenemos configurada la parte de el servidor.Para la parte del cliente es bastante facil, tan solo tenemos que introducir la siguiente línea en el archivo /etc/rc.conf (Solo en FreeBSD)
nfs_client_enable="YES"
Despues de introducir esta línea solo nos queda montar el recurso que hemos compartido en el servidor:
client01 #mount server:/usr/src /usr/src
Con esto ya lo tenemos montado en el cliente, si queremos que cuando iniciemos el cliente se monte automaticamente, tenemos que configurarlo en el archivo /etc/fstab, en este caso el archivo tendria una línea como esta:
server:/usr/src /usr/src nfs rw 0 0
Para má información puedes consultar la página del manual de fstab(5).
No es de estrañar que bastantes personas tengan algún Mac con alguna versión de MacOS, FreeBSD tambien soporta el protocolo principal de apple para compartir archivos, este protocolo es Appletalk. En FreeBSD no existe demasiada documentación referente a este protocolo, asi que lo explicaremos un poco para que nos hagamos una idea de como configurarlo.
Lo primero que tenemos que hacer para dar soporte a este protocolo necesitamos recompilar el kernel de nuestro sistema, debemos intruducir la siguiente línea en nuestro archivo de configuración del kernel:
options NETATALK # AppleTalk
Si alguno no sabe como recompilar el kernel, le remito a la página del handbook correspondiente.
Una vez recompilado e instalado el kernel con soporte para AppleTalk, necesitaremos instalar un port que se llama netatalk.
server # cd /usr/ports/net/netatalk server # make install clean
Una vez que tenemos el port instalado, nos aseguramos que el programa instalado nos arranca al iniciar el sistema.
server #cd /usr/local/etc/rc.d server #cp netatalk.sh.sample netatalk.sh
Y modificamos el archivo /usr/local/etc/AppleVolumes.default. Este archivo en principio está en blanco, si no lo tocamos, tendremos acceso a los homes de cada usuario. Ya solo nos queda arrancar el appletalk para que nuestros MacOS puedan acceder:
server #/usr/local/etc/rc.d/netatalk.sh start
Ya tenemos el servidor de archivos para Mac funcionando, ahora solo nos queda ir a nuestros Mac, activar el appletalk, entrar en el selector y acceder a nuestro servidor.
Para que nuestras estaciones Windows puedan acceder a los datos que tenemos en nuestro servidor FreeBSD, necesitaremos instalar Samba. Asi que, vamos a instalar y configurar samba dando una pequeña explicación.
Lo primero instalamos samba desde los ports:
server #cd /usr/ports/net/samba server # make install clean
Una vez que ya tenemos instalado samba, solo nos queda configurarlo y arrancarlo para que funcione. Para configurarlo:
server #cd /usr/local/etc server #cp smb.conf.default smb.conf
El archivo de configuración de samba no tiene demasiada complicidad, pondré uno simple e iré explicandolo poco a poco.
[global] workgroup = CASA log file = /var/log/samba/log.%m socket options = TCP_NODELAY guest account = nobody netbios name = server encrypt passwords = yes server string = Servidor de Archivos security = share time server = yes unix password sync = true passwd program = /usr/bin/passwd %u passwd chat = *Enter\snew\sUNIX\spassword:* %n\n *Retype\snew\sUNIX\spassword:* %n\n . [homes] comment = Home Directories browseable = no read only = no create mode = 0750
Como veis, consta de una zona global, [global] y una donde se van definiendo los directorios que vamos a compartir. Vamos esplicando un poco cada parametro para que os hagais una idea de que hay que configurar:
Una vez que lo tenemos configurado, tan solo nos queda arrancar el servidor y dejarlo preparado para que se ejecute cuando inicie el sistema.
server #cd /usr/local/etc/rc.d server #cp samba.sh.sample samba.sh server #/usr/local/etc/rc.d/samba.sh start
Y con esto ya tenemos el sistema preparado para que arranque samba al inicio de el sistema y ya también lo hemos arrancado, por lo cual, si ahora desde una estación de trabajo windows accedemos al entorno de red, veremos que nuestro servidor ya aparece y podemos acceder a el.
Bien, pues con esto ya tenemos configurado nuestro servidor para que nuestras distintas estaciones de trabajo puedan acceder a nuestro servidor FreeBSD, espero que este documento os sea de ayuda. Dudas, correcciones y demás, no dudeis en mandarme un correo para decirmelo.