Samba + Windows: ¿Permitir múltiples conexiones por diferentes usuarios?

23

Tengo una máquina que ejecuta Ubuntu con Samba que uso para compartir cosas con las máquinas Windows de mi familia en nuestra red local. Actualmente acceden a un recurso compartido para películas / música / etc. con un usuario.

Quiero conectarlos a otro recurso compartido como un usuario diferente (por ejemplo, el usuario "goytacaz").

Cuando intento conectarme a este nuevo recurso compartido, Windows me da el "Error 1219" y se queja de múltiples conexiones por el mismo usuario.

¿Cómo hago para que mi máquina acepte múltiples conexiones del mismo usuario?

quijote curandero
fuente
¿Estás buscando conectarte usando samba? Samba ya es compatible con este AFAIK.
heavyd

Respuestas:

24

Sobre Samba? No debería haber ningún problema; siempre que el nombre de usuario y la contraseña sean correctos, ambas conexiones deberían ocurrir correctamente.

Actualización: re: "Error 1219". Este es un error del lado del cliente: Windows solo le permite conectarse a un servidor como un usuario a la vez. (Consulte la documentación de Microsoft en KB938120 ). Esto significa que la máquina con Windows ya se ha conectado como un usuario diferente y, por lo tanto, sus intentos de conectarse nuevamente, como el usuario correcto, están fallando.

Debe desconectar la primera conexión antes de poder volver a conectarse. Dos maneras que sé para hacer eso:

  • Desconecte todas las unidades de red de reconexión al inicio de sesión de ese servidor. Reiniciar. Vuelva a conectarse al servidor y asegúrese de proporcionar el nombre de usuario y la contraseña adecuados.

  • Use el comando net use / delete del shell de comandos de Windows (Inicio -> Ejecutar -> cmd; en el indicador, escriba el comando; es posible que deba especificar un nombre para compartir).

Actualización 2: si los usuarios ya se están conectando al servidor con un usuario, no podrá permitir que se conecten con un segundo usuario. Tendrá que reconsiderar su estrategia de compartir y reconfigurar Samba para seguir esa estrategia. (Esto no es tu culpa; culpo a Windows).

Personalmente, me quedaría con usuarios individuales para cada persona y consideraría usar grupos para controlar el acceso a los recursos compartidos. Esto funciona bien si tiene algunos recursos compartidos a los que desea que todos tengan acceso de lectura y escritura, y otros a los que desea que sean de solo lectura para todos menos unos pocos usuarios.

Actualización 3: el documento de MS vinculado anteriormente ofrece estas dos soluciones para permitir la conexión al servidor como usuarios separados. La idea general es hacer que Windows piense que se está conectando a un servidor diferente utilizando un nombre diferente .

  1. Use la dirección IP del servidor cuando se conecte con el segundo nombre de usuario. (Se usa \\ServerName\sharenamecuando se conecta como el primer usuario, pero se usa \\X.X.X.X\sharenamecuando se conecta como el segundo usuario).

  2. Cree uno o más alias DNS para que el servidor los use cuando se conecte con el segundo (, tercero, cuarto ...) nombre de usuario. (Se usa \\ServerName\sharenamecuando se conecta como el primer usuario, pero se usa \\ServerAlias1\sharenamecuando se conecta como el segundo usuario, \\ServerAlias2\sharenamecuando se conecta como el tercer usuario, etc.)

quijote curandero
fuente
1
Gracias por esta respuesta Tuve el mismo problema, y ​​la conexión con la dirección IP del servidor en lugar del nombre DNS funcionó para mí para la segunda conexión.
Ben Torell
10

Esta es una solución para Windows 7 (aunque también podría funcionar para otras versiones)

  1. abra el Bloc de notas (o cualquier editor de texto) como Administrador
    (debe hacer clic con el botón derecho y decir "ejecutar como Administrador")

  2. find: c: \ WINDOWS \ system32 \ drivers \ etc \ hosts (necesitará mostrar todos los archivos no solo .txt)

Ahora, si es decir:
- tiene 3 usuarios de samba: tom fred jon
- 3 recursos compartidos de samba en su servidor de samba (es decir, IP: 192.168.0.100): docs stuff pics
- desea conectarse como tom a docs, como fred to stuff y como Jon a las fotos

Ahora agregue las siguientes líneas al archivo hosts :

192.168.0.100   tomsdocs   tomsdocs
192.168.0.100   fredstuff  fredstuff
192.168.0.100   jonspics   jonspics

Una vez que cierre y guarde, puede "Asignar una unidad de red" de esta manera:

\\tomsdocs\docs as user tom
\\fredstuff\stuff as user fred
\\jonspics\pics as user jon

Tenga en cuenta que los nombres anteriores son totalmente suyos ... Lo que sea que coloque en el archivo de hosts necesitará maquinar lo que llama el servidor cuando asigne la unidad de red.

La razón por la que esto funciona es porque Windows necesita pensar que se está conectando a diferentes servidores. Podría decirse que también podría configurar su propio servidor DNS doméstico, pero prefiero falsificar un montón de entradas en el archivo hosts (que se evalúa antes de que su máquina Windows solicite ayuda al DNS).
Como todo el problema es un problema de Windows del lado del cliente, prefiero hacerlo de esta manera.

Espero que esto ayude.

Sebastian
fuente
¡Esto funcionó a las mil maravillas! Jugueteé durante una hora con el recurso compartido de samba en el servidor hasta que encontré esto - Gracias :)
lorem monkey
Gracias por esto. Odio tener que trabajar en la nueva basura que arroja Microsoft, pero esto es elegante si no es tonto ... ¡funciona genial!
SuperJames
1
Sin embargo, ¿son curiosos los nombres dobles como un error tipográfico? ¿Por qué usaría exactamente los mismos dos veces para la misma IP?
brezanac
8

Si prefiere no jugar con cada cliente para resolver un problema del servidor, puede usar el archivo smb.conf para configurar alias de nombre para el servidor. Esto tiene el beneficio adicional de que cada alias se muestre como un servidor distinto en la red de Windows.

Edite su archivo smb.conf y agregue la siguiente entrada en la sección [global]:

[global]
...
netbios aliases = alias1 alias2 readonly


Después de reiniciar samba (¡recuerde reiniciar smbd Y nmbd!), Debería poder acceder a los nuevos alias de servidor utilizando la notación UNC en el Explorador de Windows.
Tenga en cuenta que puede llevar un poco de tiempo, en mi sitio, aproximadamente 1 minuto después del reinicio de samba, para que funcionen.
Una vez que aparecen los alias en la red de Windows, definitivamente está listo para comenzar.

Line40
fuente
2

Estaba teniendo el mismo problema.

para un usuario uso: \ 192.168.xx <- IP del servidor ubuntu para el otro usuario: \ server-name <- nombre de host del servidor ubuntu.

Esto me permitió conectarme con una máquina Windows usando diferentes inicios de sesión.

Eric
fuente
1

Utilice la opción de samba de alias de netbios:

netbios name = share1
netbios aliases = share2

Windows "verá" 2 servidores Samba diferentes y puede conectarse para compartir con autenticación de usuario diferente

Pol Hallen
fuente