تاسو روټر ته ننوځئ، له یوه فورمې پوسټ څخه د بندولو سویچ قواعد کاپي کوئ، او LAN هماغه شېبه چې تونل لوېږي، براوز کول بندوي. دوه ورځې وروسته روټر لا هم خپل متحرک DNS ریکارډ د عادي WAN له لارې تازه کوي، او د مېلمنو لپ‌ټاپ لا هم IPv6 سایټونو ته رسېږي. دواړه چلندونه نورمال دي، ځکه چې کاپي شوي قواعد یو زنځیر او یوه پته‌کورنۍ پوښله، او له دغو هیڅ یو هم ټول روټر نه دی. د پیکټونو لارو ته په ترتیب سره تګ په دقیق ډول ښيي چې څه پاتې شول.

له روټر پیل وکړئ، نه له لپ‌ټاپ

د روټر په کچه پالیسي د یوه کوچني دفتر لپاره زړه‌په‌زړه وي، ځکه چې له هغې وروسته هر وسیله همدا چلند میراث ترلاسه کوي او هیڅوک نشي هېرولی چې په کلاینټ کې یو سویچ روښانه کړي. دا تاسو ته د هر فرم‌ویر تازه کولو وروسته د ازموینې لپاره یوه ځای هم درکوي. هغه څه چې نه یې درکوي، د روټر د خپل ترافیک یا د دوهمې پته‌کورنۍ اتومات پوښښ دی، او همدا دوه سوري د ډېرو ناکامو ځای‌پرځای کېدو شاته دي.

له هر څه بدلولو مخکې پر کاغذ درې حقیقتونه ولیکئ: د WAN انټرفېس نوم، د LAN پل نوم، او د VPN د پای نقطې پته او پورټ. درې واړه به په قواعدو کې ورته اړتیا ولرئ، او د انټرفېسونو نومونه اټکلول هغه تر ټولو عام دلیل دی چې یو سم ښکارېدونکی قواعد مجموعه هیڅ نه کوي.

هغه درې لارې وګورئ چې یو پیکټ یې کولی شي

له لپ‌ټاپ څخه انټرنیټ ته ترافیک لېږدول کېږي، نو د FORWARD زنځیر څخه تېرېږي. هغه ترافیک چې روټر پخپله جوړوي، لکه د DNS لېږدول، NTP پوښتنې، DDNS تازه کول او د VPN کنټرول چینل، د OUTPUT څخه تېرېږي. روټر ته خطاب شوی مدیریتي ترافیک د INPUT له لارې راځي.

نو یوازې په FORWARD کې جوړ شوی د بندولو سویچ کلاینټونه ساتي او بل هیڅ نه. جدول ښيي چې ولې د پیل صحنې تېښته د اټکل وړ ده نه پرته له سری.

Packet pathExampleChain that sees it
LAN client to WAN or tunnelBrowser requestFORWARD
Router-originatedDDNS update, NTPOUTPUT
Addressed to the routerSSH from the LANINPUT

په ډېرو طرحو کې پر INPUT د بندولو سویچ ته اړتیا نه لرئ، خو باید مدیریتي لاسرسی هغه مهال چې تونل بند دی فعال وساتئ. که نه، د VPN په لومړي ناکامۍ کې به د کنسول کیبل سره دفتر ته ځئ.

قواعد داسې ترتیب کړئ چې تونل لا هم پورته شي

کارکوونکی د بندولو سویچ د اجازو هغه لیست دی چې په رد پای ته رسېږي، او ترتیب هغه څه دی چې هغه د بندولو سویچ جوړوي نه خښته. لومړی loopback، د VPN پای نقطه، د جوړو شوو جریانونو ځوابونه او د تونل انټرفېس ته اجازه ورکړئ؛ پاتې نور په پای کې رد کړئ.

iptables -A OUTPUT -o lo -j ACCEPT
iptables -A OUTPUT -d 198.51.100.7 -p udp --dport 51820 -j ACCEPT
iptables -A OUTPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o wg0 -j ACCEPT
iptables -A OUTPUT -o eth0 -j REJECT

په دې پړاو کې پای نقطه باید یوه پته وي، نه د کوربه نوم. کله چې وروستی رد DNS بند کړ، هغه قاعده چې د برابرونکي د کوربه نوم یادوي نوره نشي حل کېدای، او تونل له بیا پیل وروسته هېڅکله بیا پورته نه شي. که برابرونکی پای نقطې بدلوي، نوم د پالیسي له تطبیق مخکې حل کړئ او هغه قاعده له همدې سکریپټ څخه تازه کړئ.

د کلاینټ ترافیک لپاره بڼه په FORWARD کې تکرار کړئ، او د رد له پاسه یوه څرګنده مدیریتي قاعده کېږدئ. هغه مدیریتي قاعده تنګ خو د لاسرسي وړ وساتئ، او د لومړي SSH ناستې له بندولو مخکې دوهمه ناسته پرانیستلې تایید یې کړئ. د بندولو سویچ د بدلون پر مهال ځان بهر بندول دومره عام دي چې پلان ورته وسوو. په هغه روټر چې WireGuard چلوي، د همکار allowed-ips ټاکي چې څه تونل ته ننوځي، پداسې حال کې چې دا قواعد ټاکي چې پرته له هغې څه وتلی شي.

IPv6 خپل دروازه غواړي

پورته هر څه IPv4 دي. که ستاسو LAN کارکوونکی IPv6 ولري او تونل یوازې IPv4 وړي، هر پوښل شوی وسیله لا هم انټرنیټ ته مستقیمه لار لري چې ستاسو نوي قواعد یې هېڅکله نه ویني. دوه‌سټکی لپ‌ټاپ به یې په خوښې غوره کړي، او د بندولو سویچ به یوازې هغه چاته خراب ښکاره شي چې د IPv4 سره ازموي.

ip6tables -A FORWARD -i br-lan -j REJECT
ip6tables -A OUTPUT -o eth0 -j REJECT
ip6tables -A OUTPUT -o lo -j ACCEPT

دلته هم ترتیب مهم دی: د loopback اجازه باید د WAN له رد مخکې راشي، که نه په روټر کې ځایي خدمتونه په عجیبو لارو ناکامېږي. که شبکه هېڅ IPv6 نه کاروي، په WAN او LAN کې یې بندول ساده‌تر دي او د هېرولو لپاره څه نه پاتې کېږي.

ځینې VPN کلاینټونه یوازې د IPv4 لپاره تلواله لار نصبوي او موجوده IPv6 تلواله لاره نه لمس کوي. له تونل له نښلېدو وروسته د لارښوونې جدول وګورئ، نه دا چې فکر وکړئ کلاینټ یې سمبال کړی.

دا د تونل په بند حالت کې ثابت کړئ

تونل له روټر څخه ودروئ او له درې ځایونو په دې ترتیب ازموئ:

# systemctl stop wg-quick@wg0
# ip route get 203.0.113.1
# curl -m 5 -sS http://example.com || echo blocked
# iptables -vnL OUTPUT | head
# ip6tables -vnL OUTPUT | head

د لارې پلټنه وایي چې پیکټ به چېرته لاړ شي، او شمارونکي وایي چې ایا ستاسو قواعد هېڅکله سره برابر شوي. هغه قاعده چې له ناکامې ازموینې وروسته صفر پیکټ ولري هیڅ نه ساتي، او عام لامل د انټرفېس نوم دی چې له هغه چې تاسو ټایپ کړی توپیر لري. هغه ترافیک چې روټر جوړوي په څرګند ډول ازموئ، ځکه له LAN اړخه ازموینه OUTPUT نه شي چلولی.

د ناکامۍ حالت له اړتیا مخکې وټاکئ. fail-closed کلاینټونه تر هغه آفلاین ساتي چې تونل بېرته راشي؛ fail-open عادي WAN لاسرسی بېرته راولي او د هغه ترافیک هدف ته زیان رسوي چې تاسو ورته پام درلود. د لوړ متریک سره د VPN حوض ته blackhole لار د fail-closed طرحو لپاره ګټوره دوهمه طبقه ده، ځکه هغه مهال ژوندی پاتې کېږي چې د تونل لار ورکېږي، نه دا چې تلواله لار ته ولوېږي.

تنظیم یوازې هغه مهال ومنئ چې په LAN کې یو کلاینټ، د روټر جوړه شوې غوښتنه او یوه IPv6 غوښتنه ټولې د تونل په بند حالت کې ناکامې شي، او درې واړه بیا کار وکړي کله چې پورته شي.

اړوندې مقالې