INTEGRACIÓN DE SISTEMAS OPERATIVOS EN RED LIBRES Y PROPIETARIOS.

TEMA 7

Descripción de escenarios heterogéneos.

Se dice que un sistema informático es heterogéneo cuando sus componentes son distintos pero pueden comunicarse entre sí por medios comunes. En cualquier empresa podemos encontrar que disponemos de diferentes recursos, desde mainframes, pasando por ordenadores de sobremesa y hasta con dispositivos móviles.

En este tema nos referiremos más a sistemas en los que se integran tanto sistemas operativos propietarios (Windows), como sistemas operativos libres (Linux), pero no autónomos, sino conectados entre sí por medio de una red, ya sea cableada o inalámbrica.

Hoy por hoy, Microsoft es cada vez más consciente de que debe convivir con otros sistemas operativos y vá incorporando diferentes servicios para la integración con estos, sobre todo con sistemas Unix.

En esta unidad nos vamos a centrar en los dos servicios más utilizados para compartir recursos en red , que son Samba y NFS.

Sistemas de archivos compartidos en red.

Los sistemas de archivos que permiten la compartición de estos vía red son los siguientes:

NFS: (Network File system). Es el sistema de archivos que se utiliza para compartir ficheros entre diferentes equipos de plataformas Unix/Linux. En las últimas versiones de Windows server, se incorpora también el software necesario tanto para crear su propio servidor NFS como el cliente para acceder a estas carpetas compartidas.

(enlace http://technet.microsoft.com/es-es/library/jj574143.aspx)

SMB: Es un sistema de ficheros para montar una carpeta compartida en red con samba.El protocolo SMB fue diseñado originalmente por IBM, pero actualmente la versión más extendida del mismo es la implementada por Microsoft en sus sistemas operativos, hoy en día denominada CIFS. En Unix existe el servicio Samba que implementa un servidor y cliente para SMB/CIFS.

Entre las características del protocolo encontramos:

Permite compartir sistemas de archivos e impresoras

Tradicionalmente ha utilizado NetBIOS/NetBEUI aunque las versiones nuevas pueden funcionar encima de TCP/IP. Cuando no se utiliza TCP/IP no existe posibilidad de enrutado, de manera que cliente y servidor deben estar en la misma red.

El servicio permite explorar la red para descubrir máquinas y recursos compartidos

Tradicionalmente se ha utilizado una resolución de nombres WINS, aunque en las versiones nuevas (a partir de Windows 2000) se ha relegado en favor de DNS y Active Directory

Instalación, configuración y uso de servicios de red para compartir recursos

Principalmente vamos a utilizar dos herramientas para sistemas mixtos Windows-Linux. Estas son Samba y NFS.

Samba

Samba es una implementación libre del protocolo de archivos compartidos de Microsoft Windows (antiguamente llamado SMB, renombrado recientemente a CIFS) para sistemas de tipo UNIX.

Utilizando este servidor podremos:

Rol ¿Puede hacerlo? Servidor de Archivos Sí Servidor de Impresión Sí Controlador Primario de Dominio Sí (Samba 2.1 o superior recomendado) Controlador de Dominio de Seguridad No Autentificación de clientes Windows 95/98 Sí Visualizador Maestro Local Sí Visualizador de Seguridad No Visualizador Maestro de Dominio Sí Servidor WINS Primario Sí Servidor WINS Secundario No Rol%20%C2%BFPuede%20hacerlo?%20Servidor%20de%20Archivos%20S%C3%AD%20Servidor%20de%20Impresi%C3%B3n%20S%C3%AD%20Controlador%20Primario%20de%20Dominio%20S%C3%AD%20(Samba%202.1%20o%20superior%20recomendado)%20Controlador%20de%20Dominio%20de%20Seguridad%20No%20Autentificaci%C3%B3n%20de%20clientes%20Windows%2095/98%20S%C3%AD%20Visualizador%20Maestro%20Local%20S%C3%AD%20Visualizador%20de%20Seguridad%20No%20Visualizador%20Maestro%20de%20Dominio%20S%C3%AD%20Servidor%20WINS%20Primario%20S%C3%AD%20Servidor%20WINS%20Secundario%20No

Samba configura directorios Unix-Linux (incluyendo sus subdirectorios) como recursos para compartir a través de la red. Para los usuarios de Microsoft Windows, estos recursos aparecen como carpetas normales de red. Los usuarios de Linux pueden montar en sus sistemas de archivos estás unidades de red como si fueran dispositivos locales, o utilizar la orden smbclient para conectarse a ellas muy al estilo del cliente de la línea de órdenes ftp.

Cada directorio puede tener diferentes permisos de acceso sobrepuestos a las protecciones del sistema de archivos que se esté usando en Linux.

El servidor está compuesto por dos aplicaciones:

Smbd: El demonio smbd es responsable de manejar los recursos compartidos entre la máquina servidora Samba y sus clientes. Proporciona servicios de archivos, impresión y visualización a los clientes Samba.

Nmdb: El demonio nmbd es un sencillo servidor de nombres que imita la funcionalidad de los servidores WINS y de resolución de nombres NetBIOS. Este demonio está a la escucha de peticiones para el servidor de nombres y proporciona la información apropiada cuando se le llama. También proporciona listas de visualización del Entorno de Red.

También hay herramientas de tipo comando de Linux como son:

Smbclient

Un cliente tipo FTP Unix que puede ser usado para conectar a recursos compartidos por Samba.

Smbtar

Un programa para realizar copias de seguridad de datos sitos en los recursos compartidos, similar al comando Unix “tar”.

Nmblookup

Un programa que proporciona búsquedas de nombres NetBIOS sobre TCP/IP.

Smbpasswd

Un programa que permite a un administrador cambiar las passwordsencriptadas usadas por Samba.

Smbstatus

Un programa para reportar las conexiones de red actuales hacia los recursos compartidos por el servidor Samba.

Testparm

Un simple programa para validar el fichero de configuración de Samba.

Testprns

Un programa que testea si varias impresoras son reconocidas por el demonio smbd.

Instalación de samba Server.

La ‘suite’ completa de samba se compone de varios paquetes. Se pueden localizar en http://packages.ubuntu.com buscando ‘samba’. Destacamos algunos:

samba - Servidor de archivos e impresoras.

samba-common - Archivos comunes de samba utilizados para clientes y servidores.

smbclient - Cliente simple.

swat - Herramienta de administración de Samba via web

samba-doc - Documentación de Samba.

winbind - Servicio para resolver información de usuarios y grupos de servidores Windows NT Instalaremos los paquetes desde Ubuntu utilizando apt-get. Para ello ejecutaremos:

Sudoapt-getinstall samba samba-commonsmbclient samba-doc

Resumen de pasos para implementar un servidor samba

1. Instalar el servidor:

sudo apt-get install samba samba-common smbclient samba-doc

2. Asegurarse de que están iniciados los servicios nmbd ysmbd

psax |grep nmbd

chpt_fig_346

3. Iniciar el servicio si no lo estuviera :

sudo /etc/init.d/smbd start

sudo /etc/init.d/nmbd start

o bien

sudo start smbd

sudo start nmbd

4. Crear usuarios en smbpasswd para permitir el acceso a los recursos. Previamente debemos crear el usuario en Linux .

sudo smbpasswd -a nombre_usuario

chpt_fig_347

chpt_fig_348

5. Crear los directorios que van a ser compartidos y asignarles los permisos locales oportunos. Es recomendable no poner estos recursos dentro de carpetas de usuario, ya que estas están protegidas para que sólo el usuario al que pertenece pueda acceder, y hay que hacer más cambios de permisos.

6. Modificar el fichero smb.conf y añadir las secciones necesarias.

7. Comprobar que el fichero es correcto utilizando el comando testparm.

chpt_fig_349

8. Comprobar el acceso desde otro equipo Linux y/o Windows.

chpt_fig_350

Configuración de recursos compartidos en red con Samba.

Fichero smb.conf

Para configurar el servidor de Samba deberá editarse el fichero /etc/samba/smb.conf, con permisos de superusuario. Este fichero tiene varias secciones a tener en cuenta:

Sección [global]

En la sección [global] se configuran los parámetros generales (globales) que determinarán el modo de comportamiento general del servidor samba. Todos los parámetros que se omitan tomarán el valor predefinido por defecto. Existen unos 300 parámetros que se pueden configurar en ésta sección. A continuación exponemos los parámetros más significativos y ejemplo de valor:

hostsallow = 192. 127. Permite especificar desde qué direcciones IPs se podrá acceder al servicio. Ej.: Si ponemos 192.168. significa todas las que empiecen por 192.168. Se pueden poner IPs concretas hostsallow%20=%20192.%20127.%20Permite%20especificar%20desde%20qu%C3%A9%20direcciones%20IPs%20se%20podr%C3%A1%20acceder%20al%20servicio.%20Ej.:%20Si%20ponemos%20192.168.%20significa%20todas%20las%20que%20empiecen%20por%20192.168.%20Se%20pueden%20poner%20IPs%20concretas

hostsdeny = 10. Igual que hosts allow pero para especificar los rangos no permitidos.Tanto este como host allow pueden utilizarse en la sección global , en cuyo caso se aplica a todos los recursos samba , o en uno concreto. security = share Permite determinar el modo de compartición de recursos de samba . Hay cinco opciones posibles: share, user, domain, server y ads. • ‘ Share’ significa compartir los recursos con contraseña (como W95, 98,...). • ‘User’ gestiona los permisos por usuario (como W2000 y WXP). • ‘Domain’ gestiona los permisos por dominio. • ‘Server ’ indica que los permisos son gestionados por otro servidor. • ‘Ads’ hace que samba se comporte como un miembro de un dominio Active Directory y por lo tanto requiere un servidor W2000 Server o W2003 Server. Workgroup = AULA_ASIR2 Nombre del grupo de trabajo con el que se va a ver en la red, o bien del dominio si se pone security = domain hostsdeny%20=%2010.%20Igual%20que%20hosts%20allow%20pero%20para%20especificar%20los%20rangos%20no%20permitidos.Tanto%20este%20como%20host%20allow%20pueden%20utilizarse%20en%20la%20secci%C3%B3n%20global%20,%20en%20cuyo%20caso%20se%20aplica%20a%20todos%20los%20recursos%20samba%20,%20o%20en%20uno%20concreto.%20security%20=%20share%20Permite%20determinar%20el%20modo%20de%20compartici%C3%B3n%20de%20recursos%20de%20samba%20.%20Hay%20cinco%20opciones%20posibles:%20share,%20user,%20domain,%20server%20y%20ads.%20%E2%80%A2%20%E2%80%98%20Share%E2%80%99%20significa%20compartir%20los%20recursos%20con%20contrase%C3%B1a%20(como%20W95,%2098,...).%20%E2%80%A2%20%E2%80%98User%E2%80%99%20gestiona%20los%20permisos%20por%20usuario%20(como%20W2000%20y%20WXP).%20%E2%80%A2%20%E2%80%98Domain%E2%80%99%20gestiona%20los%20permisos%20por%20dominio.%20%E2%80%A2%20%E2%80%98Server%20%E2%80%99%20indica%20que%20los%20permisos%20son%20gestionados%20por%20otro%20servidor.%20%E2%80%A2%20%E2%80%98Ads%E2%80%99%20hace%20que%20samba%20se%20comporte%20como%20un%20miembro%20de%20un%20dominio%20Active%20Directory%20y%20por%20lo%20tanto%20requiere%20un%20servidor%20W2000%20Server%20o%20W2003%20Server.%20Workgroup%20=%20AULA_ASIR2%20Nombre%20del%20grupo%20de%20trabajo%20con%20el%20que%20se%20va%20a%20ver%20en%20la%20red,%20o%20bien%20del%20dominio%20si%20se%20pone%20security%20=%20domain

Antes de la versión 4, Samba no puede actuar como controlador de dominio de Active Directory, es decir, no puede sustituir a Windows 2000 Server, pero sí puede actuar como controlador de dominio de Windows NT. Para esto, se utilizarían los siguientes parámetros:

domainlogons = yes Para que samba sea autentificador del dominio. En este caso, habrá que poner ‘security = user’ porque no tiene sentido que el samba sea servidor de dominio y que comparta los recursos con contraseña. domain master = yes Para que samba sea controlador de dominio. Lo lógico es que domainlogons esté a ‘yes’ encryptpasswords = yes Hace que samba solo reconozca passwords encriptados. Las primeras versiones de W95 enviaban las contraseñas en texto plano pero tanto las últimas versiones de Windows 95 como W98, 2000 y XP las encriptan. Se puede impedir que W98 las encripte cambiando un valor del registro (ver encription.txt en samba ) pero lo recomendable es que se envíen encriptadas para impedir que otros usuarios puedan descubrirlas capturando paquetes de datos (sniffing). Los password encriptados de samba se guardan en otro archivo: domainlogons%20=%20yes%20Para%20que%20samba%20sea%20autentificador%20del%20dominio.%20En%20este%20caso,%20habr%C3%A1%20que%20poner%20%E2%80%98security%20=%20user%E2%80%99%20porque%20no%20tiene%20sentido%20que%20el%20samba%20sea%20servidor%20de%20dominio%20y%20que%20comparta%20los%20recursos%20con%20contrase%C3%B1a.%20domain%20master%20=%20yes%20Para%20que%20samba%20sea%20controlador%20de%20dominio.%20Lo%20l%C3%B3gico%20es%20que%20domainlogons%20est%C3%A9%20a%20%E2%80%98yes%E2%80%99%20encryptpasswords%20=%20yes%20Hace%20que%20samba%20solo%20reconozca%20passwords%20encriptados.%20Las%20primeras%20versiones%20de%20W95%20enviaban%20las%20contrase%C3%B1as%20en%20texto%20plano%20pero%20tanto%20las%20%C3%BAltimas%20versiones%20de%20Windows%2095%20como%20W98,%202000%20y%20XP%20las%20encriptan.%20Se%20puede%20impedir%20que%20W98%20las%20encripte%20cambiando%20un%20valor%20del%20registro%20(ver%20encription.txt%20en%20samba%20)%20pero%20lo%20recomendable%20es%20que%20se%20env%C3%ADen%20encriptadas%20para%20impedir%20que%20otros%20usuarios%20puedan%20descubrirlas%20capturando%20paquetes%20de%20datos%20(sniffing).%20Los%20password%20encriptados%20de%20samba%20se%20guardan%20en%20otro%20archivo:

smbpasswd file = /etc/ smbpasswd Archivo que guarda las contraseñas encriptadas de acceso a samba . Para que un usuario pueda acceder a samba debe existir en el sistema pero no tiene por qué coincidir la contraseña de un usuario en el sistema linux con la de samba aunque es aconsejable. logon script = INICIO.BAT Indica el script que ejecutarán los clientes windows al loguearse password server = 192.168.0.10 Indica qué servidor autentificará a los usuarios wins server = 192.168.0.10 Indica quién es el servidor de nombres wins winssupport = yes Hace que nuestro samba sea servidor wins smbpasswd%20file%20=%20/etc/%20smbpasswd%20Archivo%20que%20guarda%20las%20contrase%C3%B1as%20encriptadas%20de%20acceso%20a%20samba%20.%20Para%20que%20un%20usuario%20pueda%20acceder%20a%20samba%20debe%20existir%20en%20el%20sistema%20pero%20no%20tiene%20por%20qu%C3%A9%20coincidir%20la%20contrase%C3%B1a%20de%20un%20usuario%20en%20el%20sistema%20linux%20con%20la%20de%20samba%20aunque%20es%20aconsejable.%20logon%20script%20=%20INICIO.BAT%20Indica%20el%20script%20que%20ejecutar%C3%A1n%20los%20clientes%20windows%20al%20loguearse%20password%20server%20=%20192.168.0.10%20Indica%20qu%C3%A9%20servidor%20autentificar%C3%A1%20a%20los%20usuarios%20wins%20server%20=%20192.168.0.10%20Indica%20qui%C3%A9n%20es%20el%20servidor%20de%20nombres%20wins%20winssupport%20=%20yes%20Hace%20que%20nuestro%20samba%20sea%20servidor%20wins

A partir de la version 3.0.23 de Samba, se añade la capacidad de que cualquier usuario que no sea root pueda añadir, modificar y borrar sus propios recursos compartidos. Para ello hay una serie de parámetros que comienzan por usershares, que se encuentran en la sección [global].

usershare path = /usr/local/ samba/lib/usershares Carpeta donde se crearán los recursos compartidos de los usuarios (se creará previamente con los permisos adecuados) Usersharemax shares = 10 Valor máximo de recursos compartidos que pueden crearse. Para crear recursos compartidos los usuarios ejecutarán comandos como: net usershareadd sharename path [comment] [acl] [guest_ok=[y|n]] net usersharedelete sharename net usershare list wildcard-sharename net usershare info wildcard-sharename usershare%20path%20=%20/usr/local/%20samba/lib/usershares%20Carpeta%20donde%20se%20crear%C3%A1n%20los%20recursos%20compartidos%20de%20los%20usuarios%20(se%20crear%C3%A1%20previamente%20con%20los%20permisos%20adecuados)%20Usersharemax%20shares%20=%2010%20Valor%20m%C3%A1ximo%20de%20recursos%20compartidos%20que%20pueden%20crearse.%20Para%20crear%20recursos%20compartidos%20los%20usuarios%20ejecutar%C3%A1n%20comandos%20como:%20net%20usershareadd%20sharename%20path%20[comment]%20[acl]%20[guest_ok=[y|n]]%20net%20usersharedelete%20sharename%20net%20usershare%20list%20wildcard-sharename%20net%20usershare%20info%20wildcard-sharename

Sección [homes]

En esta sección se configuran los parámetros para compartir la carpeta home (carpeta donde se almacena el perfil y todos los documentos) de cada usuario. Esta sección es opcional.

Sección [printers]

En esta sección se configuran los parámetros para compartir las impresoras o colas de impresión disponibles en el servidor. Si queremos que los equipos Windows reciba los drivers, deberemos además poner la sección [printers$].

Una sección por cada carpeta compartida

Cada vez que se comparte una carpeta, hay que crear una sección denominada como se desee ya que dicho nombre será el nombre del recurso compartido. Ejemplo, si deseamos compartir la carpeta /home/samba/alumnos crearemos una sección [alumnos] donde se configurará dicho recurso compartido con los parámetros específicos para dicho recurso. Parámetros destacables:

browseable = yes Indica si el recurso compartido será visible cuando se escanea la red, por ejemplo haciendo clic en ‘Mis sitios de red’ en Windows guest ok = yes public =yes Indica que cualquier usuario sin contraseña tiene permiso de acceso writeable = yes Read only = no Indica si puede accederse de escritura al recurso adminusers = pedro Indica quien tiene acceso de root al recurso Validusers = pepe, juan Indica qué usuarios pueden acceder al recurso read list = maria, @alumnos Indica qué usuarios tienen acceso de lectura al recurso. En este ejemplo, serían los usuarios maria y los usuarios del grupo alumnos. write list = admin, root, @ personal Indica qué usuarios tienen acceso de escritura al recurso (incluso si readonly está activo).. create mask=0 660 directory mask force create mode force directory mode Indican con qué permisos se van a crear los directorios y /o ficheros que se creen por red. http://www.samba.org/samba/docs/man/manpages-3/smb. conf.5.html#CREATEMASK browseable%20=%20yes%20Indica%20si%20el%20recurso%20compartido%20ser%C3%A1%20visible%20cuando%20se%20escanea%20la%20red,%20por%20ejemplo%20haciendo%20clic%20en%20%E2%80%98Mis%20sitios%20de%20red%E2%80%99%20en%20Windows%20guest%20ok%20=%20yes%20public%20=yes%20Indica%20que%20cualquier%20usuario%20sin%20contrase%C3%B1a%20tiene%20permiso%20de%20acceso%20writeable%20=%20yes%20Read%20only%20=%20no%20Indica%20si%20puede%20accederse%20de%20escritura%20al%20recurso%20adminusers%20=%20pedro%20Indica%20quien%20tiene%20acceso%20de%20root%20al%20recurso%20Validusers%20=%20pepe,%20juan%20Indica%20qu%C3%A9%20usuarios%20pueden%20acceder%20al%20recurso%20read%20list%20=%20maria,%20@alumnos%20Indica%20qu%C3%A9%20usuarios%20tienen%20acceso%20de%20lectura%20al%20recurso.%20En%20este%20ejemplo,%20ser%C3%ADan%20los%20usuarios%20maria%20y%20los%20usuarios%20del%20grupo%20alumnos.%20write%20list%20=%20admin,%20root,%20@%20personal%20Indica%20qu%C3%A9%20usuarios%20tienen%20acceso%20de%20escritura%20al%20recurso%20(incluso%20si%20readonly%20est%C3%A1%20activo)..%20create%20mask=0%20660%20directory%20mask%20force%20create%20mode%20force%20directory%20mode%20Indican%20con%20qu%C3%A9%20permisos%20se%20van%20a%20crear%20los%20directorios%20y%20/o%20ficheros%20que%20se%20creen%20por%20red.%20http://www.samba.org/samba/docs/man/manpages-3/smb.%20conf.5.html#CREATEMASK

Ejemplo de smb.conf

 

# Ejemplo de archivo de configuración de samba #smb. conf # passwd)
#Sección global, parámetros generales
[global]
security = user
workgroup = AulaASIR
encryptpasswords = yes
winssupport = yes

log level = 1
max log size = 1000

# Por defecto, lectura y escritura(por estar esta línea en la sección global)
readonly = no
# Se comparten también las impresoras
load printers = yes
[profesores]
path = /home/samba/profesores
browsable = yes
readonly = no
createmask = 0770
directorymask = 0770


Validusers = @profesores

# Carpeta común alumnos
[alumnos]
browsable = yes
readonly = no
path = /home/samba/alumnos
# Sección homes, carpetas home de usuarios
[homes]
comment = Carpetas home
browsable = no
createmask = 0700

directorymask = 0700
# Carpeta común (solo lectura)
[programas]
browsable = yes
readonly = yes
guest ok = yes
path = /home/samba/programas
# Sección printers, impresoras
[printers]
path = /var/tmp
printable = yes
min printspace = 2000
# Parámetros impresora
[laserjet5]
path = /tmp
printable = yes

# Carpeta común profesores a la que puedan

# acceder los usuarios de este grupo (definido en

Seguridad en samba

Samba tiene, como se ha visto en la sección anterior, formas diferentes de dar una seguridad en el acceso, tanto a nivel de usuario que puede acceder al recurso compartido, como a nivel de recurso.

En lo que se refiere a la autentificación del usuario, puede utilizar tanto un directorio Ldap, como un directorio activo , así como tener su propia base de datos de usuarios (smbpasswd).

Para utilizar sus propios usuarios Samba dispone de una base de datos cuyas contraseñas encriptadas están en el fichero smbpasswd. Estos usuarios deben estar previamente creados en passwd . También se pueden utilizar los grupos de passwd para gestionar los accesos a los recursos compartidos.

Para gestionar los usuarios samba utilizaríamos los comandos:

sudosmbpasswd -a pepe -> Crear usuario

sudosmbpasswd–x pepe -> Borrar usuario

Otras opciones del comando smbpasswd:

-d: Deshabilitar un usuario

-e: Habilitar un usuario

-n: Usuario sin password. Necesita parámetro nullpasswords = yes en sección ‘global’ del archivo de configuración de samba

-m: Indica que es una cuenta de máquina (equipo)

Como práctica generalizada, se crea un usuario samba por cada usuario Unix, y por usuario cliente de Windows, de forma que éste no tenga que dar credenciales continuamente, al entrar al sistema y de nuevo al conectarse a un recurso de red. Se deben tener sincronizadas las contraseñas para que esto sea viable. Esto es así cuando no se utilice un directorio ldap o un directorio activo.

Para ver los usuarios que están dados de alta en smbpasswd se utiliza el comando pdbedit

chpt_fig_357

Acceso a recursos samba desde clientes Windows

Desde Windows se accede a los recursos compartidos por samba vía entorno de red en entornos gráficos y pueden utilizarse el comando “net use” para mapear una unidad de red desde el entorno de comando o desde un procedimiento bat, al igual que se hace para el resto de los recursos de red de Windows, o bien utilizar el entorno gráfico, entorno de red o poner la ip del servidor en la barra de direcciones del explorador de carpetas.

Comandos Net:

NET [ ACCOUNTS|COMPUTER | CONFIG | CONTINUE | FILE | GROUP | HELP |HELPMSG | LOCALGROUP | PAUSE | SESSION | SHARE | START |STATISTICS | STOP | TIME | USE | USER | VIEW ]

chpt_fig_358

chpt_fig_359

chpt_fig_360

chpt_fig_361

Hay que tener en cuenta que cada vez que se accede al servidor, queda creada una conexión , que habrá que borrar si se quiere hacer una nueva conexión con otras credenciales. Esto puede hacerse con el comando net use. Con este vemos las conexiones activas y podemos desconectarlas con el modificador /delete.

Net use también tiene la opción de utilizar /user para dar credenciales a la hora de crear una conexión.

Si queremos que la unidad esté siempre presente, se puede incluir una línea con net use en el script de inicio del usuario, o utilizar la opción /persistent:yes en el comando net use.

Acceso a recursos samba desde un cliente Linux

Para montar carpetas compartidas en un cliente Linux, ya sean compartidas en un equipo Windows como Linux, se pueden utilizar los comandos smbclient, o bien mount –t smbfs o mount –t cifs, o mount.cifs .

mount -t smbfs -o username=nombreUsuario //nombreHost/Compartido /mnt/Compartido

mount -t cifs -o username=nombreUsuario%password //nombreHost/Compartido /mnt/ Compartido

Si se quiere tener siempre la unidad mapeada, basta con insertar una línea en /etc/fstab.

//nombreHost/Compartido /mnt/Compartido cifsuid=nombreUsuario,credentials=/etc/cifspw 0 0

Donde el fichero /etc/cifspw contendrá lo siguiente:

Username=nombreusuario

Password=contraseña

Uso de smbclient para ver los recursos compartidos en un equipo:

smbclient - -list //aso-virtualbox

Para conectarse a un recurso compartido:smbclient //aso-virtualbox/alumnos

y a partir de ahí es como un cliente ftp, pueden utilizarse los comandos get, put,etc.También pueden utilizarse accesos gráficos con cualquier explorador , ya sea dolphin, konqueror, etc, de la forma habitual.

chpt_fig_362

chpt_fig_363

Herramientas gráficas para Samba

Swat

Es una utilidad que permite acceder a configurar desde una interfaz web todos los recursos samba. Se instala como de costumbre con apt-get en plataformas Debian:

sudoapt-getinstallswat

Además, habrá que asegurarse de que aparece en el fichero /etc/services

chpt_fig_364

Y que en el fichero /etc/inetd.conf, también aparece la línea

chpt_fig_365

Y para acceder a la utilidad , desde cualquier navegador se introducirá en la barra de direcciones: http:\\ip_servidor:901 . 901 es el puerto por defecto de escucha de la aplicación.

En ese momento pedirá un nombre de usuario y contraseña. Deberá introducirse el usuario root de Linux y su contraseña, si se quiere acceder a todas las características disponibles, tales como crear recursos y/o usuarios samba.

Si se está utilizando Ubuntu, habrá que habilitar el usuario root poniéndole una contraseña con el comando

sudo passwd root

La interfaz es la siguiente:

chpt_fig_366

Para crear un nuevo recurso compartido

chpt_fig_367

Se rellena el nombre y se pulsa en el botón “créate Share”, mostrará la pantalla siguiente:

chpt_fig_368

También se puede utilizar swat para reiniciar el servidor samba, ver los recursos y usuarios que los están utilizando y algunas cosas más.

system-config-samba

Esta es otra opción para utilizar samba de forma gráfica. Es una aplicación que se instala con aptget, y una vez instalada aparece bajo el siguiente icono

chpt_fig_369

Si pulso en él, me pedirá el usuario administrador mostrará los recursos compartidos y pulsando en el símbolo + de la esquina superior izquierda dejará crear nuevos recursos de una forma sencilla.

chpt_fig_370

También se puede utilizar la herramienta Webmin para administrar samba.

Samba como Controlador de Dominio

Como ya se indicó en la explicación del fichero smb.conf, Samba puede actuar también como controlador de dominio de NT, es decir, con un equipo Linux que tenga instalado un servidor samba, podemos conseguir autentificar a los usuarios que se unen a equipos de la red. El servidor samba se anunciará como servidor de Dominio y proveerá a los equipos de la red de un servicio de Netlogon y un recurso compartido llamado Netlogon, además de poder proveer de una carpeta compartida para almacenar los perfiles remotos de los usuarios.

Un ejemplo del fichero smb.conf para un samba controlador de dominio es el siguiente:

chpt_fig_371

chpt_fig_372

Para hacer que un equipo se incorpore al dominio de un PDC samba, puede ser desde las versiones de Windows XP profesional (xp Home no puede utilizarse para esto), y también equipos Linux. En Windows 8 debemos tener en cuenta que si el nombre del dominio contiene un punto, no podrá incorporarse a este, porque entiende que es un dominio kerberos o ldap.

Para que un equipo Windows 7 pueda actuar como cliente de red de un PDC SAMBA, hay que hacer unos cambios en el registro para que no nos dé un error que dice algo como:

“El dominio especificado no existe o no puede ser contactado”.

La solución consiste en modificar el registro de cada host con Windows 7 para agregar las siguientes claves, ubicadas en

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\LanmanWorkstation\Parameters]:

“DomainCompatibilityMode”=dword:00000001
“DNSNameResolutionRequired”=dword:00000000

http://wiki.samba.org/index.php/Windows7

Servidor samba unido a Directorio Activo (Windows)

Este sería un ejemplo de un fichero de configuración de samba para un servidor que utilice autentificación por medio de un directorio activo de Windows, es decir los usuarios para seguridad se recogerán de los servidores de dominio de los Controladores de dominio Windows que haya en la red.

chpt_fig_373

Samba 4

La version 4 de samba representa un salto cualitativo en tanto que incorpora un servidor LDAP, un servidor de autenticación Kerberos, un servidor DNS dinámico y todas las implementaciones de las llamadas remotas de Directorio Activo. De esta forma, se puede integrar con todos los clientes de Microsoft, incluido Windows 8.

Pueden realizarse perfiles remotos y políticas del sistema (gpos),e integrarse con Microsoft Exchange y otro software gratuito compatible, como OpenChange.

Ejercicios

1 Instalar samba en un equipo Linux virtual.

2 Crear dos carpetas compartidas en /samba_shares/todos y /samba_shares/privado

3 Dar permisos para que todos los usuarios tengan acceso de lectura a samba_shares/todos y Jefe tenga acceso de lectura y escritura e esta.

4 /samba_shares/privado , tendrán acceso el usuario jefe de lectura y escritura y Secretaria de sólo lectura.

5 Intentar accesos con diferentes usuarios desde una máquina virtual Windows.

6 Añade la/s líneas necesarias para que uno de los equipos de tu red no tenga acceso a ninguno de los recursos de samba.

7 Comparte las carpetas home de los usuarios.

8 Accede al servidor desde un equipo cliente Linux, con uno de los usuarios dados de alta en el servidor y comprueba que en este le muestra su carpeta home.

Bibliografía

http://www.samba.org/

http://www.samba.org/samba/docs/man/Samba-HOWTO-Collection/

https://help.ubuntu.com/10.04/serverguide/samba-fileserver.html

http://www.ite.educacion.es/formacion/materiales/85/cd/linux/m4/instalacin_y_configuracin_de_samba.html

http://www.samba.org/samba/docs/man/manpages-3/smb.conf.5.html

http://www.lintips.com/?q=node/81

http://www.debian-administration.org/articles/165

ftp://ibiblio.org/pub/linux/docs/LuCaS/Manuales-LuCAS/doc-guia-ubuntu-breeze/guiaubuntu-htmls/servidor-samba.html

http://www.samba.org/samba/docs/man/Samba-HOWTO-Collection/samba-pdc.html

http://wiki.samba.org/index.php/Samba_%26_Active_Directory

NFS

Las siglas NFS significan Sistema de Archivos de Red (del inglés Network File System) y fue desarrollado por SUN Microsystems en 1984. Su función en una red es permitir que un equipo GNU/Linux pueda montar y trabajar con un sistema de archivos de otro equipo de la red como si fuera local.

NFS es un sistema cliente-servidor, por lo que será necesario al menos un servidor y uno o más clientes. El servidor “exporta” archivos al resto de la red. El cliente “importa” archivos de la red.

NFS es un sistema de archivos virtual, que permite que en una red UNIX podamos compartir archivos entre todos los equipos que la forman. Los usuarios de la red tendrán la sensación de que los datos a los que acceden están en su propia máquina .

Aunque al servicio se le suele conocer con el nombre NFS, realmente NFS es un protocolo de nivel de Aplicación y por debajo, el protocolo subyacente que utiliza NFS son las Llamadas a Procedimientos Remotos (RPC) de nivel de Sesión, también utiliza TCP/UDP en el nivel Transporte e IP en el nivel de Red.

Las versiones de NFS más importantes son NFSv2 (RFC 1094), NFSv3 (RFC 1813) y NFSv4 (RFC 3530).

La versión 2 de NFS es la más extendida y soportada por los sistemas operativos, también es la más antigua e insegura. La versión 3 es más potente pero no es completamente compatible con clientes NFSv2. Ambas versiones pueden trabajar tanto con TCP como UDP como protocolo de transporte creando conexiones de red entre el cliente y el servidor sin supervisión (state-less). La ventaja de utilizar UDP es que, al ser una conexión desatendida, se minimiza el tráfico de red, pero si el servidor NFS cayera por cualquier circunstancia, los clientes NFS seguirían enviando peticiones al servidor produciendo el efecto contrario, que es la saturación de la red.

En general las versiones 2 y 3 de NFS permiten controlar la exportación y montaje de sistemas de archivos en función del equipo que hace la solicitud, pero no del usuario. Es decir no se contempla un control de acceso al sistema de archivos por usuario. Sólo para los equipos. Esto implica que si un sistema de archivos es exportado desde el servidor NFS, cualquier usuario de un equipo remoto cliente NFS podría acceder a él. Los únicos mecanismos de seguridad que quedan en este caso son los permisos de acceso (sólo lectura) o utilizar un usuario y grupo únicamente. Lógicamente esto limita bastante la idea de compartición que tenemos todos.

En el caso de la versión 4 de NFS( http://www.nfsv4.org) estos problemas de seguridad desaparecen pero, a cambio, tiene unos requerimientos de configuración y servicios adicionales mucho más importantes. Por ejemplo, en la versión 4 la utilización de mecanismos para la autenticación de los usuarios es obligatoria. Para ello y en función del tipo de seguridad seleccionada, se requiere la utilización del servicio Kerberos cuya misión será funcionar como servidor de entrega de tickets (KDC) y que debe estar configurado y funcionando correctamente antes de configurar el servidor NFSv4. Otra característica importante de NFS4 es la utilización de ACLs (Listas de Control de Acceso) al estilo Windows y que no son soportadas por las versiones 2 y 3 de NFS del sistema.

Kerberos: es un protocolo de autenticación de redes de ordenador creado por el MIT que permite a dos ordenadores en una red insegura demostrar su identidad mutuamente de manera segura.

PASOS PARA COMPARTIR UN RECURSO MEDIANTE NFS

1. Instalar el servidor NFS en un equipo de Linux .

2. Crear las carpetas a compartir y ponerle los permisos necesarios.

3. Modificar el fichero /etc/exports para añadir las carpetas compartidas.

4. Añadir seguridad mediante los ficheros /etc/hosts. allow y /etc/host.deny.

FICHEROS DE CONFIGURACION

Los archivos de configuración que necesitamos modificar para sacar el mayor partido posible al servicio NFS son los siguientes:

/etc/exports