
Nella maggior parte dei casi, collegare il router a un VPN non è difficile, ma se desiderate proteggere un'intera rete mantenendo al contempo una connessione ottimale, la soluzione migliore è utilizzare un tunnel VPN. .
I router Mikrotik hanno dimostrato di essere soluzioni affidabili e molto flessibili, ma purtroppo , e non è chiaro quando e in quale forma arriverà. Recentemente che gli sviluppatori del tunnel VPN WireGuard hanno proposto , che renderanno il loro software per l'organizzazione di tunnel VPN parte del kernel Linux; speriamo che questo favorisca l'implementazione in RouterOS.
Ma per ora, purtroppo, per configurare WireGuard su un router Mikrotik è necessario cambiare il firmware.
Facciamo il flashing del Mikrotik, installiamo e configuriamo OpenWrt.
Per prima cosa, dovete assicurarvi che OpenWrt supporti il vostro modello. Potete controllare la corrispondenza tra il modello e il suo nome commerciale e immagine .
Visitate il sito openwrt.com .
Per questo dispositivo abbiamo bisogno di 2 file:
È necessario scaricare entrambi i file: Installa e Aggiorna.

1. Configurazione della rete, avvio e configurazione del server PXE
Scarica per la versione più recente di Windows.
Estrai in una cartella separata. Nel file config.ini aggiungi il parametro rfc951=1 la sezione [dhcp]. Questo parametro è lo stesso per tutti i modelli Mikrotik.

Passiamo alle impostazioni di rete: è necessario impostare un indirizzo IP statico su uno dei porti di rete del computer.

Indirizzo IP: 192.168.1.10
Maschera di rete: 255.255.255.0

Esegui Tiny PXE Server come amministratore e seleziona nel campo DHCP Server il server con indirizzo 192.168.1.10
In alcune versioni di Windows, questa interfaccia potrebbe apparire solo dopo il collegamento dell'Ethernet. Ti consiglio di collegare il router e collegare immediatamente il router e il PC con un cavo patch.

Clicca sul pulsante '...' (in basso a destra) e specifica la cartella in cui hai scaricato i file del firmware per Mikrotik.
Seleziona il file il cui nome termina con 'initramfs-kernel.bin' o 'elf'

2. Avvio del router dal server PXE
Collega il PC e la prima porta (wan,internet,poe in,…) del router con un cavo. Dopodiché prendi uno stuzzicadenti e inseriscilo nel foro contrassegnato 'Reset'.

Accendiamo il router e aspettiamo per circa 20 secondi, poi rilasciamo lo stuzzicadenti.
Nel corso del minuto successivo, nella finestra del programma Tiny PXE Server dovrebbero apparire i seguenti messaggi:

Se è comparso un messaggio, significa che sei sulla strada giusta!
Ripristina le impostazioni dell'adattatore di rete e imposta l'assegnazione dell'indirizzo in modo dinamico (via DHCP).
Collegati alle porte LAN del router Mikrotik (2-5 nel nostro caso) utilizzando lo stesso cavo patch. Basta passarlo dalla porta 1 alla porta 2. Apri l'indirizzo nel browser.

Accedi all'interfaccia amministrativa di OpenWRT e vai alla sezione di menu «System -> Backup/Flash Firmware»

Nella sotto-sezione «Flash new firmware image» clicca sul pulsante «Scegli file (Browse)».

Indica il percorso del file il cui nome termina con «-squashfs-sysupgrade.bin».

Dopo di che, premi il pulsante «Flash Image».
Nella finestra successiva, clicca sul pulsante «Proceed». Inizierà il caricamento del firmware nel router.

!!! NON SPEGNERE ASSOLUTAMENTE L'ALIMENTAZIONE DEL ROUTER DURANTE IL PROCESSO DI FLASHING !!!

Dopo il flashing e il riavvio del router avrai un Mikrotik con firmware OpenWRT.
Problemi comuni e relative soluzioni
Molti dispositivi Mikrotik rilasciati nel 2019 utilizzano un chip di memoria FLASH-NOR del tipo GD25Q15/Q16. Il problema è che durante il flashing non vengono mantenuti i dati sul modello del dispositivo.
Se hai visto l'errore «The uploaded image file does not contain a supported format. Make sure that you choose the generic image format for your platform.», molto probabilmente la causa è il flash.
Verificarlo è facile: esegui nel terminale del dispositivo il comando per controllare l'ID del modello.
root@OpenWrt: cat /tmp/sysinfo/board_nameSe ricevi la risposta «unknown», è necessario specificare manualmente il modello del dispositivo come «rb-951-2nd».
Per ottenere il modello del dispositivo, esegui il comando:
root@OpenWrt: cat /tmp/sysinfo/model
MikroTik RouterBOARD RB951-2ndUna volta ottenuto il modello del dispositivo, lo impostiamo manualmente:
echo 'rb-951-2nd' > /tmp/sysinfo/board_nameDopo ciò, puoi flashare il dispositivo tramite l'interfaccia web o utilizzando il comando «sysupgrade».
Crea un server VPN con WireGuard.
Se hai già un server configurato con WireGuard, puoi saltare questo passaggio.
Utilizzerò per la configurazione del server VPN personale l'applicazione Di cui ho già .
Configurazione del client WireGuard su OpenWRT.
Collegati al router tramite protocollo SSH:
ssh root@192.168.1.1Installa WireGuard:
opkg update
opkg install wireguardPrepara la configurazione (copia il codice qui sotto in un file, sostituisci i valori indicati con i tuoi e esegui nel terminale).
Se utilizzi MyVPN, nella configurazione qui sotto è necessario cambiare solo WG_SERV — IP del server, WG_KEY — chiave privata dal file di configurazione wireguard e WG_PUB — chiave pubblica.
WG_IF="wg0"
WG_SERV="100.0.0.0" # indirizzo IP del server
WG_PORT="51820" # porta wireguard
WG_ADDR="10.8.0.2/32" # gamma degli indirizzi wireguard
WG_KEY="xxxxx" # chiave privata
WG_PUB="xxxxx" # chiave pubblica
# Configura il 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
# Configura la rete
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}"
# Aggiungi peer VPN
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 restartLa configurazione di WireGuard è completata! Ora tutto il traffico su tutti i dispositivi connessi è protetto da una connessione VPN.
Link
(disponibile anche una guida per la configurazione di L2TP e PPTP sul firmware standard di Mikrotik)
Fonte: habr.com
