ื”ื’ื“ืจืช WireGuard ื‘ื ืชื‘ Mikrotik ื”ืžืจื™ืฅ OpenWrt

ื”ื’ื“ืจืช WireGuard ื‘ื ืชื‘ Mikrotik ื”ืžืจื™ืฅ OpenWrt
ื‘ืจื•ื‘ ื”ืžืงืจื™ื, ื—ื™ื‘ื•ืจ ื ืชื‘ ืœ-VPN ืื™ื ื• ืงืฉื”, ืืš ืื ืืชื” ืจื•ืฆื” ืœื”ื’ืŸ ืขืœ ื›ืœ ื”ืจืฉืช ื•ื‘ื• ื–ืžื ื™ืช ืœืฉืžื•ืจ ืขืœ ืžื”ื™ืจื•ืช ื—ื™ื‘ื•ืจ ืื•ืคื˜ื™ืžืœื™ืช, ืื– ื”ืคืชืจื•ืŸ ื”ื˜ื•ื‘ ื‘ื™ื•ืชืจ ื”ื•ื ืœื”ืฉืชืžืฉ ื‘ืžื ื”ืจืช VPN WireGuard.

ื ืชื‘ื™ื ืžื™ืงืจื•ื˜ื™ืง ื”ื•ื›ื— ื›ืคืชืจื•ื ื•ืช ืืžื™ื ื™ื ื•ื’ืžื™ืฉื™ื ืžืื•ื“, ืืš ืœืžืจื‘ื” ื”ืฆืขืจ ืชืžื™ื›ื” ื‘-WireGurd ื‘-RouterOS ืขื“ื™ื™ืŸ ืœื ื•ืœื ื™ื“ื•ืข ืžืชื™ ื”ื•ื ื™ื•ืคื™ืข ื•ื‘ืื™ื–ื” ื‘ื™ืฆื•ืข. ืœืื—ืจื•ื ื” ื”ื•ื ื ื•ื“ืข ืขืœ ืžื” ืฉื”ืฆื™ืขื• ืžืคืชื—ื™ ืžื ื”ืจืช ื”-VPN ืฉืœ WireGuard ืกื˜ ืชื™ืงื•ืŸ, ืžื” ืฉื™ื”ืคื•ืš ืืช ืชื•ื›ื ืช ืžื ื”ื•ืจ ื”-VPN ืฉืœื”ื ืœื—ืœืง ืžืœื™ื‘ืช ืœื™ื ื•ืงืก, ืื ื• ืžืงื•ื•ื™ื ืฉื–ื” ื™ืชืจื•ื ืœืื™ืžื•ืฅ ื‘-RouterOS.

ืื‘ืœ ืœืขืช ืขืชื”, ืœืžืจื‘ื” ื”ืฆืขืจ, ื›ื“ื™ ืœื”ื’ื“ื™ืจ ืืช WireGuard ื‘ื ืชื‘ Mikrotik, ืืชื” ืฆืจื™ืš ืœืฉื ื•ืช ืืช ื”ืงื•ืฉื—ื”.

ืžื”ื‘ื”ื‘ 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

ืืชื” ืฆืจื™ืš ืœื”ื•ืจื™ื“ ืืช ืฉื ื™ ื”ืงื‘ืฆื™ื: ื”ืชืงืŸ ะธ ืฉื“ืจื’.

ื”ื’ื“ืจืช WireGuard ื‘ื ืชื‘ Mikrotik ื”ืžืจื™ืฅ OpenWrt

1. ื”ื’ื“ืจืช ืจืฉืช, ื”ื•ืจื“ื” ื•ื”ื’ื“ืจืช ืฉืจืช PXE

ื”ื•ืจื“ ืฉืจืช PXE ื–ืขื™ืจ ืขื‘ื•ืจ ื”ื’ืจืกื” ื”ืื—ืจื•ื ื” ืฉืœ Windows.

ืคืชื— ืืช ื”ื“ื—ื•ืก ืœืชื™ืงื™ื” ื ืคืจื“ืช. ื‘ืงื•ื‘ืฅ config.ini ื”ื•ืกืฃ ืืช ื”ืคืจืžื˜ืจ rfc951=1 ืกึธืขึดื™ืฃ [dhcp]. ืคืจืžื˜ืจ ื–ื” ื–ื”ื” ืขื‘ื•ืจ ื›ืœ ื“ื’ืžื™ Mikrotik.

ื”ื’ื“ืจืช WireGuard ื‘ื ืชื‘ Mikrotik ื”ืžืจื™ืฅ OpenWrt

ื ืขื‘ื•ืจ ืœื”ื’ื“ืจื•ืช ื”ืจืฉืช: ืขืœื™ืš ืœืจืฉื•ื ื›ืชื•ื‘ืช IP ืกื˜ื˜ื™ืช ื‘ืื—ื“ ืžืžืžืฉืงื™ ื”ืจืฉืช ืฉืœ ื”ืžื—ืฉื‘ ืฉืœืš.

ื”ื’ื“ืจืช WireGuard ื‘ื ืชื‘ Mikrotik ื”ืžืจื™ืฅ OpenWrt

ื›ืชื•ื‘ืช IP: 192.168.1.10
ืžืกื™ื›ืช ืจืฉืช: 255.255.255.0

ื”ื’ื“ืจืช WireGuard ื‘ื ืชื‘ Mikrotik ื”ืžืจื™ืฅ OpenWrt

ืจื•ืฅ ืฉืจืช PXE ื–ืขื™ืจ ืžื˜ืขื ื”ืžื ื”ืœ ื•ื‘ื—ืจ ื‘ืฉื“ื” ืฉืจืช DHCP ืฉืจืช ืขื ื›ืชื•ื‘ืช 192.168.1.10

ื‘ื’ื™ืจืกืื•ืช ืžืกื•ื™ืžื•ืช ืฉืœ Windows, ืžืžืฉืง ื–ื” ืขืฉื•ื™ ืœื”ื•ืคื™ืข ืจืง ืœืื—ืจ ื—ื™ื‘ื•ืจ Ethernet. ืื ื™ ืžืžืœื™ืฅ ืœื—ื‘ืจ ื ืชื‘ ื•ืœื”ื—ืœื™ืฃ ืžื™ื“ ืืช ื”ื ืชื‘ ื•ื”ืžื—ืฉื‘ ื‘ืืžืฆืขื•ืช ื›ื‘ืœ ืชื™ืงื•ืŸ.

ื”ื’ื“ืจืช WireGuard ื‘ื ืชื‘ Mikrotik ื”ืžืจื™ืฅ OpenWrt

ืœื—ืฅ ืขืœ ื”ืœื—ืฆืŸ "..." (ืœืžื˜ื” ืžื™ืžื™ืŸ) ื•ืฆื™ื™ืŸ ืืช ื”ืชื™ืงื™ื” ืฉื‘ื” ื”ื•ืจื“ืช ืืช ืงื‘ืฆื™ ื”ืงื•ืฉื—ื” ืขื‘ื•ืจ Mikrotik.

ื‘ื—ืจ ืงื•ื‘ืฅ ืฉืฉืžื• ืžืกืชื™ื™ื ื‘-"initramfs-kernel.bin ืื• elf"

ื”ื’ื“ืจืช WireGuard ื‘ื ืชื‘ Mikrotik ื”ืžืจื™ืฅ OpenWrt

2. ืืชื—ื•ืœ ื”ื ืชื‘ ืžืฉืจืช PXE

ืื ื• ืžื—ื‘ืจื™ื ืืช ื”ืžื—ืฉื‘ ืขื ื—ื•ื˜ ื•ืืช ื”ื™ืฆื™ืื” ื”ืจืืฉื•ื ื” (wan, ืื™ื ื˜ืจื ื˜, poe in, ...) ืฉืœ ื”ื ืชื‘. ืœืื—ืจ ืžื›ืŸ, ืื ื• ืœื•ืงื—ื™ื ืงื™ืกื, ื ื•ืขืฆื™ื ืื•ืชื• ืœืชื•ืš ื”ื—ื•ืจ ืขื ื”ื›ื™ืชื•ื‘ "ืื™ืคื•ืก".

ื”ื’ื“ืจืช WireGuard ื‘ื ืชื‘ Mikrotik ื”ืžืจื™ืฅ OpenWrt

ืื ื• ืžืคืขื™ืœื™ื ืืช ื›ื•ื— ื”ื ืชื‘ ื•ืžื—ื›ื™ื 20 ืฉื ื™ื•ืช, ื•ืื– ืžืฉื—ืจืจื™ื ืืช ื”ืงื™ืกื.
ื‘ืชื•ืš ื”ื“ืงื” ื”ื‘ืื”, ื”ื”ื•ื“ืขื•ืช ื”ื‘ืื•ืช ืืžื•ืจื•ืช ืœื”ื•ืคื™ืข ื‘ื—ืœื•ืŸ Tiny PXE Server:

ื”ื’ื“ืจืช WireGuard ื‘ื ืชื‘ Mikrotik ื”ืžืจื™ืฅ OpenWrt

ืื ื”ื”ื•ื“ืขื” ืžื•ืคื™ืขื”, ืื– ืืชื” ื‘ื›ื™ื•ื•ืŸ ื”ื ื›ื•ืŸ!

ืฉื—ื–ืจ ืืช ื”ื”ื’ื“ืจื•ืช ื‘ืžืชืื ื”ืจืฉืช ื•ื”ื’ื“ืจ ืœืงื‘ืœ ืืช ื”ื›ืชื•ื‘ืช ื‘ืื•ืคืŸ ื“ื™ื ืžื™ (ื“ืจืš DHCP).

ื”ืชื—ื‘ืจ ืœื™ืฆื™ืื•ืช ื”-LAN ืฉืœ ื”ื ืชื‘ Mikrotik (2โ€ฆ5 ื‘ืžืงืจื” ืฉืœื ื•) ื‘ืืžืฆืขื•ืช ืื•ืชื• ื›ื‘ืœ ืชื™ืงื•ืŸ. ืคืฉื•ื˜ ื”ื—ืœืฃ ืื•ืชื• ืžื™ืฆื™ืื” 1 ืœื™ืฆื™ืื” 2. ืคืชื— ื›ืชื•ื‘ืช 192.168.1.1 ื‘ื“ืคื“ืคืŸ.

ื”ื’ื“ืจืช WireGuard ื‘ื ืชื‘ Mikrotik ื”ืžืจื™ืฅ OpenWrt

ื”ื™ื›ื ืก ืœืžืžืฉืง ื”ื ื™ื”ื•ืœื™ ืฉืœ OpenWRT ื•ืขื‘ื•ืจ ืœืกืขื™ืฃ ื”ืชืคืจื™ื˜ "ืžืขืจื›ืช -> ื’ื™ื‘ื•ื™/ืงื•ืฉืžืช ืคืœืืฉ"

ื”ื’ื“ืจืช WireGuard ื‘ื ืชื‘ Mikrotik ื”ืžืจื™ืฅ OpenWrt

ื‘ืกืขื™ืฃ ื”ืžืฉื ื” "ืชืžื•ื ืช ืงื•ืฉื—ื” ื—ื“ืฉื” ืฉืœ ืคืœืืฉ", ืœื—ืฅ ืขืœ ื”ืœื—ืฆืŸ "ื‘ื—ืจ ืงื•ื‘ืฅ (ืขื™ื•ืŸ)".

ื”ื’ื“ืจืช WireGuard ื‘ื ืชื‘ Mikrotik ื”ืžืจื™ืฅ OpenWrt

ืฆื™ื™ืŸ ืืช ื”ื ืชื™ื‘ ืœืงื•ื‘ืฅ ืฉืฉืžื• ืžืกืชื™ื™ื ื‘-"-squashfs-sysupgrade.bin".

ื”ื’ื“ืจืช WireGuard ื‘ื ืชื‘ Mikrotik ื”ืžืจื™ืฅ OpenWrt

ืœืื—ืจ ืžื›ืŸ, ืœื—ืฅ ืขืœ ื›ืคืชื•ืจ "ืชืžื•ื ืช ืคืœืืฉ".

ื‘ื—ืœื•ืŸ ื”ื‘ื, ืœื—ืฅ ืขืœ ื›ืคืชื•ืจ "ื”ืžืฉืš". ื”ื•ืจื“ืช ื”ืงื•ืฉื—ื” ืชืชื—ื™ืœ ืœื ืชื‘.

ื”ื’ื“ืจืช WireGuard ื‘ื ืชื‘ Mikrotik ื”ืžืจื™ืฅ OpenWrt

!!! ื‘ืฉื•ื ืžืงืจื” ืื™ืŸ ืœื ืชืง ืืช ื”ื—ืฉืžืœ ืฉืœ ื”ื ืชื‘ ื‘ืžื”ืœืš ืชื”ืœื™ืš ื”ืงื•ืฉื—ื” !!!

ื”ื’ื“ืจืช WireGuard ื‘ื ืชื‘ Mikrotik ื”ืžืจื™ืฅ OpenWrt

ืœืื—ืจ ื”ื‘ื”ื•ื‘ ื•ืืชื—ื•ืœ ืžื—ื“ืฉ ืฉืœ ื”ื ืชื‘, ืชืงื‘ืœื• ืืช Mikrotik ืขื ืงื•ืฉื—ื” ืฉืœ OpenWRT.

ื‘ืขื™ื•ืช ื•ืคืชืจื•ื ื•ืช ืืคืฉืจื™ื™ื

ืžื›ืฉื™ืจื™ Mikrotik ืจื‘ื™ื ืฉื™ืฆืื• ื‘ืฉื ืช 2019 ืžืฉืชืžืฉื™ื ื‘ืฉื‘ื‘ ื–ื™ื›ืจื•ืŸ FLASH-NOR ืžืกื•ื’ GD25Q15 / Q16. ื”ื‘ืขื™ื” ื”ื™ื ืฉื›ืืฉืจ ืžื”ื‘ื”ื‘, ื ืชื•ื ื™ื ืขืœ ื“ื’ื ื”ืžื›ืฉื™ืจ ืื™ื ื ื ืฉืžืจื™ื.

ืื ืืชื” ืจื•ืื” ืืช ื”ืฉื’ื™ืื” "ืงื•ื‘ืฅ ื”ืชืžื•ื ื” ืฉื”ื•ืขืœื” ืื™ื ื• ืžื›ื™ืœ ืคื•ืจืžื˜ ื ืชืžืš. ื•ื“ื ืฉืืชื” ื‘ื•ื—ืจ ื‘ืคื•ืจืžื˜ ื”ืชืžื•ื ื” ื”ื’ื ืจื™ ืขื‘ื•ืจ ื”ืคืœื˜ืคื•ืจืžื” ืฉืœืš." ืื– ื›ื ืจืื” ืฉื”ื‘ืขื™ื” ื”ื™ื ื‘ืคืœืืฉ.

ืงืœ ืœื‘ื“ื•ืง ื–ืืช: ื”ืคืขืœ ืืช ื”ืคืงื•ื“ื” ื›ื“ื™ ืœื‘ื“ื•ืง ืืช ืžื–ื”ื” ื”ื“ื’ื ื‘ืžืกื•ืฃ ื”ืžื›ืฉื™ืจ

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

ืœืื—ืจ ืžื›ืŸ, ืชื•ื›ืœ ืœื”ื‘ื”ื‘ ืืช ื”ืžื›ืฉื™ืจ ื“ืจืš ืžืžืฉืง ื”ืื™ื ื˜ืจื ื˜ ืื• ื‘ืืžืฆืขื•ืช ื”ืคืงื•ื“ื” "sysupgrade".

ืฆื•ืจ ืฉืจืช VPN ืขื WireGuard

ืื ื›ื‘ืจ ื™ืฉ ืœืš ืฉืจืช ืขื WireGuard ืžื•ื’ื“ืจ, ืืชื” ื™ื›ื•ืœ ืœื“ืœื’ ืขืœ ืฉืœื‘ ื–ื”.
ืื ื™ ืืฉืชืžืฉ ื‘ืืคืœื™ืงืฆื™ื” ื›ื“ื™ ืœื”ื’ื“ื™ืจ ืฉืจืช VPN ืื™ืฉื™ MyVPN.RUN ืขืœ ื”ื—ืชื•ืœ ืื ื™ ื›ื‘ืจ ืคืจืกื ื‘ื™ืงื•ืจืช.

ื”ื’ื“ืจืช ืœืงื•ื— WireGuard ื‘-OpenWRT

ื”ืชื—ื‘ืจ ืœื ืชื‘ ื‘ืืžืฆืขื•ืช ืคืจื•ื˜ื•ืงื•ืœ SSH:

ssh [email protected]

ื”ืชืงืŸ ืืช WireGuard:

opkg update
opkg install wireguard

ื”ื›ืŸ ืืช ื”ืชืฆื•ืจื” (ื”ืขืชืง ืืช ื”ืงื•ื“ ืœืžื˜ื” ืœืงื•ื‘ืฅ, ื”ื—ืœืฃ ืืช ื”ืขืจื›ื™ื ืฉืฆื•ื™ื ื• ื‘ืขืจื›ื™ื ืฉืœืš ื•ื”ืคืขืœ ื‘ื˜ืจืžื™ื ืœ).

ืื ืืชื” ืžืฉืชืžืฉ ื‘-MyVPN, ืื– ื‘ืชืฆื•ืจื” ืœืžื˜ื” ืืชื” ืจืง ืฆืจื™ืš ืœืฉื ื•ืช WG_SERV - IP ืฉืœ ืฉืจืช WG_KEY - ืžืคืชื— ืคืจื˜ื™ ืžืงื•ื‘ืฅ ื”ืชืฆื•ืจื” ืฉืœ wireguard ื• 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 (ื”ื•ืจืื•ืช ื–ืžื™ื ื•ืช ื ื•ืกืคื•ืช ืœื”ื’ื“ืจืช L2TP, PPTP ื‘ืงื•ืฉื—ื” ืกื˜ื ื“ืจื˜ื™ืช ืฉืœ Mikrotik)
OpenWrt WireGuard Client

ืžืงื•ืจ: www.habr.com

ื”ื•ืกืคืช ืชื’ื•ื‘ื”