Simple Samba Share - SIN CONTRASEÑA

17

Lo que necesito:

Configuración simple de samba para servidor de archivos sin contraseña y lectura completa para todos. No se necesita seguridad.

Historia:

Estoy haciendo un servidor para alojar archivos para mi hogar. El objetivo del servidor es alojar archivos para máquinas Windows. Lo mejor que he logrado hacer hasta ahora es esta configuración. Con eso, puedo ver los recursos compartidos y el servidor desde la red, pero dice que Windows no puede acceder a ellos. Estoy usando Linux mate en el servidor, todas las últimas actualizaciones.

Mi Config:

[global]

   workgroup = BIOHAZARD
   netbios name = MATUSALEM
   guest account = nobody
   log file = /usr/local/samba/var/log.%m
   max log size = 50
   security = user
   map to guest = bad user
   encrypt passwords = yes

# Share Definitions 
[homes]
   comment = Home Directories
   browseable = no
   writable = yes

[Teste]
    path = /home/peter/share
    writable = yes
    printable = no
    comment = teste
    only guest = yes
    public = yes
        guest ok = yes
        guest only = yes
        guest account = nobody
        browsable = yes
[REDE]
    comment = TESTE 2
    public = yes
    delete readonly = yes
    path = /HOME/REDE
    writeable = yes
        guest ok = yes
        guest only = yes
        guest account = nobody
        browsable = yes
######

¿Algunas ideas?

Peter Reynold Robinson Junior
fuente
Posiblemente relacionado con serverfault.com/questions/630631/… y askubuntu.com/questions/258284/…
Nick Weinberg

Respuestas:

22

Sí, Samba puede ser un dolor. Lo uso tanto para mi casa como para mi trabajo.

Lo primero que debe hacer es comenzar desde cero para facilitar la resolución de problemas. Puede hacerlo ejecutando el siguiente comando en la terminal.

dpkg-reconfigure samba-common

Luego, vaya a la carpeta en el servidor samba que desea compartir y asegúrese de que el usuario nadie pueda leer y escribir en el recurso compartido. Esto se debe a que el usuario nadie es el nombre de usuario que usan los clientes de Windows. Por lo general, simplemente hago una carpeta en el directorio / para mantener las cosas simples, pero la forma "correcta" sería hacer una subcarpeta de / srv. Si aún no ha modificado los permisos, use los comandos a continuación.

sudo chown -R nobody.nogroup the_folder
sudo chmod -R 777 the_folder

También puede probar para ver si nadie puede escribir en el directorio ejecutando el siguiente comando como root.

sudo -u nobody touch test_file

Edite su /etc/samba/smb.conf y agregue las líneas debajo de la definición compartida [impresoras].

[share_name]              ;the share name can be what ever you want
browseable = yes
path = the_complete_path_to_the_shared_folder
guest ok = yes
read only = no
create mask = 777

Luego, cuando haya terminado, guárdelo y ejecute lo siguiente.

testparm

Esto te avisará si cometiste algún error tipográfico. A continuación, solo necesita reiniciar los servicios de samba.

sudo systemctl restart smbd
sudo systemctl restart nmbd
Andrés
fuente
Esto funcionó perfectamente! Copiado para referencia futura. ¡El problema era lo de Chmod! muchas gracias
Peter Reynold Robinson Junior
1
Buen trabajo resolviéndolo, la mayoría simplemente se habría dado por vencida. Recuerde que con el uso compartido de archivos, en cualquier sistema operativo, los permisos son a menudo el problema.
Andrew
1
Excelente. esto funciona para mí, solo tengo un problema cuando intento reinstalar samba, pero el problema fue porque también es necesario hacerlo sudo apt-get autoremovey luego sudo apt-get purge samba*
iLevi
Esto dio como resultado un error al iniciar nmdb después de que finalizara la instalación de samba, con log.nmdb diciendo "error al abrir el archivo de configuración", y ninguna carpeta / etc / samba presente en absoluto. Un reintento del proceso de purga y eliminación y reinstalación resultó en lo mismo una y otra vez.
Frank H.
¡Este es el ÚNICO enfoque de trabajo en Internet! Me salvas el día, gracias.
Evi Song
0

Me doy cuenta de que este es un hilo antiguo, pero me ayudó a resolver el problema de crear y compartir una carpeta sin necesidad de iniciar sesión. Hay muchos otros hilos por ahí, pero son engañosos. He dado una guía de semiinformistas a continuación, ya que hay tantas pequeñas diferencias con otras publicaciones que pensé que podría ayudar a alguien que casi se ha dado por vencido y se arrancó la mitad del cabello :-)

Para mí, en una imagen predeterminada de AWS Linux (Amazon Linux AMI 2017.03.0 (HVM)) tuve que crear la carpeta en el directorio raíz / ya que no podría asignar los permisos si se creó bajo el usuario ec2 predeterminado. Al asignar los permisos tuve que usar nobody.nobody como nogroup no funcionó. Por último, tuve que incluir map to guest = Bad User en la sección del servidor independiente gloabl donde, de forma predeterminada, dice security = user

Entonces, los pasos completos serían la implementación de un nuevo servidor:

instale samba si es necesario

crear la carpeta y asignar permisos

sudo su
cd /
mkdir the_folder
chown -R nobody.nobody the_folder
chmod -R 777 the_folder

editar el archivo samba

nano /etc/samba/smb.conf

busque la línea # ---- Opciones de servidor independiente ---- agregue "mapa al invitado"

security = user
passdb backend = tdbsam
map to guest = Bad User

En la sección # ==== Definiciones del recurso compartido ==== agregue su recurso compartido

[SHARENAME]
path = the_folder
read only = no
create mask = 777
guest ok = yes

Guarde el archivo y reinicie samaba

/etc/init.d/smb restart
David
fuente
0

Además de la respuesta de @Andrew, la reciente actualización de ubuntu 17.04 a 17.10 crea problemas en el systemctl samba-dc-ad.service . Supuestamente no es un error en la máscara cuando intentas reinstalar samba en samba-dc-ad.service (intensional). Pasos adicionales antes de la respuesta de @ Andrew , si tiene problemas con la instalación / reinstalación de samba debido a la actualización:

  1. apt-get update & apt-get-upgrade <- asegúrese de que no haya actualizaciones pendientes
  2. apt-get install samba
  3. vaya a esta página y siga las instrucciones: https://wiki.samba.org/index.php/Managing_the_Samba_AD_DC_Service_Using_Systemd

  4. apt-get -f install samba

  5. Realice los pasos anteriores, ahora. :-)
BlizzardsGambit
fuente