eu não sei se ainda é válido com versões mais novas do samba, mas você pode criar um arquivo em /etc/samba/
chamado smbusers
onde você mapeia nomes de usuários remotos para nomes de usuários do sistema.
o formato do arquivo é assim:
localuser = remoteuser, remoteuser2
localuser2 = remoteuser3
para que o remoteuser tenha acesso aos arquivos do localuser, etc.
por exemplo, se você configurar um usuário do sistema samba e tiver um diretório compartilhado por meio do samba como esse usuário, você poderá ter X usuários remotos com suas próprias senhas para mapear essa unidade, etc.
se isso não funcionar, há a opção de criar usuários locais e bloquear as contas de usuário para que eles não possam efetuar login. Isso pode ser feito criando o usuário com useradd -M -s /bin/false username
(cria um usuário com nome de usuário 'username' 'e ignora a criação de um diretório inicial, também define o shell como /bin/false
para evitar o login e, em seguida, executa usermod -L username
você também pode usar chsh username -s /bin/false
para alterar o shell do usuário para algo inválido, se o bloqueio da conta do usuário impedir que eles acessem o compartilhamento smb.
assim que terminar, é tão fácil quanto smbpasswd -a username