Hacemos una revisión completa cada artículos de nuestra página web con el objetivo de mostrarte en todo momento información certera y actual.
Solución:
Recomiendo crear un usuario dedicado para ese recurso compartido y especificarlo en force user
(ver documentos).
Crear un usuario (shareuser
por ejemplo) y establezca el propietario de todo en la carpeta compartida para ese usuario:
adduser --system shareuser
chown -R shareuser /path/to/share
Luego añade force user
y la configuración de la máscara de permiso en smb.conf
:
[myshare]
path = /path/to/share
writeable = yes
browseable = yes
public = yes
create mask = 0644
directory mask = 0755
force user = shareuser
Tenga en cuenta que guest ok
es un sinonimo de public
.
En la configuración de compartir en smb.conf
, deberá especificar los nombres de los usuarios y/o grupos que pueden escribir en el recurso compartido mediante un write list = ...
línea.
Ejemplo:
[myshare]
...
write list = my_linux_username
Entonces necesitarás usar el smbpasswd
comando para configurar una contraseña para autenticar my_linux_username
para samba:
sudo smbpasswd -a my_linux_username
Este paso es necesario porque las contraseñas estándar del sistema en /etc/shadow
se codifican en algoritmos que son incompatibles con los algoritmos de cifrado de contraseña que se utilizan en el protocolo SMB. Cuando un cliente envía un paquete de autenticación SMB, incluye una contraseña codificada. Solo se puede comparar con otro hash de contraseña que usa el mismo algoritmo.
(Las instrucciones muy, muy antiguas del milenio anterior pueden recomendar deshabilitar el cifrado de contraseñas en Samba y usar ciertos trucos de registro para permitir que Windows emita contraseñas sin cifrar a la red. Este consejo es obsoleto: es posible que esos hacks de registro ya no funcionen en las versiones actuales de Windows y permitan que cualquier persona que pueda monitorear el tráfico de su red capture su contraseña de manera trivial).
Hay una cosa más que puede que tenga que hacer del lado del cliente. Cuando su sistema de cliente de Windows se une a un dominio de Active Directory e inicia sesión con una cuenta de AD, automáticamente antepone todos los nombres de usuario no calificados con el nombre del dominio de AD del usuario, es decir, se autenticará como AD_DOMAINyour_username
, No solo your_username
.
Si ha iniciado sesión con una cuenta local (o su sistema cliente no está unido a un dominio AD), Windows puede automáticamente prefix el nombre de usuario con el nombre de host del cliente a menos que especifique otro nombre de dominio.
Para iniciar sesión con éxito en un servidor Samba independiente desde un cliente Windows independiente, es posible que deba especificar su nombre de usuario como SAMBA_SERVER_HOSTNAMEyour_username
.
De lo contrario, Samba verá el nombre de usuario como WINDOWS_CLIENT_HOSTNAMEyour_username
, concluye que no tiene forma de verificar ningún usuario que pertenezca al dominio llamado WINDOWS_CLIENT_HOSTNAME
y rechazará el inicio de sesión.
(Versiones más nuevas de Samba mayo tienen una verificación incorporada para esta situación específica y, de todos modos, es posible que le permitan acceder. Pero así es básicamente cómo funciona la autenticación SMB “debajo del capó”, y si necesita lidiar con versiones antiguas de Samba, aún podría ser útil).
Estaba buscando esto porque tenía prisa y ni siquiera tenía tiempo para concentrarme en crear usuarios y entonces…
Solo tenía que sacar los datos de una máquina Debian 9 lo antes posible y esta fue la forma más rápida que se me ocurrió, si quiere evitar omitir comandos, también puede hacer esto, pero obviamente no es recomendable a menos que estés en un apurarse.
[mymfolder]
path = /mymfolder
writeable = yes
browseable = yes
public = yes
create mask = 0777
directory mask = 0777
force user = root
Reseñas y valoraciones
Tienes la posibilidad compartir este ensayo si te ayudó.