Compartiendo recursos con Samba

Samba es:
- La implementación libre del protocolo SMB/CIFS originalmente desarrollada por Andrew Tridgell y en la actualidad mantenida por un grupo de colaboradores.
- Un conjunto de servicios y herramientas que permiten integrar redes UNIX - UNIX y redes UNIX - Windows de forma transparente al usuario.
* smbd: Servicio que administra ficheros e impresora permite autenticación y autorización.
* nmbd: Provee servicios NetBIOS y puede actuar como servidor WINS
* smbclient: Es un cliente estilo ftp para acceder a los recursos compartidos
* pdbedit: Utilidad para administrar la base de datos de usuarios samba
* net: Permite administrar el servidor Samba

Instalar samba

CentOS / Fedora / RHEL / BLAG

# yum install samba3x samba3x-client samba3x-doc

Debian / Ubuntu

$ sudo apt-get install samba samba-doc samba-tools smbclient
Añadir usuarios a la Base de Datos Samba
# pdbedit -a nom-usr (nom-usr debe ser un usuario UNIX) 
Mostrar detalles del usuario creado
# pdbedit -Lv
Obligar a cambiar passwd en el primer acceso
# net sam set pwdmustchangenow nom-usr yes
Cambiar contraseña cada 30 días
 # pdbedit -P "maximum password age" -C 30
Actualizar contraseña

Debes Conectarte por ssh al servidor samba y ejecutar

$ smbpasswd

Como root puedes actualizar la contraseña de otros usuarios

# smbpasswd nom-usr

Compartiendo recursos

Para compartir un recurso determinado debemos editar el fichero smb.conf en CentOS, Debian / Ubuntu lo podemos encontrar en /etc/samba/smb.conf. El fichero de configuracción esta divido por secciones, los valores de los parámetros definidos en la sección [Global] son comunes al servidor Samba a menos que menos que se sobreescriban en una sección determinada.

Editar fichero de configuración
# vim /etc/samba/smb.conf 
Establecer parámetros globales
[Global]
#
# Grupo de trabajo al que pernetecemos
	workgroup = FLOSSBLOG
#
# Este parámetro solo tiene propósito informacional
	server string = Servidor de fichero FLOSSBLOG
#
# Aqui puede especificar un nombre diferente al nombre 
# real del servidor
	netbios name = FLOSSBLOG
#
# Util si su servidor tiene mas de una interfaz de red
# por ejemplo si tuviera además una interfaz eth1 y quesiera que
# el servidor Samba también respondiera por esa interfaz bastaría
# con agregarla al final de esta directiva
	interfaces = lo eth0
#
# Permitimos que solos las computadoras que pertenecen 
# la red 172.16.2.* acceden a nuestro servidor Samba 
	hosts allow = 127. 172.16.2.
#
# Si queremos compartir recursos que esten accesible sin necesidad de
# autenticarse, especificamos la siguiente directiva
	security = share
#
# Las siguientes directivas garantizan que cada vez que se cree 
# un dir o fichero se cree con los siguientes permisos
# Ficheros:
#  - Propietario: Lectura y escritura
#  - Grupo: Lectura y escritura
#  - Resto: Cero permisos 
# Directorios:
#  - Propietario: Lectura, escritura y ejecución
#  - Grupo: Lectura, escritura y ejecución
#  - Resto: Cero permisos 
	create mask = 0660
	directory mask = 0770
	force create mode = 0660
	force directory mode = 0770
Compartiendo recursos con acceso restringido

Para compartir un recurso agregamos la siguiente sección al fichero smb.conf

# Nombre que los usuarios van ver cuando se conecten al servidor Samba
[recursos-flossblog]
        #
	# Este tiene un propósito informacional
	comment = Fciehros HTML, CSS, PHP  
        #
	# Caminino físico
	path = /home/sedlav/flossblog
	#	
	# No público
        public = no
	#
	# Acceso de escritura 
        writable = yes
	#
	# Solo tienen acceso de lectura los que pertenecen 
        # al grupo readers
        read list = @readers
	#
	# Solo tienen acceso de escritura los que pertenecen 
        # al grupo writers
        write list = @writers
	#
	# Las siguientes directivas garantizan que cada vez que 
        # se cree un fichero o directorio el usuario y grupo 
        # sea flossblog y flossadmins respectivamente  
        force user = flossblog
        force group = flossadmins
Compartiendo recursos con acceso público

Agregamos al smb.conf

[flossblog-publico]
	comment = Recursos públicos
	#
	# Acceso de solo lectura
   	read only = yes
	#
	# Directiva que establece acceso público al recurso compartido
   	guest ok = yes
   	path = /home/sedlav/flossblog-pub
   	force user = public
   	force group = public
Si el SELinux esta habilitado. ejecutar
 # setsebool -P samba_enable_home_dirs on
 # setsebool -P samba_export_all_rw on
 # chcon -t samba_share_t DIR
Iniciar Samba

CentOS/Fedora/RHEL/BLAG

# service smb start

Debian/Ubuntu

# /etc/init.d/samba start
Reiniciar Samba

CentOS/Fedora/RHEL/BLAG

# service smb restart

Debian/Ubuntu

# /etc/init.d/samba restart
Detener Samba

CentOS/Fedora/RHEL/BLAG

# service smb stop

Debian/Ubuntu

# /etc/init.d/samba stop
Comprobar estado

CentOS/Fedora/RHEL/BLAG

# service smb status

Debian/Ubuntu

# /etc/init.d/samba status

Lecturas recomendas

- Proyecto oficial Samba

Los tutoriales aquí en LibreByte están disponible bajo una licencia de software libre. Si le gusta mi trabajo considere:
Comprar un Hosting/VPS o Servidor Dedicado en MCKHost

Deja una respuesta

Tu dirección de correo electrónico no será publicada.

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.