Se ele funciona localmente e está escutando na interface externa, é um problema de firewall ou roteamento.
Eu tenho uma máquina virtual Ubuntu Server (Hardy LTS), na qual estou tentando compartilhar uma pasta via samba.
Eu posso listar os compartilhamentos localmente bem, via:
smbclient -L localhost
Mas usando semelhante na minha máquina host, onde xxx.xxx.xxx.xxx é o Ubuntu IP (OS X):
smbclient -L //xxx.xxx.xxx.xxx -U myusername
Eu recebo:
Connecting to xxx.xxx.xxx.xxx at port 139
error connecting to xxx.xxx.xxx.xxx:139 (Connection refused)
Error connecting to xxx.xxx.xxx.xxx (Connection refused)
lang_tdb_init: /usr/lib/samba/en_GB.UTF-8.msg: No such file or directory
Connection to xxx.xxx.xxx.xxx failed (Error NT_STATUS_CONNECTION_REFUSED)
Este é um erro de samba ou um erro de firewall?
Meu arquivo conf smb, é o padrão, com as seguintes alterações:
interfaces = xxx.xxx.xxx.xxx/8 eth0
security = user
username map = /etc/samba/smbusers
[homes]
read only = no
valid users = %S
comment = Home Directories
browseable = yes