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:
[email protected] 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.
[email protected] root $

Agora instalaremos o Samba3:
[email protected] 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.
[email protected] 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:
[email protected] root $
[email protected] root $ mkdir /etc/samba
[email protected] root $ touch /etc/samba/smbpasswd
[email protected] 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 😉 ):
[email protected] root $ cd /etc/samba/
[email protected] 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:
[email protected] root $ cp -a /etc/samba/* /opt/etc/samba/
[email protected] root $ chmod 644 /opt/etc/samba/smbpasswd

Agora vamos testar o Samba:
[email protected] root $ smbd -s /opt/etc/samba/smb.conf
Vamos criar apagar o script existente do samba e criar o nosso:
[email protected] root $ echo ” ” > /opt/etc/init.d/samba
[email protected] 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.

    Comments

    1. amigo, ensina a voltar para o firmware orignal. to precisando voltar o meu tp-link pro original.
      valeu.

    2. 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?

    3. 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:
        [email protected]:/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.

    4. Muito bom o site da CooperaTI, o nível de conhecimento dos profissionais aqui é muito elevado.
      Sorte a todos.
      Abraço.

    5. 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.

    Deixe uma resposta

    O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

    © 2019 All Rights Reserved. Cooperati. 

    Deseja uma consultoria especializada?