Samba viene ya incluido dentro de Solaris 10 x86, en particular la 11/06 trae samba 3.0.21b, no la última 3.0.23d, que por cierto podemos conseguir desde http://www.sunfreeware.com/.
Para verificar que esta en nuestro sistema basta con hacer una busqueda en los servicios: svcs -a | grep samba
La situación es la siguiente: un grupo de estudiantes tendran acceso a archivos comunes que les serán proporcionados por su profesor. Todos podrán en principio leer, escribir y ejecutar. El laboratorio se encuentra en un segmento de red donde el server DCHP proporciona direcciones 192.168.2.X
Iniciamos creando el grupo al que van a perteneces los alumnos y los maestros, después creamos los usuarios y asignamos las contraseñas y por último con la herramienta de samba los definimos como usuarios de este servicio:
groupadd ingles
useradd -d /export/home/recurso -g ingles profesor
useradd -d /export/home/recurso -g ingles alumno
passwd profesor
passwd alumno
/usr/sfw/bin/smbpasswd -a profesor
/usr/sfw/bin/smbpasswd -a alumno
Necesitamos crear el directorio y ajustar los permisos. La partición que prefiero es la /export, pero funciona en cualquiera donde tengan suficiente espacio para contener los archivos a compartir. Los pasos a seguir son:
- Crear el directorio:
mkdir /export/home/recurso
- Asignar los permisos:
chmod 1777 /export/home/recurso
- Cambiar el propietario:
chown profesor /export/home/recurso
- Y el grupo de trabajo:
chgrp ingles /export/home/recurso
A configurar el servicio, el archivo smb.conf con su editor favorito (claro, vi)
vi /etc/sfw/smb.conf
# Seccion general
[global]
netbios name = SOLARIS10
workgroup = LAB
server string = Servidor de archivos
encrypt passwords = yes
security = user
hosts allow = 192.168.2. 127.
# El recurso compartido
[recurso]
comment = Archivos compartidos
path = /export/home/recurso
valid users = profesor, alumno
read only = no
Posteriormente hacemos la validación, solamente para estar más seguros: /usr/sfw/bin/testparm
Lo interesante esta dado por hosts allow
en donde le indicamos que solamente los hosts de la subred 192.168.2.X y localhost podrán accesar al servidor. La seguridad es por usuario (security=user
) y, los usuarios que hemos definido anteriormente serán los únicos que harán uso del recurso (valid users = profesor, alumno
). Ahora bien, esto tendría el mismo efecto: valid users = +ingles
; ya que le estamos indicando que es el grupo ingles en general y bueno, solamente tenemos los dos usuarios en ese grupo.
Verificar en seguida que en /etc/services
este definido el servicio swat con el fin de poder ver la configuración de samba con http://localhost:901. De no ser así le agregamos la línea:
swat 901/tcp # Samba swat
Y en
/etc/inetd.conf
escribimos dos líneas:netbios-ssn stream tcp nowait root /usr/sfw/sbin/smbd smbd
swat stream tcp nowait root /usr/sfw/sbin/swat swat
Con esto ya esta listo, lo demás son detalles menores, reinicar el servicio o el servidor; lo que haga falta.