آموزش نصب WireGuard در اوبونتو 18.04 - وان سرور آکـادمی
آموزش نصب WireGuard در اوبونتو 18.04
آموزش نصب WireGuard در اوبونتو 18.04

آموزش نصب WireGuard در اوبونتو 18.04

زمان تقریبی مطالعه: 6 دقیقه

آموزش نصب WireGuard در اوبونتو 18.04

WireGuard یک فناوری مدرن V.P.N (Virtual Private Network) با رمزنگاری پیشرفته است. در مقایسه با روش های مشابه دیگر ، مانند IPsec و Open.V.P.N فناوری WireGuard سریعتر ، پیکربندی آسان تر و عملکرد بهتری دارد. این پلتفرم تقریباً در هر سیستم ها، از جمله Linux ، Windows ، Android و macOS قابل اجرا است. در این آموزش نحوه نصب WireGuard در Ubuntu 18.04 را ارائه خواهیم کرد.

WireGuard با ایجاد یک شبکه در هر دستگاه که به عنوان تونل عمل می کند ، کار می کند. انتقال ترافیک V.P.N در WireGuard به صورت UDP است.

پیش نیازها

شما به یک سرور اوبونتو 18.04 احتیاج دارید که می توانید به عنوان root یا اکانت با امتیازات sudo به آن دسترسی پیدا کنید .

یک راز بزرگ درمورد 90 % هاستینگ های ایرانی، اورسل کردن بیش از حد است که باعث افت کیفیت سرورها میشود.

وان سرور با ارائه دسترسی های مختلف این امکان را به شما خواهد داد که تمامی منابع سرورتان را مدیریت و بررسی کنید و همچنین با ارائه گارانتی 100% برگشت وجه ریسک خرید شما را به %0 کاهش میدهد.

برای خرید سرور مجازی با گارانتی 100% بازگشت وجه کلیک کنید.

تنظیم سرور WireGuard

در این بخش WireGuard را بر روی دستگاه Ubuntu نصب می کنیم و آن را تنظیم می کنیم تا به عنوان سرور عمل کند.

نصب WireGuard در اوبونتو 18.04

لیست بسته ها را به روز کنید و ابزارهای لازم برای مدیریت مخازن سیستم خود را نصب کنید. این احتمال وجود دارد که شما قبلاً پکیج را در سرور خود داشته باشید:

sudo apt update
sudo apt install software-properties-common

مخزن WireGuard را اضافه کنید:

sudo add-apt-repository ppa:wireguard/wireguard

هنگامی که از شما خواسته شد ، Enterبرای ادامه فشار دهید . add-apt-repositoryهمچنین لیست بسته ها را به طور خودکار بروزرسانی می کند.

بسته WireGuard را نصب کنید:

sudo apt install wireguard

در صورت نصب با موفقیت ، خروجی زیر را مشاهده خواهید کرد:

wireguard:
Running module version sanity check.
 - Original module
   - No original module exists within this kernel
 - Installation
   - Installing to /lib/modules/4.15.0-88-generic/updates/dkms/

depmod...

DKMS: install completed.

وقتی هسته را به روز می کنید ، ماژول WireGuard در هسته جدید کامپایل می شود.

پیکربندی WireGuard

WireGuard با دو ابزار خط فرمان به نام wgو wg-quickکه به شما اجازه پیکربندی و مدیریت شبکه WireGuard را میدهد کار میکند.

برای تولید کلیدهای عمومی و خصوصی دستور زیر را اجرا کنید:

wg genkey | sudo tee /etc/wireguard/privatekey | wg pubkey | sudo tee /etc/wireguard/publickey

پرونده ها در دایرکتوری /etc/wireguard ایجاد می شوند. می توانید پرونده ها را با catیا less مشاهده کنید.

با استفاده از ipو wgیا با ایجاد پرونده پیکربندی با ویرایشگر متن می توان دستگاه را از خط فرمان تنظیم کرد.

پرونده جدیدی به نام خود ایجاد کنید wg0.confو مطالب زیر را اضافه کنید:

sudo nano /etc/wireguard/wg0.conf
[Interface]
Address = 10.0.0.1/24
SaveConfig = true
ListenPort = 51820
PrivateKey = SERVER_PRIVATE_KEY
PostUp = iptables -A FORWARD -i %i -j ACCEPT; iptables -t nat -A POSTROUTING -o ens3 -j MASQUERADE
PostDown = iptables -D FORWARD -i %i -j ACCEPT; iptables -t nat -D POSTROUTING -o ens3 -j MASQUERADE

اسم شبکه را می توان هر چیزی گذاشت ، با این وجود توصیه می شود از چیزی مانند wg0یا wgvpn0 استفاده کنید .

تنظیمات در بخش شبکه معنای زیر را دارند:

  • Address – لیستی از آدرس های IP V4 یا V6 جدا شده با کاما برای شبکه wg0. از IP هایی از محدوده ای که برای شبکه های خصوصی رزرو شده است استفاده کنید (10.0.0.0/8 ، 172.16.0.0/12 یا 192.168.0.0/16).
  • ListenPort – پورتي كه در آن WireGuard اتصالات ورودي را میپذیرد.
  • PrivateKey – یک کلید خصوصی که توسط فرمان wg genkey تولید می شود . (برای دیدن محتویات فایل این دستور اجرا کنید: sudo cat /etc/wireguard/privatekey)
  • SaveConfig – وقتی درست تنظیم شد ، وضعیت فعلی شبکه هنگام خاموش کردن در پرونده پیکربندی ذخیره می شود.
  • PostUp – دستور یا اسکریپتی که قبل از فعال شدن شبکه اجرا می شود. در این مثال ، ما از iptables برای فعال کردن حالت masquerad استفاده می کنیم. این امر باعث می شود که ترافیک سرور را ترک کرده و به کاربران V.P.N دسترسی به اینترنت دهد.حتما بجای ens3نام کارت شبکه اینترنت خود را قرار دهید.. با اجرای دستور زیر می توانید به راحتی نام کارت شبکه اینترنت را پیدا کنید:
ip -o -4 route show to default | awk '{print $5}'
  • PostDown – دستور یا اسکریپتی که قبل از دان کردن شبکه اجرا می شود. پس از خاموش شدن شبکه، قوانین iptables حذف می شوند.

فایل هایwg0.confو privatekey نباید برای کاربران عادی قابل خواندن . از chmodبرای تنظیم مجوزها به 600 استفاده کنید:

sudo chmod 600 /etc/wireguard/{privatekey,wg0.conf}

پس از اتمام ، شبکه wg0 را با استفاده از ویژگی های مشخص شده در پرونده پیکربندی فعال کنید:

sudo wg-quick up wg0

دستور خروجی مشابه با موارد زیر را تولید می کند:

[#] ip link add wg0 type wireguard
[#] wg setconf wg0 /dev/fd/63
[#] ip -4 address add 10.0.0.1/24 dev wg0
[#] ip link set mtu 1420 up dev wg0
[#] iptables -A FORWARD -i wg0 -j ACCEPT; iptables -t nat -A POSTROUTING -o ens3 -j MASQUERADE

wg show wg0 را برای بررسی وضعیت شبکه و پیکربندی اجرا کنید:

sudo wg show wg0
interface: wg0
  public key: r3imyh3MCYggaZACmkx+CxlD6uAmICI8pe/PGq8+qCg=
  private key: (hidden)
  listening port: 51820

همچنین می توانید با ip a show wg0وضعیت شبکه را تأیید کنید:

ip a show wg0
4: wg0: <POINTOPOINT,NOARP,UP,LOWER_UP> mtu 1420 qdisc noqueue state UNKNOWN group default qlen 1000
    link/none 
    inet 10.0.0.1/24 scope global wg0
       valid_lft forever preferred_lft forever

برای فعال شدن شبکه WireGuard در زمان بوت ، دستور زیر را اجرا کنید:

sudo systemctl enable wg-quick@wg0

شبکه سرور و پیکربندی فایروال

برای کار کردنNAT ، باید IP forwarding را فعال کنیم. پرونده /etc/sysctl.conf را باز کنید و خط زیر را اضافه کنید:

sudo nano /etc/sysctl.conf
net.ipv4.ip_forward=1

پرونده را ذخیره کنید و تغییر را اعمال کنید:

sudo sysctl -p
خروجی:
net.ipv4.ip_forward = 1

اگر از UFW برای مدیریت فایروال خود استفاده می کنید ، باید ترافیک UDP را در پورت 51820 باز کنید :

sudo ufw allow 51820/udp

خودشه. همکار اوبونتو که به عنوان سرور عمل می کند ، تنظیم شده است.

تنظیمات کاربر در Linux و macOS

دستورالعمل های نصب برای همه سیستم عامل های پشتیبانی شده در https://wireguard.com/install/ در دسترس هستند . در سیستم های لینوکس ، می توانید بسته را با استفاده از مدیر بسته و بر روی macOS با brew نصب کنید . پس از نصب WireGuard ، مراحل زیر را برای پیکربندی دستگاه مشتری دنبال کنید.

روند راه اندازی یک سرویس دهنده لینوکس و macOS تقریباً مشابه آنچه شما برای سرور انجام داده اید ، نیست. با تولید کلیدهای عمومی و خصوصی شروع کنید:

wg genkey | sudo tee /etc/wireguard/privatekey | wg pubkey | sudo tee /etc/wireguard/publickey

پرونده wg0.confرا ایجاد کرده و مطالب زیر را اضافه کنید:

sudo nano /etc/wireguard/wg0.conf
[Interface]
PrivateKey = CLIENT_PRIVATE_KEY
Address = 10.0.0.2/24


[Peer]
PublicKey = SERVER_PUBLIC_KEY
Endpoint = SERVER_IP_ADDRESS:51820
AllowedIPs = 0.0.0.0/0

اگر نیاز به پیکربندی کاربران اضافی دارید ، فقط همین مراحل را با استفاده از یک آدرس IP خصوصی متفاوت تکرار کنید.

تنظیمات کاربران ویندوز

بسته ویندوز msi را از وب سایت WireGuard بارگیری و نصب کنید .

پس از نصب برنامه، WireGuard را باز کرده و بر روی Add Tunnel” -> “Add empty tunnel…” کلیک کنید:

آموزش نصب WireGuard در اوبونتو 18.04

یک کلید عمومی به طور خودکار ایجاد می شود و آن را روی صفحه نمایش می دهد.

آموزش نصب WireGuard در اوبونتو 18.04

یک نام برای تونل وارد کنید و پیکربندی را به شرح زیر ویرایش کنید:

[Interface]
PrivateKey = CLIENT_PRIVATE_KEY
Address = 10.0.0.2/24


[Peer]
PublicKey = SERVER_PUBLIC_KEY
Endpoint = SERVER_IP_ADDRESS:51820
AllowedIPs = 0.0.0.0/0

در قسمت شبکه ، یک خط جدید برای تعریف آدرس تونل مشتری اضافه کنید.

پس از اتمام روی دکمه ” Save ” کلیک کنید.

Client Peer را به سرور اضافه کنید

آخرین مرحله افزودن کلید عمومی مشتری و آدرس IP به سرور:

sudo wg set wg0 peer CLIENT_PUBLIC_KEY allowed-ips 10.0.0.2

مطمئن شوید که آن را CLIENT_PUBLIC_KEYبا کلید عمومی ایجاد شده در دستگاه کاربر ( sudo cat /etc/wireguard/publickey) تغییر دهید و در صورت متفاوت بودن، آدرس IP کاربر را تنظیم کنید. کاربران ویندوز می توانند کلید عمومی را از برنامه WireGuard کپی کنند.

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

کاربران لینوکس و macOS

کاربران لینوکس برای فعال کردن شبکه دستور زیر را اجرا کنند:

sudo wg-quick up wg0

حال باید به سرور اوبونتو متصل شوید و باید ترافیک دستگاه کاربر شما از آن عبور کند. می توانید ارتباط را با دستور زیر بررسی کنید:

sudo wg
interface: wg0
  public key: sZThYo/0oECwzUsIKTa6LYXLhk+Jb/nqK4kCCP2pyFg=
  private key: (hidden)
  listening port: 48052
  fwmark: 0xca6c

peer: r3imyh3MCYggaZACmkx+CxlD6uAmICI8pe/PGq8+qCg=
  endpoint: XXX.XXX.XXX.XXX:51820
  allowed ips: 0.0.0.0/0
  latest handshake: 1 minute, 22 seconds ago
  transfer: 58.43 KiB received, 70.82 KiB sent

همچنین می توانید مرورگر خود را باز کنید ، عبارت ” what is my ip ” را تایپ کنید ، و باید آدرس IP سرور Ubuntu خود را مشاهده کنید.

برای متوقف کردن تونلینگ شبکه wg0قطع کنید:

sudo wg-quick down wg0

کاربران Windows

اگر WireGuard را در ویندوز نصب کرده اید ، روی دکمه ” Activate ” کلیک کنید. پس از اتصال ، وضعیت تونل به حالت فعال تغییر می یابد:

آموزش نصب WireGuard در اوبونتو 18.04

نتیجه گیری

ما در این مقاله به شما آموزش نصب WireGuard در اوبونتو 18.04 را به شما آموختیم.

5/5 - (23 امتیاز)