QUE ES SAMBA
Samba es el protocolo de comunicaciones que permite configurar maquinas con sistema operativo UNIX (LINUX, HP-UX, AIX, IRIX, etc) como servidores de ficheros e impresoras SMB, ademas de servidor de nombres NetBios (NBNS). Atraves de estos protocolos podemos compartir archivos de Windows con Samba.
Paso
0: Descargando
la Distribución.
Bajar
el fuente o binarios
La
ultima versión la podemos bajar de los sitios FTP que podemos encontrar en www.samba.org,
El archivo se llama samba-latest.tar.gz (latest significa ultimo).
Preferiblemente bajarlo en el root de Linux o guardarlo en un CD–Rom.
Descomprimirlo
desde el root
gzip –dv samba-lastest.tar.gz
(se descomprimirá parcialmente)
tar –xvf samba-lastest.tar
(Extraerá el fichero samba-latest.tar en el directorio actual)
La
opción f, le dice a tar
que el siguiente argumento samba-latest.tar es el nombre del archivo a crear.
La opción v fuerza a tar en el modo verbose, (osea
mostrando en pantalla el progreso de la tarea que realiza, en este caso los
nombres de los ficheros según se archivan) y la x extrae el archivo.
ls –al
(para listar lo que hemos descomprimido)
Si tenemos el archivo samba-latest.tar.gz en el cd-rom, montamos el cd-rom desde el directorio raiz, con la instrucción:
/#mount ../mnt/cdrom
Abra el directorio mnt: #cd mnt y el directorio cdrom: mnt#cd cdrom
copiar el archivo samba-latest.tar al root, de la siguiente forma:
cdrom#cp samba-latest.tar.gz ../../root
luego puede descomprimir como se realizo en los pasos anteriores.
Paso
1: Estructuración
de los Binarios.
Crear
el Makefile
Esto
es lo que hacemos cuando utilizamos "./configure". No hay mucha
ciencia en este paso, aunque "./configure --help" nos dará una ayuda
de parámetros adicionales que nos pueden servir.
Automáticamente se configurara Samba para su sistema de
operaciones
Pasos
a seguir:
#cd
samba 2.2.5
#cd source
source# ./configure
Compilar
Samba
source#make
Estando
en el directorio /source, ejecutemos el comando make, esto creara
los Binarios,
Ademas crea los siguientes clientes:
Instalar
Samba
Ahora
ejecutemos "make install". Si la compilacion no ha producido
errores puede utilizar 'make install', esto creara directorios y copiara
archivos a los mismos, instalara los Binarios y páginas del manual.
source#
make install
Los
directorios que se crean son los siguientes:
/usr/local/samba
- Raiz de los demas directorios
/usr/local/samba/bin
- Los binarios de Samba
/usr/local/samba/lib
- smb.conf, lmhosts, etc. Si estamos utilizando una distribución binaria, lo
mas probable es que estos archivos esten en /etc.
/usr/local/samba/man
- Paginas del manual
/usr/local/samba/private
- Archivo encriptado de claves
/usr/local/samba/swat
- Archivos de la aplicación SWAT
/usr/local/samba/var
- Archivos de registro, de bloqueo, y demas misceláneos.
Atención,
en las distribuciones binarias esta estructura no es así generalmente! Los
binarios están en /usr/sbin, por darles un ejemplo.
Paso
2: Cree
el archivo de configuración smb.conf
Configurar
Samba
La
configuración de todo Samba se basa en el archivo smb.conf. Este archivo
puede ser muy simple, o verdaderamente complejo, este archivo te permitirá
iniciar los demonios y ver que todo esta funcionando como debiera; este fichero
deberá estar ubicado en el directorio /usr/local/samba/lib.
Puede editar este archivo a través del editor VI de Linux ó pico:
[global]
#
WORKGROUP: Nombre del grupo de trabajo o dominio en WINDOWS
workgroup
= SANFRANCISCO
netbios
name = SAMBA
#HOSTS
ALLOW: Aquí autorizamos las máquinas de nuestra red
#hosts
allow = 10.10.9. 255.255.255.0
#
SERVER STRING: Descripción del servidor
server
string = SERVIDOR SAMBA LINUX
#
Por favor lea ENCRYPTION.txt, Win95.txt and WinNT.txt en la
#
documentación de Samba.
#
No active estas opciones sin haber leído este documento
encrypt
passwords = yes
smb
passwd file = /etc/samba/smbpasswd
#
Definición de fólder compartidos
[homes]
comment = Carpetas de cada usuario
browseable
= yes
writable = yes
[Publico]
comment = Carpeta general accesible a todos los usuarios
path = /publico _ samba
available = yes
public = yes
writable = yes
browseable = yes
quest = ok
La
sección [global] es donde se introducen los parámetros que se aplicarán
al servidor o se usarán como parámetros predeterminados para algunas
secciones, por ejemplo, el grupo de trabajo al que pertenece el servidor SAMBA (workgroup).
La
sección [homes] Directorios personales, hace que un directorio personal
de cada usuario esté disponible desde una máquina Windows con su nombre de
usuario y contraseña, y permite a los usuarios remotos acceder a sus
respectivos directorios principales en la máquina Linux local.
path
indica donde está en la máquina Linux el directorio que se quiere poner como
recurso compartido.
Paso
3: Testeando
su archivo config con testparm.
Es
importante probar la validez de su archivo smb.conf que usa el
programa testparm en usr/local/samba/bin.
Si testparm corre ¡Vale¡ entonces esto pondrá en una lista los
servicios cargados. Si no esto dará
un mensaje de error.
bin#./testparm
Paso
4: Comienzo
del smbd y nmbd.
Usted
debe decidir comenzar smbd y nmbd como demonios o inetd.
¡No intente hacer ambos. La ventaja principal de comenzar el método del
demonio smbd y nmbd, consiste en que ellos responden ligeramente
mas rápidamente a una petición de conexión inicial.
Comienzo
del smbd y nmbd como demonios.
Para
comenzar
el
servidor como un demonio usted debería crear un script (escritura) quizás
llamándolo startsmb, en usr/local/bin para arrancar los demonios:
#!/bin/sh
/usr/local/samba/bin/smbd
-D
Entonces
hágalo egecutable con chmod +x startsmb.
bin#
chmod +x startsmb
Usted
puede entonces controlar el startsmb a mano o ejecutarlo de /etc/rc.local.
Si
desea ver los permisos ejecute el siguiente comando.
bin#
ls –al
x es permiso de ejecución
Corra los demonio desde la huvicación (usr/local/samba/bin)
bin#./startsmb
Gestión
de usuarios y contraseñas bajo FreeBSD
FreeBSD
es un sistema operativo, que nos permite poder realizar cualquier tipo de
modificación o desarrollo sobre él, compilarlo, y comprobar los resultados.
Para
hacer Samba más seguro, tenemos que usar contraseñas encriptadas y la gestión
de usuarios de forma correcta.
Esta
opción establece el uso de contraseñas encriptadas o de texto plano para la
autenticación. Si la opción esta activada con yes en el archivo smb.conf,
Samba esperara que los clientes envíen contraseñas encriptadas:
encrypt
passwords = yes
El
fichero smbpasswd
Samba
almacena sus contraseñas encriptadas en un fichero llamado smbpasswd, que por
defecto reside en /usr/local/samba/private. El fichero smbpasswd ha de
ser guardado tan celosamente con el fichero passwd; debe ser colocado en un
directorio donde solo el usuario root tenga derechos de lectura/escritura.
Todos los demás usuarios no deberán ser capaces de leer el directorio. Además
el fichero ha de tener todos los accesos cerrados a todo el mundo excepto a
root. Movemos este archivo a: /etc/samba/smbpasswd.
Antes de que puedas usar contraseñas encriptadas, necesitas crear una entrada para cada usuario Unix en el fichero smbpasswd. La estructura de este fichero es similar a la del fichero passwd, pero tiene diferentes campos. La figura ilustra el diseño del fichero smbpasswd; La entrada que se muestra es, de hecho, una sola línea del fichero.
Figura: Estructura una entrada de fichero smbpasswd (actualmente es una sola línea)
Vamos
a ver un poco cada uno de los campos:
Username (Nombre de usuario). Este es el nombre de usuario de la cuenta. Se toma directamente del fichero de contraseñas del sistema.
UID.
Es el ID Unix del usuario. Como el nombre
de usuario, se toma directamente del fichero de contraseñas del sistema y debe
coincidir con el usuario que representa en este.
Información sobre la contraseña LAN Manager.
Es
una secuencia hexadecimal de 32 bits que representa la contraseña que
utilizaran los clientes Windows.
Información sobre la contraseña NT.
Es
una secuencia hexadecimal de 32 bits que representa la contraseña que utilizarán
los clientes NT
Datos de la cuenta.
Este
campo consiste en 11 caracteres entre 2 corchetes ([]). Cualquiera de los
siguientes caracteres puede aparecer en cualquier orden, el resto serán
espacios:
U
Esta
cuenta es una cuenta de usuario estándar de Unix.
D
Esta cuenta está desactivada y Samba no permitirá ningún acceso.
N
Esta cuenta no tiene contraseña asociada
Esta
opción global indica la localización del fichero de contraseñas encriptadas.
Por defecto, esta establecida a /usr/local/samba/private. Puedes
establecerlo a otro valor como sigue:
[global]
smb passwd file = /etc/samba/smbpasswd
Por lo tanto deberás mover el archivo smbpasswd a la dirección /etc/samba/smbpasswd
Añadiendo
usuarios a SAMBA.
Para permitir que los usuarios de Windows accedan a los recursos del servidor SAMBA, se deben adicionar sus nombres y contraseñas a una base de datos, para lo cual utilizaremos el comando:
smbpasswd -a nombreusuario
El programa solicitará la contraseña para este usuario, asegurar que estos
datos sean los mismos que en Windows.Este
programa esta en el directorio /usr/local/samba/bin.
Nota:
Si usted desea egecutar todo estos comando desde cualquier lugar, debe copiar todo los archivos de /usr/local/samba/lib a un directorio publico de Samba como /usr/local/bin
Ejm.:
#
smbpasswd -a info09-02
New SMB password:
Retype new SMB password:
Added user info09-02.
Password changed for user info09-02.
#
Si sólo queremos cambiar la contraseña a un usuario ya existente, haremos lo mismo pero sin el modificador -a.
Conectar
una unidad de Windows con máquinas Linux
smbclient
(Un cliente SMB para maquinas
UNIX)
Esta es una herramienta parecida a ftp que le permite conectarse a una PC Windows. Es el cliente que nos instala samba por defecto. Este comando permite acceder, desde un cliente GNU/Linux, a recursos puestos a disposición a través de servidores CIFS, bien se trate de un servidor Samba o de un servidor basado en Microsoft Windows. La interfaz es parecida a la del ftp, es de este modo es posible transferir ficheros sin esfuerzo.
La sintaxis es : smbclient
//maquina/recurso
Opciones:
· smbclient -L win -N (consulta lista de recursos compartidos accesibles en las PC denominada win a través de SMB)
· smbclient //win/trabajo o smbclient \\\win\\trabajo (conectarse al recurso compartido trabajo en la PC denominada win)
· smbclient //win/work -Tc trabajo.tar (crea archivador .tar del recurso compartido trabajo)
·
car carta.txt | smbclient
//win/nombre_impresora mi_contraseña \ -N -c "put - darth"
(para imprimir un archivo carta.txt con mi_impresora conectada a la PC win)