Instalando Samba no roteador TL-WR1043ND com DD-WRT
Continuando nossa série de posts sobre o DD-WRT no Roteador TL-WR1043ND, já preparamos o roteador para instalar programas no HD externo e instalamos o cliente de torrent Transmission para podermos baixar arquivos direto do roteador para o HD externo. Hoje instalaremos o Samba 3 no roteador para que possamos fazer compartilhamentos para máquinas Windows, não faremos autenticação pois isso consome muita memória e o nosso pequeno roteador não foi feito para isso, mas para compartilhar iremos.
Primeiro iremos acessar o equipamento através do SSH:
# ssh [email protected]
Após acessar iremos atualizar o opkg para podermos instalar os programas:
root@router root $ opkg update
Downloading http://downloads.openwrt.org/snapshots/trunk/ar71xx/packages//Packages.gz.
Inflating http://downloads.openwrt.org/snapshots/trunk/ar71xx/packages//Packages.gz.
Updated list of available packages in /tmp/var/opkg-lists/snapshots.
root@router root $
Agora instalaremos o Samba3:
root@router root $ opkg install samba3
Installing samba3 (3.0.24-7) to root…
Downloading http://downloads.openwrt.org/snapshots/trunk/ar71xx/packages//samba3_3.0.24-7_ar71xx.ipk.
Configuring samba3.
root@router root $
Vamos aproveitar nosso script de criação de usuários, para criar um usuário para usar o compartilhamento. Já temos o usuário nobody que criamos par usar o FTP, e o usuário (vagner) para acessar o FTP, vamos usar esse usuário acessar o compartilhamento, caso você queira outro usuário será preciso criá-lo. Use o modelo usado no artigo anterior para isso.
Criaremos agora a estrutura do Samba para funcionar no roteador, criaremos o diretório, o arquivo de senhas de usuários, criaremos o usuário vagner com senha cooperati no samba:
root@router root $
root@router root $ mkdir /etc/samba
root@router root $ touch /etc/samba/smbpasswd
root@router root $ smbpasswd vagner cooperati
Vamos entrar no diretório do samba e criar seu arquivo de configuração, lembrando que o processador e memória do nosso equipamento não permitem recursos de controlador de domínio( nem integração com LDAP 😉 ):
root@router root $ cd /etc/samba/
root@router samba $ vi smb.conf
[global]
netbios name = Roteador
workgroup = WORKGROUP
server string = Roteador
syslog = 0
encrypt passwords = true
passdb backend = smbpasswd
obey pam restrictions = yes
socket options = TCP_NODELAY
preferred master = no
os level = 20
security = user
guest account = nobody
invalid users = root
smb passwd file = /opt/etc/samba/smbpasswd
unix charset = UTF-8
dos charset = UTF-8
[homes]
comment = Home Directories
browseable = no
read only = no
create mode = 0750
[HD]
path = /mnt/vagner
read only = no
guest ok = no
create mask = 0700
directory mask = 0700
Agora copiaremos os arquivos para o diretório /opt/etc/samba:
root@router root $ cp -a /etc/samba/* /opt/etc/samba/
root@router root $ chmod 644 /opt/etc/samba/smbpasswd
Agora vamos testar o Samba:
root@router root $ smbd -s /opt/etc/samba/smb.conf
Vamos criar apagar o script existente do samba e criar o nosso:
root@router root $ echo ” ” > /opt/etc/init.d/samba
root@router root $ vi /opt/etc/init.d/samba
kill -9 $(pidof smbd)
kill -9 $(pidof nmbd)
/opt/bin/smbd -s /opt/etc/samba/smb.conf
Vamos colocar permissão de execução e criar o link simbólico para inicialização:
chmod a+x /opt/etc/init.d/samba
ln -s /opt/etc/init.d/samba /opt/etc/init.d/S50samba
Veja a montagem do compartilhamento:
PLUS:
Para poder acessar o compartilhamento no Windows 7 (no XP não tem problemas), faça o seguinte:
Edite o Registro do Windows:
regedit.exe
Procure pela seguinte chave: HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlLsa
Dentro dela crie uma DWORD com o seguinte nome LmCompatibilityLevel, selecione editar e mude o valor para 1
Pronto, seu Windows é capaz de enxergar o compartilhamento em nosso roteador.
Próximo passo o Proxy… Não esqueça de comentar, divulgar e assinar nosso Portal.
amigo, ensina a voltar para o firmware orignal. to precisando voltar o meu tp-link pro original.
valeu.
Nao estou conseguindo adicionar nenhum comando ssh pelo putty. Eu consigo acessar o roteador pelo putty, digito o username root e a senha a mesma q eu uso pra acessa o roteador no navegador e na hora q eu insiro o comando “opkg update” da um erro de comando no putty. Não sei o q fazer, va tentei de tudo, alguem pode me ajudar?
Luiz,
Qual o erro especificamente?
aparece esse erro
http://img32.imageshack.us/img32/2696/errzj.png
Luiz,
Você seguiu os outros tutoriais que eu escrevi antes? Parece que você não fez a instalação dos pacotes que eu fazem parte do processo de conversão do roteador.
tenho um tp-link wr1043nd e coloquei o dd-wrt, queria vou a configuração de fabrica dele. Como faço isso?
Nilson,
Segue abaixo um trecho retirado do site fabricio.com.br:
Restaurando o firmware original de fábrica
Não gostou do DD-WRT? Quer restaurar para o firmware de fábrica?
Baixe o firmware na página do fabricante e disponibilize-o para acesso no equipamento. No TL-WR1043ND baixe o firmware em http://www.tp-link.com/us/support/download.asp?a=1&m=TL-WR1043ND, descompacte, salve em um pendrive formatado em FAT32 e espete no porta USB do equipamento.
Abra um conexão telnet com o equipamento, confira se o pendrive esta conectado e montado. Digite:
mtd -e linux -r write /mnt/ linux
A saída do comando é parecida com esta:
root@antigerme:/tmp# mtd -e linux -r write /mnt/wr1043nv1_en_3_12_2_up(100820).bin linux
Unlocking linux …
Erasing linux …
Writing from /mnt/wr1043nv1_en_3_12_2_up(100820).bin to linux … [w], which the [w] will change between [w] and [e]
Ao final da gravação você ira perder a conexão telnet e seu equipamento já esta pronto com o firmware original de fábrica.
Muito bom o site da CooperaTI, o nível de conhecimento dos profissionais aqui é muito elevado.
Sorte a todos.
Abraço.
Em primeiro lugar parabens pelos posts sobre este modelo de router !
Segui seus tutoriais ( Claro q adptei para as versoes mais atuais de FW ) mas todos funcionam.
Gostaria de saber se voce conseguiu configurar SWAP no roteador TL-WR1043ND com DD-WRT.
Tentei de diversas formas mas esta me dando uma msg de erro como se a funcao nao estivese no kernel.
Se voce tiver um tuto ai de como fazer, por favor, me envie. Obrigado.