راه اندازی WireGuard روی روتر میکروتیک که OpenWrt را اجرا می کند

راه اندازی WireGuard روی روتر میکروتیک که OpenWrt را اجرا می کند
در بیشتر موارد، اتصال روتر به VPN کار سختی نیست، اما اگر می خواهید از کل شبکه محافظت کنید و در عین حال سرعت اتصال بهینه را حفظ کنید، بهترین راه حل استفاده از تونل VPN است. WireGuard.

روترها میکروتیک ثابت شد که راه حل های قابل اعتماد و بسیار انعطاف پذیر است، اما متاسفانه پشتیبانی از WireGurd در RouterOS هنوز نه و معلوم نیست چه زمانی و در چه عملکردی ظاهر خواهد شد. به تازگی معلوم شد در مورد آنچه که توسعه دهندگان تونل WireGuard VPN پیشنهاد کردند مجموعه پچ، که نرم افزار تونل زنی VPN آنها را بخشی از هسته لینوکس می کند، امیدواریم این امر به پذیرش در RouterOS کمک کند.

اما در حال حاضر، متأسفانه، برای پیکربندی 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

شما باید هر دو فایل را دانلود کنید: نصب и ارتقا.

راه اندازی WireGuard روی روتر میکروتیک که OpenWrt را اجرا می کند

1. راه اندازی شبکه، دانلود و راه اندازی سرور PXE

دانلود سرور کوچک PXE برای آخرین نسخه ویندوز

در یک پوشه جداگانه از حالت فشرده خارج کنید. در فایل config.ini پارامتر را اضافه کنید rfc951=1 بخش [dhcp]. این پارامتر برای تمامی مدل های میکروتیک یکسان است.

راه اندازی WireGuard روی روتر میکروتیک که OpenWrt را اجرا می کند

بیایید به تنظیمات شبکه برویم: شما باید یک آدرس IP ثابت را در یکی از رابط های شبکه رایانه خود ثبت کنید.

راه اندازی WireGuard روی روتر میکروتیک که OpenWrt را اجرا می کند

آدرس IP: 192.168.1.10
ماسک شبکه: 255.255.255.0

راه اندازی WireGuard روی روتر میکروتیک که OpenWrt را اجرا می کند

اجرا کن سرور کوچک PXE از طرف مدیر و در قسمت انتخاب کنید DHCP سرور سرور با آدرس 192.168.1.10

در برخی از نسخه های ویندوز، این رابط ممکن است فقط پس از اتصال اترنت ظاهر شود. من توصیه می کنم یک روتر وصل کنید و بلافاصله روتر و رایانه شخصی را با استفاده از یک پچ کورد تغییر دهید.

راه اندازی WireGuard روی روتر میکروتیک که OpenWrt را اجرا می کند

دکمه "..." (پایین سمت راست) را فشار دهید و پوشه ای را که فایل های سیستم عامل Mikrotik را در آن دانلود کرده اید مشخص کنید.

فایلی را انتخاب کنید که نام آن با "initramfs-kernel.bin یا elf" ختم شود.

راه اندازی WireGuard روی روتر میکروتیک که OpenWrt را اجرا می کند

2. بوت کردن روتر از سرور PXE

کامپیوتر را با سیم و اولین پورت (wan, internet, poe in, ...) روتر وصل می کنیم. پس از آن، ما یک خلال دندان می گیریم، آن را به سوراخ با کتیبه "تنظیم مجدد" می چسبانیم.

راه اندازی WireGuard روی روتر میکروتیک که OpenWrt را اجرا می کند

برق روتر را روشن می کنیم و 20 ثانیه صبر می کنیم و سپس خلال دندان را رها می کنیم.
در دقیقه بعد، پیام های زیر باید در پنجره Tiny PXE Server ظاهر شوند:

راه اندازی WireGuard روی روتر میکروتیک که OpenWrt را اجرا می کند

اگر پیام ظاهر شد، پس شما در مسیر درستی هستید!

تنظیمات مربوط به آداپتور شبکه را بازیابی کنید و آدرس را به صورت پویا (از طریق DHCP) دریافت کنید.

با استفاده از همان پچ کورد به پورت های LAN روتر میکروتیک (در مورد ما 2…5) وصل شوید. فقط آن را از پورت 1 به پورت 2 تغییر دهید. آدرس را باز کنید 192.168.1.1 در مرورگر

راه اندازی WireGuard روی روتر میکروتیک که OpenWrt را اجرا می کند

وارد رابط اداری OpenWRT شوید و به بخش منوی "System -> Backup/Flash Firmware" بروید.

راه اندازی WireGuard روی روتر میکروتیک که OpenWrt را اجرا می کند

در بخش فرعی "Flash new firmware image" روی دکمه "Select file (Browse)" کلیک کنید.

راه اندازی WireGuard روی روتر میکروتیک که OpenWrt را اجرا می کند

مسیر فایلی که نام آن با "-squashfs-sysupgrade.bin" ختم می شود را مشخص کنید.

راه اندازی WireGuard روی روتر میکروتیک که OpenWrt را اجرا می کند

پس از آن، روی دکمه "Flash Image" کلیک کنید.

در پنجره بعدی، روی دکمه "ادامه" کلیک کنید. سیستم عامل شروع به دانلود در روتر می کند.

راه اندازی WireGuard روی روتر میکروتیک که OpenWrt را اجرا می کند

!!! به هیچ وجه برق روتر را در طول فرآیند سفت‌افزار قطع نکنید!!!

راه اندازی WireGuard روی روتر میکروتیک که 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 Client در OpenWRT

از طریق پروتکل SSH به روتر متصل شوید:

ssh [email protected]

WireGuard را نصب کنید:

opkg update
opkg install wireguard

پیکربندی را آماده کنید (کد زیر را در یک فایل کپی کنید، مقادیر مشخص شده را با مقادیر خود جایگزین کنید و در ترمینال اجرا کنید).

اگر از MyVPN استفاده می کنید، در پیکربندی زیر فقط باید تغییر دهید WG_SERV - آی پی سرور 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

اضافه کردن نظر