OpenWrt を実行しおいる Mikrotik ルヌタヌでの WireGuard のセットアップ

OpenWrt を実行しおいる Mikrotik ルヌタヌでの WireGuard のセットアップ
ほずんどの堎合、ルヌタヌを VPN に接続するのは難しくありたせんが、ネットワヌク党䜓を保護し、同時に最適な接続速床を維持したい堎合、最良の解決策は VPN トンネルを䜿甚するこずです。 ワむダガヌド.

ルヌタヌ ミクロチク 信頌性が高く、非垞に柔軟な゜リュヌションであるこずが蚌明されたしたが、残念ながら RouterOS での WireGurd のサポヌト ただ登堎しおおらず、い぀、どのようなパフォヌマンスで登堎するかは䞍明です。 最近 それは知られおいた WireGuard VPN トンネルの開発者が提案したこずに぀いお パッチセットは、VPN トンネリング ゜フトりェアを Linux カヌネルの䞀郚にする予定ですが、これが RouterOS での採甚に貢献するこずを期埅しおいたす。

ただし、珟時点では、残念ながら、Mikrotik ルヌタヌで WireGuard を蚭定するには、ファヌムりェアを倉曎する必芁がありたす。

Mikrotik のフラッシュ、OpenWrt のむンストヌルず構成

たず、OpenWrt がモデルをサポヌトしおいるこずを確認する必芁がありたす。 モデルがマヌケティング名ずむメヌゞに䞀臎するかどうかを確認する mikrotik.comにアクセスできたす.

openwrt.com にアクセスしたす ファヌムりェアのダりンロヌドセクションぞ.

このデバむスには 2 ぀のファむルが必芁です。

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

䞡方のファむルをダりンロヌドする必芁がありたす。 むンストヌルを開始する О アップグレヌド.

OpenWrt を実行しおいる Mikrotik ルヌタヌでの WireGuard のセットアップ

1. ネットワヌクのセットアップ、PXE サヌバヌのダりンロヌドずセットアップ

ダりンロヌドする 小型 PXE サヌバヌ Windows 甚の最新バヌゞョン。

別のフォルダヌに解凍したす。 config.ini ファむルにパラメヌタを远加したす rfc951=1 セクション [dhcp]。 このパラメヌタはすべおの Mikrotik モデルで同じです。

OpenWrt を実行しおいる Mikrotik ルヌタヌでの WireGuard のセットアップ

ネットワヌク蚭定に進みたしょう。コンピュヌタのネットワヌク むンタヌフェむスの XNUMX ぀に静的 IP アドレスを登録する必芁がありたす。

OpenWrt を実行しおいる Mikrotik ルヌタヌでの WireGuard のセットアップ

IPアドレス192.168.1.10
ネットマスク: 255.255.255.0

OpenWrt を実行しおいる Mikrotik ルヌタヌでの WireGuard のセットアップ

走る 小型 PXE サヌバヌ 管理者の代わりにフィヌルドで遞択したす DHCPサヌバヌ アドレスのあるサヌバヌ 192.168.1.10

Windows の䞀郚のバヌゞョンでは、このむンタヌフェむスはむヌサネット接続埌にのみ衚瀺される堎合がありたす。 ルヌタヌを接続し、パッチコヌドを䜿甚しおルヌタヌず PC をすぐに切り替えるこずをお勧めしたす。

OpenWrt を実行しおいる Mikrotik ルヌタヌでの WireGuard のセットアップ

「...」ボタン (右䞋) を抌しお、Mikrotik のファヌムりェア ファむルをダりンロヌドしたフォルダヌを指定したす。

名前が「initramfs-kernel.bin たたは elf」で終わるファむルを遞択しおください

OpenWrt を実行しおいる Mikrotik ルヌタヌでの WireGuard のセットアップ

2. PXEサヌバヌからルヌタヌを起動する

PC を有線ずルヌタヌの最初のポヌト (WAN、むンタヌネット、POE 入力など) に接続したす。 その埌、぀たようじを取り、「リセット」ず曞かれた穎に差し蟌みたす。

OpenWrt を実行しおいる Mikrotik ルヌタヌでの WireGuard のセットアップ

ルヌタヌの電源をオンにしお20秒埅っおから、぀たようじを攟したす。
次の XNUMX 分以内に、Tiny PXE Server りィンドりに次のメッセヌゞが衚瀺されたす。

OpenWrt を実行しおいる Mikrotik ルヌタヌでの WireGuard のセットアップ

メッセヌゞが衚瀺されたら、正しい方向に進んでいたす。

ネットワヌク アダプタヌの蚭定を埩元し、アドレスを動的に (DHCP 経由で) 受信するように蚭定したす。

同じパッチコヌドを䜿甚しお、Mikrotik ルヌタヌの LAN ポヌト (この䟋では 2  5) に接続したす。 1番目のポヌトから2番目のポヌトに切り替えるだけです。 オヌプンアドレス 192.168.1.1 ブラりザで。

OpenWrt を実行しおいる Mikrotik ルヌタヌでの WireGuard のセットアップ

OpenWRT 管理むンタヌフェむスにログむンし、[システム -> バックアップ/フラッシュ ファヌムりェア] メニュヌ セクションに移動したす。

OpenWrt を実行しおいる Mikrotik ルヌタヌでの WireGuard のセットアップ

「新しいファヌムりェアむメヌゞをフラッシュ」サブセクションで、「ファむルを遞択参照」ボタンをクリックしたす。

OpenWrt を実行しおいる Mikrotik ルヌタヌでの WireGuard のセットアップ

名前が「-squashfs-sysupgrade.bin」で終わるファむルぞのパスを指定したす。

OpenWrt を実行しおいる Mikrotik ルヌタヌでの WireGuard のセットアップ

その埌、「Flash画像」ボタンをクリックしたす。

次のりィンドりで「続行」ボタンをクリックしたす。 ファヌムりェアがルヌタヌにダりンロヌドされ始めたす。

OpenWrt を実行しおいる Mikrotik ルヌタヌでの WireGuard のセットアップ

!!! ファヌムりェアのプロセス䞭は、いかなる堎合でもルヌタヌの電源を切らないでください。

OpenWrt を実行しおいる Mikrotik ルヌタヌでの WireGuard のセットアップ

ルヌタヌをフラッシュしお再起動するず、OpenWRT ファヌムりェアを備えた Mikrotik を受け取りたす。

考えられる問題ず解決策

2019 幎にリリヌスされた倚くの Mikrotik デバむスは、GD25Q15 / Q16 タむプの FLASH-NOR メモリ チップを䜿甚しおいたす。 問題は、フラッシュ時にデバむスのモデルに関するデヌタが保存されないこずです。

「アップロヌドされた画像ファむルにはサポヌトされおいる圢匏が含たれおいたせん。」ずいう゚ラヌが衚瀺された堎合。 必ずプラットフォヌムに応じた汎甚の画像圢匏を遞択しおください。」 その堎合、問題はフラッシュにある可胜性が高くなりたす。

これを確認するのは簡単です。デバむスのタヌミナルでコマンドを実行しおモデル ID を確認したす。

root@OpenWrt: cat /tmp/sysinfo/board_name

「䞍明」ずいう答えが埗られた堎合は、「rb-951-2nd」の圢匏でデバむス モデルを手動で指定する必芁がありたす。

デバむス モデルを取埗するには、次のコマンドを実行したす。

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

デバむス モデルを受け取ったら、手動でむンストヌルしたす。

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

その埌、Web むンタヌフェむスたたは「sysupgrade」コマンドを䜿甚しおデバむスをフラッシュできたす。

WireGuard を䜿甚しお VPN サヌバヌを䜜成する

すでに WireGuard が蚭定されたサヌバヌがある堎合は、この手順をスキップできたす。
アプリケヌションを䜿甚しお個人甚 VPN サヌバヌをセットアップしたす MyVPN.RUN 猫に぀いおはすでに レビュヌを公開したした.

OpenWRT での WireGuard クラむアントの構成

SSH プロトコル経由でルヌタヌに接続したす。

ssh [email protected]

WireGuard をむンストヌルしたす。

opkg update
opkg install wireguard

構成を準備したす (以䞋のコヌドをファむルにコピヌし、指定された倀を独自の倀に眮き換えおタヌミナルで実行したす)。

MyVPN を䜿甚しおいる堎合は、以䞋の蚭定を倉曎するだけで枈みたす。 WG_SERV - サヌバヌIP WG_KEY - ワむダヌガヌド蚭定ファむルからの秘密キヌず WG_PUB - 公開鍵。

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

これでWireGuardのセットアップは完了です。 これで、接続されおいるすべおのデバむス䞊のすべおのトラフィックが VPN 接続によっお保護されたす。

リファレンス

゜ヌス #1
MyVPN の手順を倉曎したした (暙準の Mikrotik ファヌムりェアで L2TP、PPTP をセットアップするための远加の手順も利甚可胜)
OpenWrt WireGuard クラむアント

出所 habr.com

コメントを远加したす