Configuramos o WireGuard em um roteador Mikrotik executando o OpenWrt

imagem

Na maioria dos casos, conectar um roteador a uma VPN não é difícil, mas se você deseja proteger toda a rede e, ao mesmo tempo, manter a velocidade ideal da conexão, a melhor solução seria usar o túnel da WireGuard VPN . Os

roteadores Mikrotik se estabeleceram como soluções confiáveis ​​e muito flexíveis, mas, infelizmente, o suporte WireGuard no RouterOS ainda não é e não se sabe quando ele aparecerá e em qual versão. Recentemente, soube-se que os desenvolvedores de túneis WireGuard VPN propuseram um conjunto de patches que tornarão seu software de organização de túneis VPN parte do kernel do Linux, e esperamos que isso contribua para a implementação do RouterOS.

Por enquanto, infelizmente, para configurar o WireGuard em um roteador Mikrotik, você precisa alterar o firmware.

Firmware Mikrotik, instale e configure o OpenWrt


Primeiro você precisa ter certeza de que o OpenWrt suporta seu modelo. Você pode ver a conformidade do modelo com o nome e a imagem de marketing em mikrotik.com .

Vá para openwrt.com na seção de download de firmware .

Para este dispositivo, precisamos de 2 arquivos:

downloads.openwrt.org/releases/18.06.2/targets/ar71xx/mikrotik/openwrt-18.06.2-ar71xx-mikrotik-rb-nor-flash-16M-initramfs-kernel.bin|elf

downloads.openwrt.org/releases /18.06.2/targets/ar71xx/mikrotik/openwrt-18.06.2-ar71xx-mikrotik-rb-nor-flash-16M-squashfs-sysupgrade.bin


Você precisa baixar os dois arquivos: Instalar e atualizar .



1. Configuração da rede, carregamento e configuração de um servidor PXE


Baixe o Tiny PXE Server para Windows versão mais recente.

Descompacte em uma pasta separada. No arquivo config.ini, adicione o parâmetro rfc951 = 1 seção [dhcp] . Este parâmetro é o mesmo para todos os modelos Mikrotik.



Passamos às configurações de rede: você precisa registrar um endereço IP estático em uma das interfaces de rede do seu computador.


Endereço IP: 192.168.1.10
Máscara de rede: 255.255.255.0


Inicie o Tiny PXE Server como administrador e selecione o servidor com o endereço 192.168.1.10 no campo Servidor DHCP Em algumas versões do Windows, essa interface pode aparecer apenas após uma conexão Ethernet. Eu recomendo conectar o roteador e conectar imediatamente o roteador e o PC usando um cabo de conexão. Clique no botão "..." (canto inferior direito) e indique a pasta na qual você baixou os arquivos de firmware do Mikrotik. Escolha um arquivo cujo nome termine com "initramfs-kernel.bin ou elf"



imagem







2. Baixando o roteador do servidor PXE


Conectamos o fio do PC e a primeira porta (WAN, Internet, Poe In, ...) do roteador. Depois disso, pegamos um palito de dente, enfie-o no buraco com a inscrição "Reset".



Ligue a energia do roteador, aguarde 20 segundos e solte o palito.
Durante o próximo minuto, as seguintes mensagens deverão aparecer na janela do Tiny PXE Server:



Se uma mensagem aparecer, você estará na direção certa!

Restaure as configurações no adaptador de rede e defina o endereço de recebimento dinamicamente (via DHCP).

Conecte-se às portas LAN do roteador Mikrotik (2 ... 5 no nosso caso) usando o mesmo cabo de conexão. Basta alternar da porta 1 para a porta 2. Abra o endereço 192.168.1.1 no navegador.



Vá para a interface administrativa do OpenWRT e vá para a seção do menu “Sistema -> Backup / Firmware Flash.”



Na subseção “Flash nova imagem de firmware”, clique no botão “Selecionar arquivo (Procurar)”.



Especifique o caminho para o arquivo cujo nome termina com "-squashfs-sysupgrade.bin".

imagem

Depois disso, clique no botão "Flash Image".

Na próxima janela, clique no botão "Continuar". O download do firmware para o roteador começará.



!!! NÃO DESCONECTE O PODER DO ROUTER NO PROCESSO DE FIRMWARE !!!



Depois de piscar e reiniciar o roteador, você receberá o Mikrotik com o firmware OpenWRT.

Possíveis problemas e soluções


Muitos dispositivos Mikrotik 2019 usam o chip de memória FLASH-NOR tipo GD25Q15 / Q16. O problema é que piscar não salva os dados do modelo do dispositivo.

Se você vir o erro "O arquivo de imagem carregado não contém um formato suportado. Certifique-se de escolher o formato de imagem genérico para sua plataforma. ” provavelmente o problema está no flash.

É fácil de verificar: execute o comando para verificar o ID do modelo no terminal do dispositivo

root@OpenWrt: cat /tmp/sysinfo/board_name

E se você receber uma resposta «desconhecida», precisará especificar manualmente o modelo do dispositivo na forma de «rb-951-2nd»

o comando Para o modelo

root@OpenWrt: cat /tmp/sysinfo/model
MikroTik RouterBOARD RB951-2nd

Após receber o modelo do dispositivo, o instalamos manualmente:

echo 'rb-951-2nd' > /tmp/sysinfo/board_name

Depois disso, você pode atualizar o dispositivo através da interface da web ou usando o comando sysupgrade

Crie um servidor VPN com o WireGuard


Se você já possui um servidor com o WireGuard configurado, pode pular este item.
Vou usar o aplicativo MyVPN.RUN sobre o gato para configurar um servidor VPN pessoal.Já publiquei uma revisão .

Configurando o WireGuard Client no OpenWRT


Conecte-se ao roteador via SSH:

ssh root@192.168.1.1

Instale o WireGuard:

opkg update
opkg install wireguard

Prepare a configuração (copie o código abaixo para o arquivo, substitua os valores especificados pelos seus e execute no terminal).

Se você usar MyVPN, na configuração abaixo, você precisará alterar apenas WG_SERV - o IP do servidor, WG_KEY - a chave privada do arquivo de configuração do wireguard e WG_PUB - a chave pública.

WG_IF="wg0"
WG_SERV="100.0.0.0" # ip  
WG_PORT="51820" #  wireguard
WG_ADDR="10.8.0.2/32" #   wireguard

WG_KEY="xxxxx" #  
WG_PUB="xxxxx" #   

# Configure firewall
uci rename firewall.@zone[0]="lan"
uci rename firewall.@zone[1]="wan"
uci rename firewall.@forwarding[0]="lan_wan"
uci del_list firewall.wan.network="${WG_IF}"
uci add_list firewall.wan.network="${WG_IF}"
uci commit firewall
/etc/init.d/firewall restart

# Configure network
uci -q delete network.${WG_IF}
uci set network.${WG_IF}="interface"
uci set network.${WG_IF}.proto="wireguard"
uci set network.${WG_IF}.private_key="${WG_KEY}"

uci add_list network.${WG_IF}.addresses="${WG_ADDR}"

# Add VPN peers
uci -q delete network.wgserver
uci set network.wgserver="wireguard_${WG_IF}"
uci set network.wgserver.public_key="${WG_PUB}"
uci set network.wgserver.preshared_key=""
uci set network.wgserver.endpoint_host="${WG_SERV}"
uci set network.wgserver.endpoint_port="${WG_PORT}"
uci set network.wgserver.route_allowed_ips="1"
uci set network.wgserver.persistent_keepalive="25"
uci add_list network.wgserver.allowed_ips="0.0.0.0/1"
uci add_list network.wgserver.allowed_ips="128.0.0.0/1"
uci add_list network.wgserver.allowed_ips="::/0"
uci commit network
/etc/init.d/network restart

Isso completa a configuração do WireGuard! Agora todo o tráfego em todos os dispositivos conectados é protegido por uma conexão VPN.

Referências


Fonte # 1
Instruções modificadas no MyVPN (além disso, estão disponíveis instruções de configuração L2TP, PPTP no firmware Mikrotik padrão)
Cliente OpenWrt WireGuard

Source: https://habr.com/ru/post/undefined/


All Articles