How to #7: Samba como Grupo de Trabajo

Anuncio
Instituto Tecnológico de Las Américas
(ITLA)
Sistema Operativos 3
Luis Enmanuel Carpio Domínguez
Matrícula: 2012-1206
How to #7: Samba como Grupo de Trabajo
SAMBA
Samba es una implementación de código abierto del protocolo Server Message Block
(SMB). Este permite la conectividad de Microsoft Windows, Linux, UNIX, y otros
sistemas operativos juntos, lo que permite acceso y compartir archivos e impresoras
entre Windows y los sistemas Linux.
Samba usa el protocolo SMB que le permite parecer como un servidor Windows a
clientes Windows.
Un servidor Linux con SAMBA debidamente configurado puede sustituir a un servidor
NT/2000, no solo en las tareas de compartir archivos y brindar un servicio activo de
directorios (ADS, Active Directory Service), sino que además puede comportarse
como PDC (Primary Domain Controller), efectuando la autentificación de usuarios con
clientes Windows 2000/NT/98/95, compartiendo recursos (directorios e impresoras) y
personalizando las sesiones de usuarios.
Necesitará tener instalados los siguientes paquetes, que seguramente vienen incluidos
en los discos de instalación de su distribución predilecta:
 samba:
Servidor SMB.
 samba-client:
Diversos clientes para el protocolo SMB.
 samba-common:
Ficheros necesarios para cliente y servidor.
 samba-swat:
Configuración con GUI via web browser.
En caso de que no estemos seguros de tener estos repositorios poemos revisar
introduciendo el comando rpm -q seguido del paquete. Luego de verificar
descargamos los que nos falten con el comando yum install seguido del o los
paquetes.
Samba como Grupo de Trabajo
Los archivos de configuración de samba se encuentran en el fichero /etc/samba/
conteniendo los archivos smb.conf y lmhosts.
A continuación modificaremos el fichero /etc/samba/smb.conf con cualquier editor de
texto. Dentro de este notará que la información que le será de utilidad viene comentada
con un símbolo # y los ejemplos con ; (punto y coma), siendo estos últimos los que
tomaremos como referencia.
[root@localhost ~]# vim /etc/samba/smb.conf
Luego descomentamos quitándole el ; a las líneas netbios name donde pondremos
el nombre de nuestro servidor, interfaces donde le indicaremos las interfaces del
equipo que escucharan peticiones y hosts allow que especifica las direcciones o el
rango de direcciones del o los clientes que accederán a este servicio.
En este caso se utilizó como netbios carpio.domain y en las interfaces local (lo)
Ethernet 0 (eth0) y la dirección del servidor.
Ahora pasamos a introducir la dirección ip y el netbios name al archivo lmhosts.
[root@localhost ~]# vim /etc/samba/lmhosts
Este archivo solo contiene la dirección de host local. Lo que hicimos fue agregar la
dirección de nuestro servidor y el netbios name.
Otro archivo que aunque no pertenece a la carpeta de samba, debemos configurar y es
/etc/hosts y le agregamos la dirección del servidor, el netbios name y los usuarios
que utilizaran el servicio.
Ahora para probar que la configuración que hemos hecho al archivo smb.conf
utilizamos el comando testparm y presionamos enter.
Ahora vamos crear el usuario que utilizara los recursos del grupo de trabajo de samba,
tanto en Linux como en Windows. Por lo tanto deben ser igual.
Para crear un usuarios nuevo en Linux usamos el comando useradd y le agregamos
los parámetros -s /sbin/nologin para que el usuario no tenga acceso a los
comandos del Shell, pues no es necesarios para su fin, luego le agregamos la
contraseña que utilizara en samba con el comando smbpasswd –a [usuario] y por
ultimo le damos acceso a los servicios de samba con smbpasswd –e [usuario].
Ahora pasamos al directorio del usuario para crear algunas carpetas y archivos que
vamos a compartir, luego les cambiamos los permisos para que puedan ser accedidos
en Windows.
Ya que tenemos el directorios y los archivos que se van a compartir, debemos de
introducirlos en el archivo de configuración de samba. Abrimos el archivo con
cualquier editor y al final agregamos lo siguiente.
Hay muchos parámetros que pomos
agregar, para esta práctica solo
estamos necesitando estos.
Despues de introducir cada una de
estas líneas, guardamos y cerramos.
Entre los parámetros que podemos usar están:
Opción
Descripción
guest ok
Define si ser permitirá el acceso como usuario invitado. El valor
puede ser Yes o No.
public
Es un equivalente del parámetro guest ok, es decir define si ser
permitirá el acceso como usuario invitado. El valor puede
ser Yes o No.
browseable
Define si se permitirá mostrar este recurso en las listas de recursos
compartidos. El valor puede ser Yes o No.
writable
Define si ser permitirá la escritura. Es el parámetro contrario de read
only. El valor puede ser Yes o No. Ejemplos: «writable = Yes» es
lo mismo que «read only = No». Obviamente «writable = No» es
lo mismo que «read only = Yes»
valid users
Define que usuarios o grupos pueden acceder al recurso compartido.
Los valores pueden ser nombres de usuarios separados por comas o
bien nombres de grupo antecedidos por una @. Ejemplo: fulano,
mengano, @administradores
write list
Define que usuarios o grupos pueden acceder con permiso de
escritura. Los valores pueden ser nombres de usuarios separados por
comas o bien nombres de grupo antecedidos por una @.
Ejemplo: fulano, mengano, @administradores
admin users
Define que usuarios o grupos pueden acceder con permisos
administrativos para el recurso. Es decir, podrán acceder hacia el
recurso realizando todas las operaciones como super-usuarios. Los
valores pueden ser nombres de usuarios separados por comas o bien
nombres de grupo antecedidos por una @. Ejemplo: fulano,
mengano, @administradores
directory mask
Es lo mismo que directory mode. Define que permiso en el sistema
tendrán los subdirectorios creados dentro del recurso. Ejemplos: 1777
create mask
Define que permiso en el sistema tendrán los nuevos ficheros creados
dentro del recurso. Ejemplo: 0644
Verificamos los cambios con el comando testparm, si nos da algun error, abrimos el
archivo y arreglamos lo que este mal, y asi hasta que todos este bien.
Luego de esto tenemos que inicar los servicios, esto lo hacemos con los comandos
service smb start y service nmb start. Si queremos que al inicar el sistema
los servicios inicien introducimos los comandos chkconfig smb on y shkconfig
nmb on.
Casi todos los servicios de red necesitan tener permisos del firewall y de selinux.
Para configurar el firewall en nuestros servidor para que permita samba tenemos dos
formas: Desactivar por completo el firewall o dándole permiso al servicio que estamos
usando.
Para desactivar el firewall por completo (que no recomiendo) utilizamos el comando:
[root@localhost ~]# service iptables stop
Pero para esta última opción (que si recomiendo) utilizamos el comando:
[root@localhost ~]# system-config-firewall-tui
Y marcamos las líneas de Samba. Se nos presentará un cuadro como este.
Luego de damos a close y luego al salir le damos a yes para que guarde los cambios.
Opcionalmente y en algunos casos, obligatoriamente, debemos desactivar selinux y
lo hacemos editando el archivo que se encuentra en /etc/sysconfig/selinux de
la siguiente forma.
Ahora procedemos a verificar que el servidor tenga conexión con el cliente. Para esto
enviamos un ping a la ip del cliente.
De la misma forma probamos la maquina cliente, hacia el servidor (por las dudas).
Bien, ya que tenemos comunicación entre los equipos vamos a configurar el cliente
Windows.
Lo primero que hacemos es crear un nuevo usuario igual al que creamos en Linux. Nos
dirigimos hasta Computer y luego damos click derecho y nos dirigimos hacia Manage
o Administrar.
Después nos dirigimos al panel izquierdo y seleccionamos Local Users and Groups y
damos clic derecho a Users luego New User. Luego llenamos solo los parámetros de
username, full name y contraseña.
Al igual que en el servidor, necesitamos configurar el firewall para que permita el
acceso de nuestra maquina cliente en la red. Este lo desactivamos dirigiéndonos al
Panel de Control de Windows o rápidamente en Incio escribir “Firewall” y
seleccionar Check firewall status. Luego seleccionamos en el panel izquierdo.
Después desactivamos y salimos.
Ahora ya podemos agregar el equipo cliente al grupo de trabajo. Esto lo hacemos
dirigiéndonos a Inicio, damos clic derecho en Computer y seleccionamos Properties.
Luego en esta ventana seleccinamos en la parte inferior derecha, Change settings.
Luego en la pestaña actual que nos presenta le damos a cambiar el nombre de la
computadora y grupo de trabajo.
En el cuadro que dice workgroup
introducimos el nombre que le asignamos
previamente en la configuración de samba
en el servidor, en este caso SBMGROUP.
Luego nos pedirá reiniciar la computadora
y cuando se reinicie nos logueamos con el
usuario que creamos, en este caso luis.
Ahora desde cualquier directorio en Windows, del lado izquierdo abrimos la pestaña
Network, donde nos aparecerá el servidor con el netbios name que configuramos,
luego entramos y vemos lo que hemos compartido como workgroup.
Nota: Esta práctica fue realizada por Luis Enmanuel Carpio Domínguez en el sistema
operativo CentOS 6.5 64-bits como práctica de la asignatura Sistemas Operativos 3 en
el Instituto Tecnológico de las Américas (ITLA), Rep. Dom.
Todos los derechos de edición y creación están reservados para el autor original.
Copyright © 2014
Descargar