ځکه چې WireGuard
تجهیزات
- Raspberry Pi 3 د LTE ماډل او عامه IP پتې سره. دلته به د VPN سرور وي (له دې وروسته په متن کې ورته ویل کیږي څنډه چلونکی)
- یو Android تلیفون چې باید د ټولو مخابراتو لپاره VPN وکاروي
- د لینکس لپ ټاپ چې باید یوازې په شبکه کې VPN وکاروي
هر وسیله چې د VPN سره وصل وي باید د دې وړتیا ولري چې نورو ټولو وسیلو سره وصل شي. د مثال په توګه، یو تلیفون باید وړتیا ولري چې په لپ ټاپ کې د ویب سرور سره وصل شي که دواړه وسایل د VPN شبکې برخه وي. که چیرې تنظیم خورا ساده وګرځي ، نو تاسو کولی شئ د VPN سره د ډیسټاپ وصل کولو په اړه فکر وکړئ (د ایترنیټ له لارې).
د دې په پام کې نیولو سره چې تار او بې سیم اړیکې د وخت په تیریدو سره لږ او خوندي کیږي (
د ساوتري لګول
WireGuard چمتو کوي
زه وروستی فیډورا لینکس 31 لرم، او زه د نصبولو دمخه د لارښود لوستلو لپاره ډیر سست وم. یوازې کڅوړې وموندلې wireguard-tools
، دوی یې نصب کړل، او بیا یې ونه موندل چې ولې هیڅ کار نه کوي. نورې پلټنې څرګنده کړه چې زه بسته نلرم wireguard-dkms
(د شبکې چلوونکي سره)، مګر دا زما د ویش په ذخیره کې نه و.
که ما لارښوونې لوستلي وای، ما به سم ګامونه اخیستي وای:
$ sudo dnf copr enable jdoss/wireguard
$ sudo dnf install wireguard-dkms wireguard-tools
زه زما په راسبیري پای کې د راسبیان بسټر توزیع نصب کړی ، دلته دمخه یو بسته شتون لري wireguard
، دا نصب کړئ:
$ sudo apt install wireguard
زما په Android تلیفون کې ما غوښتنلیک نصب کړ
د کیلي نصب کول
د همکار تصدیق کولو لپاره ، وایرګارډ د VPN همکارانو تصدیق کولو لپاره ساده شخصي / عامه کلیدي سکیم کاروي. تاسو کولی شئ د لاندې کمانډ په کارولو سره د VPN کیلي په اسانۍ سره رامینځته کړئ:
$ wg genkey | tee wg-laptop-private.key | wg pubkey > wg-laptop-public.key
$ wg genkey | tee wg-server-private.key | wg pubkey > wg-server-public.key
$ wg genkey | tee wg-mobile-private.key | wg pubkey > wg-mobile-public.key
دا موږ ته درې کلیدي جوړه راکوي (شپږ فایلونه). موږ به په تشکیلاتو کې فایلونو ته مراجعه ونه کړو ، مګر مینځپانګې دلته کاپي کړو: هره کیلي په بیس 64 کې یوه کرښه ده.
د VPN سرور لپاره د ترتیب کولو فایل رامینځته کول (راسبیري پای)
ترتیب خورا ساده دی، ما لاندې فایل جوړ کړ /etc/wireguard/wg0.conf
:
[Interface]
Address = 10.200.200.1/24
ListenPort = 51820
PrivateKey = <copy private key from wg-server-private.key>
PostUp = iptables -A FORWARD -i %i -j ACCEPT; iptables -t nat -A POSTROUTING -o wwan0 -j MASQUERADE
PostDown = iptables -D FORWARD -i %i -j ACCEPT; iptables -t nat -D POSTROUTING -o wwan0 -j MASQUERADE
[Peer]
# laptop
PublicKey = <copy public key from wg-laptop-public.key>
AllowedIPs = 10.200.200.2/32
[Peer]
# mobile phone
PublicKey = <copy public key from wg-mobile-public.key>
AllowedIPs = 10.200.200.3/32
یو څو یادونه:
- په مناسبو ځایونو کې تاسو اړتیا لرئ د کیلي سره د فایلونو څخه لیکې داخل کړئ
- زما VPN داخلي بانډ کاروي
10.200.200.0/24
- د ټیمونو لپاره
PostUp
/PostDown
زه د بهرنۍ شبکې انٹرفیس wwan0 لرم، تاسو ممکن یو بل ولرئ (د مثال په توګه، eth0)
د VPN شبکه په اسانۍ سره د لاندې کمانډ سره پورته کیږي:
$ sudo wg-quick up wg0
یو کوچنی تفصیل: د DNS سرور په توګه چې ما کارولی dnsmasq
د شبکې انٹرفیس پورې تړلی br0
، ما وسایل هم اضافه کړل wg0
د اجازه ورکړل شوي وسایلو لیست ته. په dnsmasq کې دا د تنظیم کولو فایل ته د نوي شبکې انٹرفیس لاین اضافه کولو سره ترسره کیږي /etc/dnsmasq.conf
د بیلګې په توګه:
interface=br0
interface=wg0
برسیره پردې، ما د UDP اوریدلو بندر (51280) ته د ټرافیک اجازه ورکولو لپاره د iptable قواعد اضافه کړل:
$ sudo iptables -I INPUT -p udp --dport 51820 -j ACCEPT
اوس چې هرڅه کار کوي، موږ کولی شو د VPN تونل اتوماتیک لانچ تنظیم کړو:
$ sudo systemctl enable [email protected]
په لپ ټاپ کې د پیرودونکي ترتیب
په لپ ټاپ کې د ترتیب کولو فایل جوړ کړئ /etc/wireguard/wg0.conf
د ورته ترتیباتو سره:
[Interface]
Address = 10.200.200.2/24
PrivateKey = <copy private key from wg-laptop-private.key>
[Peer]
PublicKey = <copy public key from wg-server-public.key>
AllowedIPs = 10.200.200.0/24
Endpoint = edgewalker:51820
یادونې:
- د ایج واکر پرځای تاسو اړتیا لرئ د عامه IP یا VPN سرور کوربه مشخص کړئ
- په ترتیب کولو سره
AllowedIPs
په10.200.200.0/24
، موږ یوازې داخلي شبکې ته د لاسرسي لپاره VPN کاروو. نورو ټولو IP پتو / سرورونو ته ترافیک به د "عادي" خلاص چینلونو له لارې تیریږي. دا به په لپ ټاپ کې د مخکې ترتیب شوي DNS سرور هم وکاروي.
د ازموینې او اتوماتیک لانچ لپاره موږ ورته حکمونه کاروو wg-quick
и systemd
:
$ sudo wg-quick up wg0
$ sudo systemctl enable [email protected]
په Android تلیفون کې د پیرودونکي تنظیم کول
د Android تلیفون لپاره موږ یو ورته ورته ترتیب فایل رامینځته کوو (راځئ چې ورته زنګ ووهو mobile.conf
):
[Interface]
Address = 10.200.200.3/24
PrivateKey = <copy private key from wg-mobile-private.key>
DNS = 10.200.200.1
[Peer]
PublicKey = <copy public key from wg-server-public.key>
AllowedIPs = 0.0.0.0/0
Endpoint = edgewalker:51820
په لپ ټاپ کې د ترتیب برعکس، تلیفون باید زموږ د VPN سرور د DNS سرور په توګه وکاروي (لین DNS
)، او همدارنګه ټول ټرافیک د VPN تونل له لارې تیریږي (AllowedIPs = 0.0.0.0/0
).
د دې پرځای چې فایل خپل ګرځنده وسیله ته کاپي کړئ، تاسو کولی شئ دا په QR کوډ کې بدل کړئ:
$ sudo apt install qrencode
$ qrencode -t ansiutf8 < mobile.conf
د QR کوډ به کنسول ته د ASCII په توګه تولید کړي. دا د Android VPN ایپ څخه سکین کیدی شي او په اتوماتيک ډول به د VPN تونل تنظیم کړي.
پایلې
د WireGuard تنظیم کول د OpenVPN په پرتله ساده جادو دی.
سرچینه: www.habr.com