OpenWRT parte 3: VPN, Impressoras e Scanners


Essa é o terceiro post que faço sobre OpenWRT, falarei sobre a configuração de VPN, Scanners e Impressoras. Deixei esses itens por último por serem mais complicados de configurar e por apresentarem instabilidade em modelos de roteadores com pouco processamento como o meu, é muito provável que você tenha problemas principalmente com o scanner que é uma aplicação bem pesada para o processador de um roteador mas descreverei como consegui configurar esses itens na esperança de ajudar alguém que busque esse objetivo. Como os pacotes são grandes você provavelmente precisará estender o armazenamento do roteador via USB. Se você é novo ao OpenWRT, instalação de pacotes e derivados recomendo que comece pelo primeiro post da série.

VPN

Configurar a VPN foi muito mais fácil do que eu esperava pois toda a configuração pode ser feita através da interface web do OpenWRT, mas no caso da minha VPN a conexão se reinicia com frequência, provavelmente por algum parâmetro incorreto que não consegui identificar, mas isso varia de VPN para VPN.

Para fazer a VPN funcionar instale os pacotes ppp-mod-pptp e luci-proto-ppp. Caso você use outro tipo de VPN como L2TP a interface do luci-proto-ppp indicará o pacote que você deve instalar no lugar do ppp-mod-pptp.

Pacotes VPN

Após instalar os pacotes acesse Network / Interfaces e crie uma nova interface, as opções com os tipos de VPN estarão disponíveis:

Tipos VPN

Na aba Advanced certifique-se de que a opção Use Default Gateway está marcada para que todo o trafego de dados seja configurado automaticamente para passar pela VPN.

Opções avançadas VPN

Na última aba da configuração de interface não esqueça de escolher a zona de firewall WAN, a menos que deseje criar regras especificas para a conexão de VPN.

Firewall VPN

Se os dados estiverem corretos a VPN deve funcionar e se iniciar automaticamente no boot do roteador.

VPN Online

Impressoras

A configuração da impressora no roteador também não apresenta grandes segredos mas a configuração dela no Windows foi um exaustivo jogo de tentativa e erro até eu entender o que estava errado.

A forma mais fácil de configurar o compartilhamento de uma impressora no OpenWRT é pelo p910nd, um servidor de impressão bem simples.

Para ele funcionar você deve instalar os pacotes: kmod-usb2, kmod-usb-printer, p910nd e luci-app-p910nd

Plugue a impressora e verifique que foi reconhecida, deve aparecer um arquivo chamado lp0 na pasta /etc/usb, caso isso não aconteça o comando dmesg pode ajudar a identificar a causa.

Uma vez com os pacotes instalados abra a porta que será utilizada pela impressora (por padrão 9100) no firewall do OpenWRT pela interface ou pelo arquivo de configuração, o exemplo da wiki oficial funcionou perfeitamente para mim:

#Allow attached network printer
config 'rule'
option 'src' 'lan'
option 'proto' 'tcp'
option 'dest_port' '9100'
option 'target' 'ACCEPT'

Se os pacotes foram instalados corretamente uma nova aba “Services/p910nd” deve estar disponível, por padrão o endereço da impressora vem configurado diferente, ajuste para o dispositivo USB reconhecido:

printer settings

A instalação da impressora no Linux não teve segredo, bastou adicionar uma nova impressora de rede do tipo Socket na porta correta e escolher o driver, mas no Windows preste atenção às instruções a seguir:

Antes de prosseguir certifique-se de que os drivers da impressora estão instalados no computador, o roteador apenas cria uma ponte do computador para a impressora e por isso é necessário que os drivers estejam presentes no computador, uma forma fácil de assegurar isso é plugar a impressora no PC e deixar o Windows Update encontrar e instalar os drivers antes de liga-la ao roteador.

Ao tentar instalar uma nova impressora ela não será detectada como uma impressora de rede, isso é esperado, será necessário configurar manualmente os parâmetros.

Adicionar Impressora

Escolha a opção de adicionar uma impressora TCP/IP

Impressora TCP/IP

Na tela seguinte escolha a opção TCP/IP e desmarque a a opção de tentar detectar automaticamente o driver, a tentativa de fazer isso pode travar a impressora, no meu caso a impressora começou a imprimir lixo e precisei reiniciar o roteador.

Detecção Automática

Insira o IP do roteador e de um nome para a porta, resista à tentação de especificar a porta no fim do endereço IP, por algum motivo se o Windows não tentar detectar a porta a instalação não funciona.

Porta Impressora

 

Aguarde ele falhar em detectar a porta.

Detectar porta

Escolha personalizar a porta

Personalizar porta

Insira os parâmetros como na imagem.

Parametros Porta

Em seguida o Windows pedirá o driver da impressora, escolha o fabricante e modelo.

Driver Impressão

De um nome para a impressora.

Nome Impressora

E conclua a utilitário.

Concluir instalação impressora

Parece simples, mas qualquer alteração mínima faz a impressora não funcionar (pelo menos no meu caso).

 Scanners

A configuração do scanner foi um pouco mais confusa pois não foi fácil de achar no site oficial do OpenWRT, mas não tem segredo, consegui configurar usando o sane graças ao tutorial que achei aqui.

Instale os pacotes sane-backends, sane-frontends e se a seu scanner for HP o hplip.

Plugue o scanner, espere alguns segundos e verifique que voi reconhecido pelo comando

scanimage -L

que deve retornar o modelo dos scanner reconhecidos.

Para evitar um erro de verificação do hostname precisamos adicionar uma linha simples no arquivo /etc/host:

192.168.1.1 OpenWRT

Altere o endereço IP e nome de host para as configurações que você usa

Para permitir o uso do scanner pela rede adicione a uma linha ao /etc/sane.d/saned.conf especificando a sub rede:

192.168.1.0/24

Teoricamente adicionar um linha contende apenas o símbolo “+” deveria aceitar todos os hosts mas nos meus testes isso não funcionou.

Para testar podemos executar o servidor de scan em modo debug e observar o output no roteador:

saned -d

Clientes

A configuração dos clientes Linux foi bastante simples, basta instalar o pacote sane-utils e adicionar uma linha ao arquivo /etc/sane.d/net.conf com o IP do roteador:

192.168.1.1

Feito isso o scanner deve ficar disponível em todos os programas que utilizem o sane.

No Windows temos duas opções, utilizar um programa de scanner que faça uso do Sane como o SaneTwain que é bem simples mas funciona muito bem.

SaneTwain

Ou instalar o driver WiaSane que cria uma ponte entre o Sane e o WIA que é o padrão utilizado pelo Windows, permitindo que o scanner seja utilizado em qualquer programa para Windows como o cliente nativo de Fax/Scan ou o Photoshop. O driver é alpha mas funcionou muito bem.

A única pegadinha na instalação é que o Windows as vezes para a instalação no meio e você precisa continua-la a partir da central de ações presente na área de notificações da barra do Windows:

Área de notificações

Isso conclui a série de posts sobre OpenWRT, espero ter ajudado quem estava quebrando a cabeça com a configuração.