Estoy intentando habilitar el uso compartido de carpetas a través de samba en mi servidor ubuntu 18.04;
Lo que ya hice:
- Edite /etc/samba/smb.conf como se muestra a continuación
[global] workgroup = WORKGROUP interfaces = lo eth0 server role = standalone server server string = Samba Server %v security = user map to guest = bad user name resolve order = bcast host dns proxy = no bind interfaces only = yes log file = /var/log/samba/smb.log max log size = 10000 [Public] path = /samba/share writable = yes guest ok = yes guest only = yes read only = no create mode = 0777 directory mode = 0777 force user = nobody
- Ejecute testparm con este resultado
Load smb config files from /etc/samba/smb.conf rlimit_max: increasing rlimit_max (1024) to minimum Windows limit (16384) Processing section "[Public]" Loaded services file OK. Server role: ROLE_STANDALONE Press enter to see a dump of your service definitions # Global parameters [global] bind interfaces only = Yes dns proxy = No interfaces = lo eth0 log file = /var/log/samba/smb.log map to guest = Bad User max log size = 10000 name resolve order = bcast host security = USER server role = standalone server server string = Samba Server %v idmap config * : backend = tdb [Public] create mask = 0777 directory mask = 0777 force user = nobody guest ok = Yes guest only = Yes path = /samba/share read only = No
- Reiniciar smbd.service
- Intentando iniciar sesión a través de Windows; Windows no puede acceder a \SERVERNAME\...
- Ver registro de errores
[2019/06/23 21:05:54.565424, 0] ../lib/util/become_daemon.c:124(daemon_ready) STATUS=daemon 'smbd' finished starting up and ready to serve connections [2019/06/23 21:06:34.482176, 0] ../source3/smbd/ipc.c:843(reply_trans) reply_trans: invalid trans parameters
He estado en esto durante unos 5 días, ¿alguien tiene alguna idea de lo que está pasando? ¿Cómo arreglar esto? Sólo necesito un recurso compartido público y otro de acceso restringido.
Respuesta1
vincular solo interfaces = Sí
interfaces = lo eth0
Le está diciendo a samba que use solo ciertas interfaces, pero la que especificó ( eth0 ) no existe en Ubuntu 18.04. Es una forma diferente.
A menos que tenga una razón para especificar algo y prefiera dejar que samba resuelva esto por sí solo, eliminaría esas dos líneas de smb.conf y reiniciaría smbd:
sudo service smbd restart
Si desea especificar una determinada interfaz, utilice este comando para encontrar su nombre real:
nmcli device show | grep DEVICE
Respuesta2
Windows ahora usa WSD (¿descubrimiento de servicios web?) que no está incluido en los distintos Samba que están disponibles a partir de Ubuntu 19.04.
Hay un proyecto en github que implementa WSD, escrito en Python. Se puede encontrar enhttps://github.com/christgau/wsddo descargado directamente enhttps://raw.githubusercontent.com/christgau/wsdd/master/src/wsdd.py
Parte del truco para usar esto es que necesitarás habilitar un par de puertos a través de tu firewall:
Los puertos 5357/tcp y 3702/udp deben estar abiertos para que se ejecute wsdd.
wsdd se puede ejecutar desde la línea de comandos o puede crear un servicio systemd para ejecutarlo.
Esta es un área activa (quizás) del desarrollo de Samba, y se puede encontrar información al respecto enhttps://www.ixsystems.com/community/resources/how-to-kill-off-smb1-netbios-wins-and-still-have-windows-network-neighbourhood-better-than-ever.106/y actualmente está disponible en el repositorio de usuarios de Arch, y aparentemente también en algunas otras distribuciones. También se menciona en AskUbuntu enhacer visible el recurso compartido de samba en la "Red" de Windows
Comenzando como un servicio
Creé un archivo de unidad de servicio systemd para wsdd como /lib/systemd/system/wsdd.service
El contenido es
[Unit]
Description=WSDD Network Service
BindsTo=smbd.service
After=smbd.service
[Service]
Type=simple
RemainAfterExit=yes
ExecStart=/usr/bin/wsdd
#ExecReload=/user/bin/wsdd
[Install]
WantedBy=multi-user.target
Luego pasé wsdd.py
a /usr/bin/wsdd
y modifiqué sus permisos a 555 (lectura y ejecución).
Finalmente, sudo systemctl enable wsdd.service
reinicié y mi sistema Ubuntu ahora es visible para mis computadoras Win10.