yum install sambaEl archivo de configuración de Samba lo podemos encontrar en /etc/samba/smb.cof, vamos a realizar una copia de respaldo de este archivo:
cp -p /etc/samba/smb.conf /etc/samba/smb_29082007_copia.confSiempre es bueno realizar una copia de seguridad a los archivos de configuración en caso de que cometamos algún error podamos volver a lo que teníamos, ademas yo siempre le agrego la fecha para saber cuando hice el respaldo. Ahora editamos el archivo de configuración de samba. (Puedes utilizar el editor de tu preferencia vim, nano, gedit, kate... etc.)
gedit /etc/samba/smb.confEn el archivo de configuración cambia donde dice workgroup = MSHOME (puede ser distinto en tu caso) a:
workgroup = MIGRUPODonde MIGRUPO es el nombre del grupo de trabajo de MS Windows o el nombre de dominio, de donde será parte el servidor Samba. Tienes que configurar el mismo grupo de trabajo en tus computadoras Windows, esto lo puedes hacer en Panel de control>Sistema>Nombre de Equipo>Cambiar Nombre. Si quieres tambien puedes cambiar la linea donde dice server string esto es simplemente la descripción que verá tu grupo del servidor puedes colocar algo como:
server string = %h Servidor de archivos%h lo que hace es imprimir el nombre de host de tu servidor. Guarda los cambios y sigamos.
adduser nombre_usuarioNos pedira la clave que queremos utilizar para ese usuario y algunos datos que son opcionales, luego podemos cambiar sus privilegios. Supongamos que tenemos un usuarios ya creado llamado jose y que lo queremos agregar a los usuarios de Samba, para esto ejecutamos el siguiente comando:
sudo smbpasswd -a joseNos aparecerá algo como:
smbpasswd -a jose New SMB password: Retype new SMB password: Added user jose.Colocamos la clave que queremos que tenga ese usuario para ingresar al servidor Samba, la clave puede ser distinta a la clave que tiene el usuario para ingresar a Linux. Vamos a crear un nuevo archivo donde estarán todos los usuarios autorizados para conectarse al Servidor de Samba, para esto ejecutamos:
gedit /etc/samba/smbusersEn el nuevo archivo copiamos la siguiente línea:
nombre_enlinux = "Nombre en Windows"Donde nombre_enlinux es el nombre del usuario que tenemos en linux en este caso jose y Nombre en Windows es el nombre del usuario de red en Windows. Tenemos que agregar una nueva línea por cada usuario que creemos para Samba. Para editar un usuario ejecutamos:
smbpasswd -a nombre_usuarioPara borrar un usuario ejecutamos:
smbpasswd -x nombre_usuarioAhora que ya tenemos a los usuarios creados procedamos a ver como se compaten archivos y directorios.
gedit /etc/samba/smb.confBusca la línea que dice:
; security = userY la modificamos por:
security = user username map = /etc/samba/smbusersCon esto lo que estamos haciendo es diciendole a Samba que vamos a autenticar por usuario y donde está la lista de los usuarios permitidos que fue la que creamos anteriormente. Para darle acceso a los usuario a sus respectivos directorios home o personales, hacemos lo siguiente: Buscamos las línea donde dice
;[homes] ; comment = Home Directories; ;browseable = no ;valid users = %S ;writable = noY le quitamos el ; para descomentarlos, y en writable le cambiamos no por yes para que el usuario pueda escribir en el directorio. Siempre que cambiemos la configuración del archivo smb.conf debemos ejecutar el siguiente comando:
testparmlo que hace este parámetro es verificar que los parámetros del archivo smb.conf estén correctos, luego que nos diga que todo esta bien ejecutamos:
service smb restartpara aplicar los cambios. Ahora si quieremos compartir un directorio que llamaremos grupo hacemos lo siguiente, primero creamos la carpeta que queremos compartir si ya no la habíamos creado:
mkdir /home/grupo chmod 777 /home/grupoLa puedes crear donde quieras. Ahora vamos a modificar el archivo de smb.conf, voy a suponer que ya modificaste la parte de security y agregaste /etc/samba/smbusers a este archivo y que ya sabes como abrirlo para editarlo de ahora en adelante. Agregamos la siguientes lineas al final del archivo:
[Grupo] comment = Archivos Compartidos path = /home/grupo public = yes writable = yes create mask = 0700 directory mask = 0700 force user = nobody force group = nogroupAnalicemos esta estructura, comment simplemente es un comentario de lo que es la carpeta puedes colocar lo que quieras, path por supuesto es donde esta la carpeta que queremos compartir, public es si quieres hacer esta carpeta disponible publicamente o no, para cambiarlo simplemente coloca no, writable permite definir si se puede escribir en la carpeta o no, create mask y directory mask es la mascara con la que se crearan los archivos (es decir que privilegios tendrán los archivos y directorios creados) si quieras que puedan hacer cualquier acción en la carpeta coloca 0777 en ambas, force group y force user es para forzar que solo un grupo específico o usuario se pueda conectar a esta carpeta. Si además queremos que solo un grupo de usuarios pueda accesar a la carpeta agregamos esta línea después de writable:
valid users = nombre_usuario1 nombre_usuario2Donde puedes agregar los usuarios que quieras que tengan acceso. Luego de que termines de agregar las carpetas que quieras compartir Guarda el archivo y probamos el archivo smb.conf y reiniciamos el servidor de Samba:
testparm service smb restart
... # printing = cups # printcap name = cups ...Y descomentalas:
... printing = cups printcap name = cups ...Guarda el archivo cimprueba los parámetros de smb.conf y reinicia el servidor de Samba ejecutando:
testparm service smb restartY eso es todo, ya puedes ir a tu PC Windows y buscar en tu grupo de trabajo las carpetas compartidas de Linux en Samba y además agregar la impresora. Espero que les haya servido este tutorial, más adelante publicaré un tutorial acerca de como configurar un servidor WINS con Samba. El manual oficial de Samba lo pueden conseguir aquí. Como siempre espero sus comentarios Saludos Olivers
Otros artículos que te pueden interesar
![]()
Este trabajo está licenciado bajo Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 Unported License
Oliver gracias por todo, una pregunta mas, las computadoras con XP entran muy bien al servidor con fedora, pero las computadoras con windows vista me dicen que no tengo permiso para ingreesar, y le estoy ingresando el mismo usuario y el mismo pasword de identificación
Hola te queria agradecer y feicitar por tu tutorial si puedo compartir carpetas atravez de una pc con windows XP que tengo conectada atravez de interntet, pero intenté compartir archivos mediante una laptop por mdio de red inalambrica y windows vista home y no me adejado compartir.
Te muestro mi si siguiete configuración:
[global]
server string = Samba Server Version %v
passdb backend = tdbsam
username map = /etc/samba/smbusers
log file = /var/log/samba/log.%m
max log size = 50
printcap name = cups
cups options = raw
[homes]
comment = Home Directories
path = /home/kill/Programas/
valid users = %S
read only = No
[printers]
comment = All Printers
path = /var/spool/samba/
printable = Yes
browseable = No
[Grupo]
comment = Archivos Compartidos
path = /home/grupo/
force user = nobody
force group = nogroup
read only = No
create mask = 0777
directory mask = 0777
guest ok = Yes
en donde en configure la lap con con el mismo grupo grupo de trabajo llamado workgroup, aquí esta mi agregué el los usuaios /etc/samba/smbuser:
usuario = familia1, VCO
#donde familia1 es el nombre de la lap.
Espero que me puedas echar una mano con esto. ¡Saludos!
Hola Victor, si te funcionó con Windows XP y no con Windows Vista el problema no está en la configuración de Samba sino más bien en el Windows Vista, fijate que estés permitiendo la conexión remota al Windows Vista, que el firewall este permitiendo la conexión y que estén dentro del mismo grupo.
Entre Windows XP y Windows Vista tienes algún problema?
Saludos
Olivers
Hola q tal ya segui todo al pie de la letra pero esta instruccion no funciona:
/etc/init.d/samba restart
me dice q el fichero o directorio no existe
Hola Javier, estas haciendo esta operacion como root?
Prueba
service smb start
service smb stop
service smb restart
Saludos
Olivers
Emm muy buen tutorial…
Una duda Esto tambien funciona para CentOS 5??
pregunto porque que son muy similares
Hola Silver si debería funcionar igual igual prueba y cualquier duda puedes preguntar por aca
Saludos
Olivers
Estoy estudiando linux y estamos trabajando con fedora 8 , quiero compartir archivos e realizado todos los pasos antes mencionados , pero al hacer \\la ip de mi Servidor Samba Linux veo mi home Directory y la carpeta que estoy compartiendo pero no puedo ingresar a ellas ya le di permisos con el comando chmod 777 pero igual, en adicion en mis sitios de red de mis pcs windows no veo a mi servidor linux, talves e obviado alguna parte , podrían apoyarme …SOS..
Flower, puede ser muchas cosas.
1. Revisa el archivo de smbusers y verifica que:
nombre_enlinux = “Nombre en Windows”
2. En el archivo de configuracion de Samba asegurate que diga en la carpeta que compartes:
browseable = yes
3. Verifica que hayas reiniciado el servidor Samba despues de que hagas los cambios
testparm
service smb restart
Si después de esto no puedes acceder a la carpeta vuelve a escribir.
Saludos
Olivers
Solo una pregunta, funcionaria en fedora 10¿?
gracias
Hola Diego si si funciona en Fedora 10
Saludos
Olivers
He visto todas las formas para compartir archivos e impresoras desde linux hacia windows, pero no he visto lo contrario…
como seria si tengo la impresora conectada a windows?
Como haria para ver la impresora en linux (tengo fedora 12) estando esta conectada en un pc windows.
Es muy importante para mi….Gracias
hairosv@hotmail.com
Hola Hairo, es muy sencillo
1. Primero asegurate que tienes instalado el cliente de Samba
yum install samba-client
2. La impresora debe estar compartida en Windows
Luego simplemente ve al menú de Sistema>Administración>Impresión ahí te aparecerá un diálogo presionas sobre Añadir en el siguiente cuadro puedes probar buscando una impresora en red y si esto no te funciona coloca la dirección IP o la dirección con la que compartes la impresora.
Con esto ya deberías poder añadir la impresora que compartes en Windows
Para ver carpetas compartidas en Windows las deberías ver en el menú de Lugares>Red
Espero que te sea de utilidad
Saludos
Olivers
Todo bien Oliver, hasta el momento en que mando una impresion, me pide nombre de usuario y clave la cual no se porque mi red esta en fuera de dominio (grupo de trabajo) cada quien entra con su clave.
No obstante en la pcwin donde está la impresora instala utilizo la misma clave que tiene dicha pc para entrar y aun asi no puedo conectarme a la impresora.
Lo unico que puedo hacer es instalarla en la pcFedora, pero para imprimir desde dicha pc me pide la bendita clave esa….
Hola, primero que todo, muy buen tutorial;
tengo el siguiente problema, he configurado una carpeta para compartir archivos, la cual debe ser mapeada en varios equipos con windows, y tengo algunas dudas:
- es necesario una cuenta por acceso? – me explico, pueden conectarse de 10 maquinas distintas con un mismo usuario/password?
- puede una cuenta guest hacer lo recien planteado?
He realizado pruebas con Ubuntu 10.04, CentOS 5.0, y ahora Fedora Core 13, y he tenido problemas para realizar la configuracion de usuarios, ahora en FC13 veo la carpeta en la red, pero no puedo acceder a las sub carpetas, he creado un usuario y password en smb para acceder a ella, les dejo la configuracion de la carpeta:
[compartido]
comment = ficheros
path = /home/administrador/compartido
read only = no
browseable = yes
guest ok = yes
create mask = 0777
directory mask = 0777
la seguridad esta por usuario.
Agradezco cualquier respuesta de antemano
Hola amigos,
tengo un problema y espero me puedan ayudar.
tengo un equipo con fedora 13 y estoy tratando de configurarlo para que se vea
en la red con los demas equipos con windows, segui todos los pasos que aparecen en el tutorial pero no me resulta, cuando voy al icono red me dice “buscando red de windows” luego me arroja un mensaje “no se pudo montar el lugar, fallo al obtener la lista de comparticion del servidor”.
espero me puedan ayudar ya que necesito subir pronto este equipo a la red.
Saludos.