Tutorial CentOS 7 - Comparticion de Archivos con Samba

41
Anaitis Cabrera García 2009-3383 SO-3 Instructor: José Doñe ITLA Este tutorial fue realizado con la versión 5.5 de CentOS Samba es una suite de aplicaciones Unix que habla el protocolo SMB (Server Message Block). Muchos sistemas operativos, incluidos Windows y OS/2, usan SMB para operaciones de red cliente-servidor. Mediante el soporte de este protocolo, Samba permite a los servidores Unix entrar en acción, comunicando con el mismo protocolo de red que los productos de Microsoft Windows. De este modo, una máquina Unix con Samba puede enmascararse como servidor en tu red Microsoft y ofrecer los siguientes servicios: Compartir uno o más sistemas de archivos. Compartir impresoras, instaladas tanto en el servidor como en los clientes. Ayudar a los clientes, con visualizador de Clientes de Red. Autentificar clientes logeándose contra un dominio Windows. Proporcionar o asistir con un servidor de resolución de nombres WINS. SMB (acrónimo de Server Message Block) es un protocolo, del Nivel de Presentación del modelo OSI de TCP/IP, creado en 1985 por IBM. Algunas veces es referido también como CIFS (Acrónimo de Common Internet File System) tras ser renombrado por Microsoft en 1998. Entre otras cosas, Microsoft añadió al protocolo soporte para enlaces simbólicos y duros así como también soporte para ficheros de gran tamaño. Por mera coincidencia esto ocurrió por la misma época en que Sun Microsystems hizo el lanzamiento de WebNFS (una versión extendida de NFS). SMB fue originalmente diseñado para trabajar a través del protoclo NetBIOS, el cual a su vez travaja sobre NetBEUI (acrónimo de NetBIOS Extended User Interface, que se traduce como Interfaz de Usuario Extendida de NetBIOS),

Transcript of Tutorial CentOS 7 - Comparticion de Archivos con Samba

Page 1: Tutorial CentOS 7 - Comparticion de Archivos con Samba

Anaitis Cabrera García 2009-3383 SO-3 Instructor: José Doñe ITLA

Este tutorial fue realizado con la versión 5.5 de CentOS

Samba es una suite de aplicaciones Unix que habla el protocolo SMB (Server

Message Block). Muchos sistemas operativos, incluidos Windows y OS/2, usan

SMB para operaciones de red cliente-servidor. Mediante el soporte de este

protocolo, Samba permite a los servidores Unix entrar en acción, comunicando con

el mismo protocolo de red que los productos de Microsoft Windows. De este

modo, una máquina Unix con Samba puede enmascararse como servidor en tu red

Microsoft y ofrecer los siguientes servicios:

Compartir uno o más sistemas de archivos.

Compartir impresoras, instaladas tanto en el servidor como en los clientes.

Ayudar a los clientes, con visualizador de Clientes de Red.

Autentificar clientes logeándose contra un dominio Windows.

Proporcionar o asistir con un servidor de resolución de nombres WINS.

SMB (acrónimo de Server Message Block) es un protocolo, del Nivel de

Presentación del modelo OSI de TCP/IP, creado en 1985 por IBM. Algunas veces es

referido también como CIFS (Acrónimo de Common Internet File System) tras ser

renombrado por Microsoft en 1998. Entre otras cosas, Microsoft añadió al

protocolo soporte para enlaces simbólicos y duros así como también soporte para

ficheros de gran tamaño. Por mera coincidencia esto ocurrió por la misma época en

que Sun Microsystems hizo el lanzamiento de WebNFS (una versión extendida de

NFS).

SMB fue originalmente diseñado para trabajar a través del protoclo NetBIOS, el

cual a su vez travaja sobre NetBEUI (acrónimo de NetBIOS Extended User

Interface, que se traduce como Interfaz de Usuario Extendida de NetBIOS),

Page 2: Tutorial CentOS 7 - Comparticion de Archivos con Samba

Anaitis Cabrera García 2009-3383 SO-3 Instructor: José Doñe ITLA

IPX/SPX (acrónimo de Internet Packet Exchange/Sequenced Packet Exchange, que

se traduce como Intercambio de paquetes interred/Intercambio de paquetes

secuenciales) o NBT, aunque también puede trabajar directamente sobre TCP/IP.

Para la configurarcion de SAMBA necesitamos tener instalados tres paquetes

importantes, estos son:

Samba: Servidor SMB.

Samba-client: diversos clientes para el protocolo SMB.

Samba-commom: ficheros necesarios para cliente y servidor.

Verificamos los paquetes instalados:

rpm –q samba

rpm –q samba-swat

rpm –q samba-client

rpm –q samba-common

rpm –q samba samba-swat samba-client samba-common

En este caso solo falta samba-swat:

Page 3: Tutorial CentOS 7 - Comparticion de Archivos con Samba

Anaitis Cabrera García 2009-3383 SO-3 Instructor: José Doñe ITLA

Samba para trabajar en un Workgroup.

Los archivos más importantes para la configuración de samba. Estos son:

/etc/samba/smb.conf

/etc/xinetd.d/swat

Ahora procedemos a la configuración del archivo smb.conf. No importa dónde nos

encontremos, utilizaremos la siguiente línea de comandos para acceder al archivo:

gedit /etc/samba/smb.conf.

Nos presentara el archivo de configuración.

Page 4: Tutorial CentOS 7 - Comparticion de Archivos con Samba

Anaitis Cabrera García 2009-3383 SO-3 Instructor: José Doñe ITLA

Empezaremos por establecer el grupo de trabajo editando el valor del parámetro

workgroup asignando un grupo de trabajo deseado: MYGROUPSMB

El parámetro server string es de carácter descriptivo. Puede utilizarse un comentario

breve que de una descripción del servidor.

Opcionalmente puede establecer con el parámetro netbios name otro nombre distinto

para el servidor si acaso fuese necesario, pero siempre tomando en cuenta que dicho

nombre deberá corresponder con el establecido en el fichero /etc/samba/lmhosts

Parámetros útiles para la seguridad.

La seguridad es importante y esta se puede establecer primeramente estableciendo

la lista de control de acceso que definirá que máquinas o redes podrán acceder

hacia el servidor.

El parámetro hosts allow sirve para determinar esto. Si la red consiste en la

máquinas con dirección IP desde 192.168.0.1 hasta 192.168.0.254, el rango de

direcciones IP que se definirá en hosts allow será 192.168.0. de modo tal que solo se

permitirá el acceso dichas máquinas.

Note por favor el punto al final de cada rango. Modifique ésta de manera que que

del del siguiente modo:

Host allow = 127. 192.168.0.

El parámetro interfaces permite establecer desde que interfaces de red del sistema se

escucharán peticiones. Samba no responderá a peticiones provenientes desde cualquier

interfaz no especificada. Esto es útil cuando Samba se ejecuta en un servidor que sirve

también de puerta de enlace para la red local, impidiendo se establezcan conexiones desde

fuera de la red local.

interfaces = 192.168.0.69/24

Page 5: Tutorial CentOS 7 - Comparticion de Archivos con Samba

Anaitis Cabrera García 2009-3383 SO-3 Instructor: José Doñe ITLA

Agregamos la ip y el nombre de nuestro servidor al fichero lmhosts, con el editor gedit

Lo mismo con el fichero hosts

Vamos a hacer una comprobación de los archivos por defecto de smb.conf con

testparm, usando el comando:

# /usr/bin/testparm

Page 6: Tutorial CentOS 7 - Comparticion de Archivos con Samba

Anaitis Cabrera García 2009-3383 SO-3 Instructor: José Doñe ITLA

Pulsamos ENTER

Crear usuarios en Samba

Los usuarios que queremos que tengan acceso al servidor Samba deben estar

creados como usuarios en nuestro servidor linux, podemos crear un grupo samba

y agregar a ese grupo todos los usuarios que tendrán acceso al servidor samba.

Los usuarios que se creen en Linux deben ser iguales a los usuarios que se creen en

Windows. Para crear usuarios en Linux utilizamos el comando useradd y

asignamos una contraseña con el comando passwd. Luego Creamos y habilitamos

el usuario en samba con el comando smbpasswd.

Page 7: Tutorial CentOS 7 - Comparticion de Archivos con Samba

Anaitis Cabrera García 2009-3383 SO-3 Instructor: José Doñe ITLA

Comprobamos si hemos añadido correctamente a los usuarios :

# pdbedit -L

Creamos una carpeta a compartir en el directorio del usuario creado y le damos los

permisos.

Verificamos en el navegador de archivos

Page 8: Tutorial CentOS 7 - Comparticion de Archivos con Samba

Anaitis Cabrera García 2009-3383 SO-3 Instructor: José Doñe ITLA

Ahora vamos al archivo de configuración

Y agregamos el directorio que creamos para compartir, con los parámetros

siguientes

Page 9: Tutorial CentOS 7 - Comparticion de Archivos con Samba

Anaitis Cabrera García 2009-3383 SO-3 Instructor: José Doñe ITLA

Agregamos el usuario que creamos y la ruta del directorio compartido.

Luego lo guardamos y cerramos.

Ahora verificaremos si los cambios se han realizado con el siguiente comando

# testparm

Page 10: Tutorial CentOS 7 - Comparticion de Archivos con Samba

Anaitis Cabrera García 2009-3383 SO-3 Instructor: José Doñe ITLA

Como podemos ver aparecen los parámetros que usamos.

Reiniciamos el servidor samba, para que las nuevas configuraciones surtan

efecto, usamos el comando:

# /etc/init.d/samba restart

Ahora vamos a desactivar el firewall.

Page 11: Tutorial CentOS 7 - Comparticion de Archivos con Samba

Anaitis Cabrera García 2009-3383 SO-3 Instructor: José Doñe ITLA

Page 12: Tutorial CentOS 7 - Comparticion de Archivos con Samba

Anaitis Cabrera García 2009-3383 SO-3 Instructor: José Doñe ITLA

Page 13: Tutorial CentOS 7 - Comparticion de Archivos con Samba

Anaitis Cabrera García 2009-3383 SO-3 Instructor: José Doñe ITLA

Hacemos ping a la maquina cliente de windos

Vamos a la maquina cliente de Windows,

Page 14: Tutorial CentOS 7 - Comparticion de Archivos con Samba

Anaitis Cabrera García 2009-3383 SO-3 Instructor: José Doñe ITLA

Creación de Usuarios: Windows

Vamos al cliente Windows y creamos un nuevo usuario. Debemos tomar en cuenta

que debe ser el mismo usuario que creamos en Linux.

Page 15: Tutorial CentOS 7 - Comparticion de Archivos con Samba

Anaitis Cabrera García 2009-3383 SO-3 Instructor: José Doñe ITLA

En este caso ya el user fue creado, pero solo tienen que hacer click derecho en el

panel>nuevo user y colocan el mismo nombre y clave que en CentOS

Page 16: Tutorial CentOS 7 - Comparticion de Archivos con Samba

Anaitis Cabrera García 2009-3383 SO-3 Instructor: José Doñe ITLA

Volvemos a este usuario parte del grupo Administradores

Para compartir directorios en Windows, creamos una o varias carpetas para

compartir en la ruta que deseemos.

Desactivamos el firewall

Page 17: Tutorial CentOS 7 - Comparticion de Archivos con Samba

Anaitis Cabrera García 2009-3383 SO-3 Instructor: José Doñe ITLA

Y en excepciones activamos compartir archivos y impresoras

Page 18: Tutorial CentOS 7 - Comparticion de Archivos con Samba

Anaitis Cabrera García 2009-3383 SO-3 Instructor: José Doñe ITLA

Ahora volvemos la maquina parte del grupo de trabajo de MYGROUPSMB

Page 19: Tutorial CentOS 7 - Comparticion de Archivos con Samba

Anaitis Cabrera García 2009-3383 SO-3 Instructor: José Doñe ITLA

Page 20: Tutorial CentOS 7 - Comparticion de Archivos con Samba

Anaitis Cabrera García 2009-3383 SO-3 Instructor: José Doñe ITLA

Page 21: Tutorial CentOS 7 - Comparticion de Archivos con Samba

Anaitis Cabrera García 2009-3383 SO-3 Instructor: José Doñe ITLA

Si vamos a toda la red>red de microsofot Windows veremos nuestro server y

nuestra pc

Page 22: Tutorial CentOS 7 - Comparticion de Archivos con Samba

Anaitis Cabrera García 2009-3383 SO-3 Instructor: José Doñe ITLA

En la carpeta del usuario que creamos podremos acceder a los documentod

compatidos en samba

Y aquí están los doc que están el servidor CentOS

Page 23: Tutorial CentOS 7 - Comparticion de Archivos con Samba

Anaitis Cabrera García 2009-3383 SO-3 Instructor: José Doñe ITLA

En el servidor veremos que se reconoce nuestra presencia en la red

Para loguearnos en la red de Windows colocamos el passwd del usuario que

creamos.

Page 24: Tutorial CentOS 7 - Comparticion de Archivos con Samba

Anaitis Cabrera García 2009-3383 SO-3 Instructor: José Doñe ITLA

- SAMBA COMO DOMINIO DE WINDOWS

Para configurar samba como Dominio de Windows vamos a entrar nuevamente al

documento smb.conf para asegurarnos de que algunos parámetros estén bien,

accedemos por el comando:

El parámetro domain master define al servidor maestro del dominio; El parámetro

domain logons define que el servidor permitirá a las estaciones autenticar contra

Samba.

Si se va a utilizar Samba como Controlador Primario de Dominio, es necesario

establecer el guión que ejecutarán las estaciones Windows al conectarse hacia el

servidor. Esto se hace a través del parámetro logon script el cual puede definir o

bien un guión a utilizar por cada usuario (%u.bat) o bien por cada máquina

(%m.bat) o bien de modo general para todos (logon.cmd). Para no complicar las

cosas, defina inicialmente un guión general para todos del siguiente modo:

Page 25: Tutorial CentOS 7 - Comparticion de Archivos con Samba

Anaitis Cabrera García 2009-3383 SO-3 Instructor: José Doñe ITLA

Descomentamos este:

El parámetro add user script sirve para definir lo que se deberá ejecutar en el

trasfondo en el sistema para crear una nueva cuenta de usuario. El parámetro add

machine script es particularmente importante porque es el mandato utilizado para

dar de alta cuentas de máquinas (trust accounts o cuentas de confianza) de modo

automático. El parámetro delete user script es para definir lo propio para eliminar

usuarios, delete group script para eliminar grupos,

Aca nos aseguraremos que Logon master esta igualdo a “yes” y el OS level

igualado a 64 (esto indica el grado de importancia que pose el servidor en las

elecciones de búsqueda) por ultimo vemos que preffered master sea igual a “yes”

Ahora vamos a la parte de Netlogon en el área de Shares Definitions, nos

aseguramos que este de esta manera:

Page 26: Tutorial CentOS 7 - Comparticion de Archivos con Samba

Anaitis Cabrera García 2009-3383 SO-3 Instructor: José Doñe ITLA

Por ultimo vamos a la sección Profiles, acá debemos tenerla igual a esta:

Ahora debemos crear los directorios ya que están en los parámetros pero aun no

existen, los directorios que hemos de crear serán los siguientes y en las siguientes

rutas:

# mkdir /home/samba

# mkdir /home/samba/netlogon # mkdir /home/samba/profiles

Ahora daremos los siguientes permisos a las carpetas:

#chmod 777 /var/spool/samba/

Page 27: Tutorial CentOS 7 - Comparticion de Archivos con Samba

Anaitis Cabrera García 2009-3383 SO-3 Instructor: José Doñe ITLA

# chown -R root:users /home/samba/ # chmod -R 771 /home/samba

Ahora vamos a reiniciar Samba para que se apliquen los cambios:

Ahora vamos a editar el archivo nsswitch.conf con el editor nano:

# nano /etc/nsswitch.conf

Ahora haremos el siguiente cambio en el documento:

hosts: files dns > hosts: files wins dns >

Luego de esto vamos a agregar todas las computadoras del grupo de trabajo a el

siguiente document:

Page 28: Tutorial CentOS 7 - Comparticion de Archivos con Samba

Anaitis Cabrera García 2009-3383 SO-3 Instructor: José Doñe ITLA

Luego de esto vamos a agregar todas las computadoras del grupo de trabajo a el

siguiente document:

Ahora agregaremos al usuario root a la base de datos de Samba, el usuario root

será el administrador de nuestro dominio, esta cuenta es necesaria para agregar

nuevos equipos al dominio Samba, para agregarlo usamos el siguiente comando:

# smbpasswd –a root

Ahora vamos a agregar un directorio para este usuario como Administrador con el

siguiente comando:

# echo "root = Administrador" > /etc/samba/smbusers

Con esto podremos usar el nombre Administrador en Windows ya que es mas

común usar este como es el root en Linux.

Ahora vamos a probar si la configuración fue correcta con el siguiente comando:

# smbclient -L localhost -U%

Page 29: Tutorial CentOS 7 - Comparticion de Archivos con Samba

Anaitis Cabrera García 2009-3383 SO-3 Instructor: José Doñe ITLA

Ahora vamos a establecer los grupos predeterminados de la siguiente manera:

# net groupmap modify ntgroup="Domain Admins" unixgroup=root

Page 30: Tutorial CentOS 7 - Comparticion de Archivos con Samba

Anaitis Cabrera García 2009-3383 SO-3 Instructor: José Doñe ITLA

# net groupmap modify ntgroup="Domain Users" unixgroup=users

# net groupmap modify ntgroup="Domain Guests" unixgroup=nogroup

Ahora vamos a añadir un usuario, por ejemplo, ana, a nuestro dominio Samba.

Tendremos que agregar un usuario como éste para cada cuenta de usuario que

desea conectarse a este servidor de dominio Samba.

Vamos a agregar al usuario ana:

Ahora vamos a agregar una carpeta que sea accesible para todos los usuarios,

usaremos los siguientes comandos que son para crear el directorio y para

cambiar los permisos.

# mkdir -p /home/shares/allusers

# chown -R root:users /home/shares/allusers/

# chmod -R ugoa+rwx /home/shares/allusers/

Page 31: Tutorial CentOS 7 - Comparticion de Archivos con Samba

Anaitis Cabrera García 2009-3383 SO-3 Instructor: José Doñe ITLA

Luego al final del document smb.conf agregamos las siguientes lineas:

Guardamos

Cada vez que hagamos un cambio reiniciar los servicios

Nuevamente nos aseguramos que todo este correcto y que tengamos nuestro

servidor de dominio con el comando: # testparm

Page 32: Tutorial CentOS 7 - Comparticion de Archivos con Samba

Anaitis Cabrera García 2009-3383 SO-3 Instructor: José Doñe ITLA

Agregamos la pc al dominio de samba.

Page 33: Tutorial CentOS 7 - Comparticion de Archivos con Samba

Anaitis Cabrera García 2009-3383 SO-3 Instructor: José Doñe ITLA

Page 34: Tutorial CentOS 7 - Comparticion de Archivos con Samba

Anaitis Cabrera García 2009-3383 SO-3 Instructor: José Doñe ITLA

Page 35: Tutorial CentOS 7 - Comparticion de Archivos con Samba

Anaitis Cabrera García 2009-3383 SO-3 Instructor: José Doñe ITLA

Nos logueamos como root

Page 36: Tutorial CentOS 7 - Comparticion de Archivos con Samba

Anaitis Cabrera García 2009-3383 SO-3 Instructor: José Doñe ITLA

Vemos que tenemos una ruta hacia el servidor samba

Page 37: Tutorial CentOS 7 - Comparticion de Archivos con Samba

Anaitis Cabrera García 2009-3383 SO-3 Instructor: José Doñe ITLA

Aquí esta el directorio de root que compartimos

Vamos a Mis sitios de red >toda la red> red de Microsoft y veremos las carpetas

compartidas

Page 38: Tutorial CentOS 7 - Comparticion de Archivos con Samba

Anaitis Cabrera García 2009-3383 SO-3 Instructor: José Doñe ITLA

Salimos de root y nos logueamos como anaitissmb

Page 39: Tutorial CentOS 7 - Comparticion de Archivos con Samba

Anaitis Cabrera García 2009-3383 SO-3 Instructor: José Doñe ITLA

Page 40: Tutorial CentOS 7 - Comparticion de Archivos con Samba

Anaitis Cabrera García 2009-3383 SO-3 Instructor: José Doñe ITLA

Este es el directorio compartido en anaitis

Page 41: Tutorial CentOS 7 - Comparticion de Archivos con Samba

Anaitis Cabrera García 2009-3383 SO-3 Instructor: José Doñe ITLA

Y aquí esta nuestra red en el server