Ushbu maqolada Wireguard VPN-ni serveringizda qanday o'rnatish haqida batafsil ma'lumot beriladi. Bu virtual yoki shaxsiy server bo'lishi mumkin - bu unchalik muhim emas.
Ushbu VPN Wireguard o'rnatish qo'llanmasi ko'p tajribaga ega bo'lmagan foydalanuvchilar uchun mo'ljallangan, shuning uchun barcha qadamlar juda batafsil va skrinshotlar bilan ta'minlanadi.
Tunnelimiz orqali o'tadigan trafik shifrlanadi va Internet biz tarmoqqa kirishimiz mumkin bo'lgan provayderning manzilini emas, balki VPN serverimizning IP manzilini ko'rsatadi.
Sizda allaqachon VPS bor deb taxmin qilinadi. Agar yo'q bo'lsa, mumkin tartib bizdan.
Serverimizga Ubuntu 22.04 operatsion tizimini o'rnatamiz. Agar sizda boshqa operatsion tizimga ega serveringiz bo'lsa, uni quyidagi amallarni bajarish orqali osongina qayta o'rnatishingiz mumkin ko'rsatmalar.
Shunday qilib, Ubuntu 22.04 operatsion tizimiga ega server tayyor, endi biz unga SSH orqali ulanamiz. Agar siz to'satdan ushbu protokolni ilgari uchratmagan bo'lsangiz, unda ushbu jarayon batafsil tavsiflangan maqola sizga yordam beradi. ning ikkinchi xatboshisi Maqola Linux OS uchun, uchinchisi Windows OS uchun.
Wireguard serverini sozlang
Muvaffaqiyatli ulanishdan so'ng, men jarayonni tushunish uchun bir nechta buyruqlar va ular ishlab chiqaradigan narsalarning tavsifini yozaman:
Biz omborlardagi paketlar ro'yxatini yangilaymiz
apt update
Paketlarni o'zlari yangilash
apt upgrade -y
Wireguard paketini o'rnating
apt install -y wireguard
Bizning konfiguratsiyamiz /etc/wireguard/ katalogida saqlanadi, biz katalogga kirishimiz kerak:
cd /etc/wireguard/
Bizning serverimiz uchun ochiq va shaxsiy kalit kerak bo'ladi. Fayllar va kataloglarni buyruqlar bilan yaratishda to'g'ri huquqlarni o'rnatganimizdan so'ng ularni yaratamiz:
umask 077
wg genkey > privatekey
wg pubkey < privatekey > publickey
Endi biz shaxsiy kalit uchun huquqlarni o'rnatamiz:
chmod 600 privatekey
Konfiguratsiya faylini yaratishdan oldin bizga tarmoq interfeysimiz nomi kerak. Uni aniqlash uchun quyidagi buyruqdan foydalaning:
ip a
Bizga joriy ulanish uchun ishlatiladigan IP manzilli interfeys kerak. Ehtimol, u sizning holatingizda ens3 deb nomlanadi, ammo boshqa nom ham bo'lishi mumkin.
Shuningdek, bizga ochiq va shaxsiy kalit kerak bo'ladi. Ularni ko'rsatish uchun men quyruqdan foydalanaman
tail privatekey publickey
Bu kabi ko'rinadi:
Tahrirlash uchun har qanday foydalanishingiz mumkin Linux matn muharriri. Men nano ishlataman. Uni o'rnatish uchun siz quyidagi buyruqni bajarishingiz kerak:
apt install -y nano
Biz konfiguratsiya faylini tahrirlaymiz:
nano /etc/wireguard/wg0.conf
Eslatma
faylni saqlash uchun ctrl+o tugmalar birikmasidan foydalanamiz
chiqish uchun - ctrl+x
Bu shunday bo'lishi kerak:
[Interface]
PrivateKey = [ your private key ]
Address = 10.30.0.1/24
ListenPort = 51928
PostUp = iptables -A FORWARD -i %i -j ACCEPT; iptables -t nat -A POSTROUTING -o [ interface name ] -j MASQUERADE
PostDown = iptables -D FORWARD -i %i -j ACCEPT; iptables -t nat -D POSTROUTING -o [ interface name ] -j MASQUERADE
Mening holatimda bu shunday ko'rinadi
Biz IP yo'naltirishni yoqamiz
echo "net.ipv4.ip_forward=1" >> /etc/sysctl.conf
sysctl -p
Wireguard xizmatini ishga tushiring:
systemctl start [email protected]
Agar biz server qayta ishga tushirilgandan so'ng xizmat ishga tushishini istasak, biz quyidagilarni bajaramiz:
systemctl enable [email protected]
Xizmat holatini ko'rish uchun:
systemctl status [email protected]
Holat skrinshotdagi kabi faol bo'lishi kerak:
Agar siz bizning ko'rsatmalarimizga diqqat bilan amal qilgan bo'lsangiz, unda ushbu bosqichda VPN Wireguard server qismini ishlashi uchun sizga kerak bo'lgan hamma narsa mavjud.
Wireguard mijozi sozlanmoqda
Qolgan yagona narsa - mijoz qismini sozlash. Masalan va soddaligi uchun men serverda mijoz qismi uchun kalitlarni yarataman. Lekin xavfsizlik maqsadida kalitlarni mijoz tomonida yaratish to'g'riroq bo'lardi. Men yaratish uchun buyruqlardan foydalanaman:
wg genkey > mypc_privatekey
wg pubkey < mypc_privatekey > mypc_publickey
Men telefonda VPN-dan foydalanish uchun kalitlarni ham yarataman:
wg genkey > myphone_private
keywg pubkey < myphone_privatekey > myphone_publickey
Shuni ta'kidlash kerakki, bularning barchasi katalogda bo'lgan paytda bajarilishi kerak
/etc/wireguard/
Siz boshqa katalogda ham ishga tushirishingiz mumkin. Ammo soddalik uchun biz /etc/wireguard/ dagi ko'rsatmalarni bajaramiz.
Katalogdagi fayllarni ro'yxatga olish uchun ls buyrug'idan foydalanamiz. Men buni shunday oldim:
Ekranda ochiq kalitlarni ko'rsatamiz. Tarmog'imizga tugunlarni qo'shish uchun bizga kerak bo'ladi:
tail mypc_publickey myphone_publickey
Men uchun bu shunday ko'rinadi:
Keling, konfiguratsiya faylimizni tahrir qilaylik:
nano wg0.conf
Quyidagi satrlarni qo'shing:
[Peer]
PublicKey = [ mypc_publickey ]
AllowedIPs = 10.30.0.2/32
[Peer]
PublicKey = [ myphone_publickey ]
AllowedIPs = 10.30.0.3/32
Endi konfiguratsiya fayli quyidagicha ko'rinadi:
Faylni saqlang va xizmatimizni qayta ishga tushiring:
systemctl restart wg-quick@wg0
Keling, hamma narsa muvaffaqiyatli ekanligini tekshirib ko'raylik:
systemctl status wg-quick@wg0
Holat faol bo'lishi kerak
Har safar server konfiguratsiya faylini (wg0.conf) tahrir qilgandan keyin xizmatni qayta yuklash talab qilinadi.
Keyinchalik, biz mijozlar uchun konfiguratsiyalarni yaratamiz (mening holimda, mening shaxsiy kompyuterim va telefonim). Men serverda xuddi shunday qilaman.
nano mypc.conf
[Interface]
PrivateKey = [mypc_privatekey private key]
Address = 10.30.0.2/32
DNS = 8.8.8.8
[Peer]
PublicKey = [publickey server publc key]
Endpoint =[ server ip address]:51928
AllowedIPs = 0.0.0.0/0
PersistentKeepalive = 20
Endpoint maydonida siz serverning IP-manzilini ko'rishingiz mumkin - bu biz SSH orqali ulanish uchun ishlatgan IP-manzil. Interfeyslar va manzillarni ko'rish uchun siz ip a buyrug'idan foydalanishingiz mumkin.
Mobil uchun Wireguard-ni sozlang
Biz telefonimiz uchun shunga o'xshash konfiguratsiyani yaratamiz. Faqat manzilni o'zgartirish kerak. Kompyuter uchun bu 10.30.0.2/32 edi va telefon uchun konfiguratsiyada biz 10.30.0.3/32 ni tashkil qilamiz. Bundan tashqari, agar biz VPN-ni boshqa qurilmalarda ishlatmoqchi bo'lsak, konfiguratsiya fayllari va wg0.conf server konfiguratsiya faylidagi Manzil maydoniga, konfiguratsiyalarni yaratishda AllowedIPs maydoniga boshqa manzillarni qo'shishimiz kerak.
Mening holatlarimda fayllar shunday ko'rinadi:
mypc.conf
myphone.conf
Ulanish uchun biz wireguard mijozini o'rnatamiz https://www.wireguard.com/install/
Windows ilovasida biz yangi tunnel qo'shamiz va mypc.conf faylida yaratilgan konfiguratsiyani kiritamiz
Biz tunnelni ishga tushiramiz va manzilimizni ko'rsatadigan veb-saytga brauzerga o'tamiz
Telefoningizga VPN-ni qulay tarzda qo'shish uchun serverda qr kodlarini yaratish dasturini o'rnating:
apt install -y qrencode
Konfiguratsiya katalogida bo'lganingizda, quyidagi amallarni bajaring:
qrencode -t ansiutf8 -r myphone.conf
Keyin biz telefonda Wireguard ilovasiga kiramiz, yangi tunnel yaratish uchun + tugmasini bosing, QR kodini skanerlashni tanlang, skanerlang, VPN-ni yoqing. Keyinchalik, chiqish IP manzilini ko'rsatadigan har qanday manbadan foydalanib, serverimiz manzilini ko'rsatayotganimizni tekshiramiz.
Siz buni qildingiz!