Практикалык колдонмо
Ubuntu’да скрипт менен WireGuard VPN серверин кантип орнотуу керек
Жаңы Ubuntu серверинен жеке VPN байланышына чейин: серверди жөндөө, түзмөк профилдери жана интернет трафигинин туннелден өткөнүн текшерүү.
Серверди орнотуу, Linux контейнеринин байланышы жана Windows ылдамдыгы текшерилди. macOS, Ubuntu Desktop, iPhone жана Android түзмөктөрүндөгү текшерүүлөр бүтө элек.
1. Сервер тандап, кирүүнү даярдаңыз
Бул колдонмо Ubuntu 26.04 LTS VPS’ке башынан орнотуу үчүн. Жалпыга ачык IPv4 дареги жана root сырсөзү же SSH ачкычы керек. Провайдер менен аймакты муктаждыгыңызга жараша тандаңыз.
Vultr Shared CPU колдонобуз: 1 vCPU, 1 GB RAM, 25 GB SSD жана айына 1 TB трафик.
IPv6 жок тармактардан да туташуу үчүн IPv4 тандаңыз. IPv6 гана болгон серверден IPv4 сайттарына кирүү кошумча жөндөөнү талап кылат; бул жерде каралбайт.
2. SSH аркылуу кирүүнү текшериңиз
Windows: Start’тан PowerShell таап ачыңыз. Mac: Command+Space, Terminal деп жазып Enter басыңыз. Ubuntu Desktop: Ctrl+Alt+T.
Бардык буйруктарда SERVER_IP ордуна сервер панелиндеги ачык IPv4 дарегин жазыңыз. ssh root@SERVER_IP root катары туташтырат.
Сырсөз буйругун же бар болгон SSH ачкычынын буйругун тандаңыз. Ачкычтын үлгү жолун өзүңүздүкүнө алмаштырыңыз.
Биринчи туташууда SSH ишенимди ырастоону сурашы мүмкүн. VPS дарегин текшерип, yes деп жазып Enter басыңыз. Суралганда root сырсөзүн киргизиңиз; терген белгилер көрүнбөйт.
Киргенден кийин Ubuntu’ну текшерүү буйругун аткарыңыз, exit менен өз компьютериңизге кайтыңыз.
ssh root@SERVER_IPssh -i ~/.ssh/id_ed25519 root@SERVER_IPcat /etc/os-release
exitssh буйругу табылбаса
Windows’та PowerShell’ди Run as administrator менен ачып, төмөнкү буйрукту аткарыңыз. Анан жаап, кадимки PowerShell ачыңыз. Ubuntu’да Ubuntu буйругун колдонуңуз. macOS’то SSH кардары бар.
Add-WindowsCapability -Online -Name OpenSSH.Client~~~~0.0.1.0Так көчүрүңүз. OpenSSH.Client~~~~0.0.1.0 — Windows компонентинин идентификатору; тильдаларды жана сандарды өзгөртпөңүз.
sudo apt update
sudo apt install openssh-client3. Орнотуу топтомун жүктөп, карап чыгыңыз
ZIP’ти жүктөп, ачыңыз. Беш скриптти wireguard-guide папкасында чогуу сактаңыз. Windows, Mac же Ubuntu жолдорунун бирин гана аткарыңыз.
Скрипт VPS’ке WireGuard орнотуп, түзмөк профилин түзөт. Сервер сырсөзү бир нече жолу суралышы мүмкүн.
4a. Windows аркылуу серверди орнотуу
File Explorer’де чыгарылган wireguard-guide папкасын ачыңыз. Дарек сабына powershell жазып Enter бассаңыз, ошол папкада PowerShell ачылат.
Эки буйруктун бирин аткарыңыз. SERVER_IP жана керек болсо SSH ачкычынын жолун алмаштырыңыз.
-Device’ден кийинки windows — профиль аты. Экинчи компьютерге laptop сыяктуу башка ат бериңиз. Өзүнчө профиль бир түзмөктүн кирүүсүн башкаларды үзбөстөн жокко чыгарууга мүмкүндүк берет.
Бүткөндө File Explorer дарек сабына %USERPROFILE%\WireGuard жазыңыз. Сервер-түзмөк атындагы папкадан windows.conf табасыз. Скрипт толук жолду да көрсөтөт. VPN’ди 5-кадамда күйгүзүңүз.
.\Connect-WireGuardServer.ps1 -Server SERVER_IP -Device windows.\Connect-WireGuardServer.ps1 -Server SERVER_IP -Device windows -IdentityFile "$HOME\.ssh\id_ed25519"PowerShell скриптти бөгөттөсө
Файлда санарип колтамга жок десе, ушул папкада бул буйрукту аткарып, орнотууну кайра сынаңыз.
Unblock-File -LiteralPath .\Connect-WireGuardServer.ps1Скрипт аткаруу өчүрүлгөн десе, буйруктарды аткарып, суроону ырастаңыз да кайра сынаңыз. Өзгөртүү PowerShell терезеси жабылганга чейин гана иштейт.
Set-ExecutionPolicy -Scope Process -ExecutionPolicy RemoteSigned
Unblock-File -LiteralPath .\Connect-WireGuardServer.ps1Саясат катасы калса, токтоп, билдирүүнү диагностикага сактаңыз.
4b. Mac аркылуу серверди орнотуу
Terminal ачыңыз. cd жана боштук жазыңыз, wireguard-guide папкасын Finder’ден Terminal’га сүйрөп Enter басыңыз.
Башындагы bash менен кошо буйрукту аткарыңыз. SERVER_IP жана ачкыч жолун алмаштырыңыз. mac — профиль аты; башка Mac үчүн macbook сыяктуу ат тандаңыз.
Finder’де Command+Shift+H менен үй папкаңызды ачыңыз. WireGuard жана сервер-түзмөк папкасында mac.conf турат. Скрипт толук жолду да көрсөтөт.
bash ./connect-wireguard-server.sh SERVER_IP macbash ./connect-wireguard-server.sh SERVER_IP mac 22 ~/.ssh/id_ed255194c. Ubuntu Desktop аркылуу серверди орнотуу
Ctrl+Alt+T басыңыз. cd жана боштук жазып, wireguard-guide папкасын Terminal’га сүйрөңүз да Enter басыңыз.
SERVER_IP’ни алмаштырып буйрукту аткарыңыз. ubuntu — профиль аты. Бул ишке киргизгичке жана SSH кирүүгө sudo кереги жок.
Файл менеджеринде Home, WireGuard жана сервер-түзмөк папкасын ачыңыз. Профиль чыныгы сервер дареги менен ~/WireGuard/SERVER_IP-ubuntu/ubuntu.conf жолунда. Байланыш үчүн NetworkManager колдонулат.
bash ./connect-wireguard-server.sh SERVER_IP ubuntubash ./connect-wireguard-server.sh SERVER_IP ubuntu 22 ~/.ssh/id_ed255195a. Windows же macOS’ту туташтыруу
Расмий WireGuard колдонмосун орнотуңуз. Түзүлгөн .conf файлын импорттоп, VPN уруксатын ырастап туннелди күйгүзүңүз. Импорт тандоосунун аты версияга жараша айырмаланат.
Профиль IPv4’тү туннелге жөнөтөт жана IPv6 сырттан өтпөшү үчүн демейки IPv6 маршрутун камтыйт. Сервер IPv6 интернет бербейт. Түзмөктүн иштешин төмөндө текшериңиз.
Профилде жашыруун ачкыч бар. Көчүрмөсү бар адам түзмөктүн VPN атынан кирүүгө аракеттениши мүмкүн. Аны жардам сурамына, онлайн QR генераторуна жүктөбөңүз жана түзмөктөр арасында бөлүшпөңүз.
5b. Ubuntu Desktop’ту NetworkManager менен туташтыруу
NetworkManager профилди импорттоп, DNS жана маршруттарды башкарат; графикалык диалогдун версиясына көз каранды эмес. Буйруктарды VPS SSH ичинде эмес, компьютериңизде аткарыңыз. Алгач nmcli жана NetworkManager иштеп жатканын текшериңиз.
ubuntu.conf ubuntu аттуу байланыш түзөт. Ат мурунтан болсо, башка түзмөк атын тандап, буйруктарды ылайыктаңыз. Бир жолу импорттоңуз; андан кийин up жана down колдонуңуз. Төмөнкү жөндөө компьютер башталганда автоматтык VPN’ди өчүрөт.
DNS жөндөөсү байланыш активдүү кезде бардык аттар үчүн VPN’ге артыкчылык берет. Браузердин коопсуз DNS’и башкача болушу мүмкүн. 7-кадамда IP, DNS жана IPv6 текшериңиз. Бул ыкма чыныгы Ubuntu Desktop’то сынала элек; контейнер натыйжасы desktop DNS жана IPv6 жүрүмүн ырастабайт.
Ушул профилди бир убакта wg-quick менен күйгүзбөңүз: маршруттар кагылышат. Графикалык көрүнүш башка болсо да nmcli менен текшерип, өчүрсөңүз болот.
nmcli --version
systemctl is-active NetworkManagersudo nmcli connection import type wireguard file "$HOME/WireGuard/SERVER_IP-ubuntu/ubuntu.conf"
sudo nmcli connection modify ubuntu connection.autoconnect no ipv4.dns-priority -50 ipv4.dns-search "~."sudo nmcli connection up ubuntu
nmcli connection show --activesudo nmcli connection down ubuntu6. iPhone же Android’ди QR аркылуу туташтыруу
Төмөнкү App Store же Google Play шилтемесинен расмий WireGuard’ди орнотуңуз.
Компьютерден ssh root@SERVER_IP же ачкыч буйругу менен VPS’ке кайра кириңиз. Телефон буйругу профиль түзүп, QR көрсөтөт.
Телефондогу WireGuard’дан QR сканерлеп туннель кошууну тандаңыз. Компьютердин кодун сканерлеп, ат бериңиз, VPN уруксатын ырастап күйгүзүңүз.
Ар телефонго өзүнчө профиль. QR’ди бөлүшпөңүз: ал VPN кирүүсүн берет. Коддун саптары бузулса, Terminal терезесин чоңойтуп кайра көрсөтүңүз.
python3 /root/internetspeed-wireguard/manage-client.py add iphone
qrencode -t ANSIUTF8 < /etc/wireguard/clients/iphone.confpython3 /root/internetspeed-wireguard/manage-client.py add android
qrencode -t ANSIUTF8 < /etc/wireguard/clients/android.conf7. Интернет VPN аркылуу өткөнүн текшерүү
VPN’ди күйгүзөрдөн мурун My IP’ни ачып, даректи жазып алыңыз. WireGuard’ди күйгүзүп, My IP’ни жаңыртыңыз жана VPS’тин ачык IPv4 дареги менен салыштырыңыз.
Барак ачылып VPS дареги көрүнсө, ошол браузер байланышы VPN’ден өтөт. Эски дарек калса, көйгөйлөр бөлүмүн караңыз.
Бул браузерди текшерет, бардык колдонмолорду же VPN үзүлгөндөгү коргоону эмес. Кошумча текшерүүлөр DNS жана IPv6 үчүн.
Кошумча: IPv6 жана DNS
IPv6: туташканга чейин Test IPv6’да IPv6 барбы караңыз. VPN менен кайталаңыз. Бул IPv4 жөндөөсүндө IPv6 интернет иштебеши керек. Кадимки IPv6 көрүнсө, туннелди айланып өтүүдө. Башында IPv6 жок болсо, тест IPv6 тармагындагы жүрүмдү көрсөтпөйт.
DNS: VPN активдүү кезде DNS Leak Test’тен Standard test жасаңыз. Профиль Cloudflare DNS колдонот. Үй провайдери көрүнсө, түзмөк DNS’ин караңыз. Башка провайдер браузердин Secure DNS жөндөөсүнөн чыгышы мүмкүн; бул дароо агып кетүү далили эмес. Натыйжалар бардык колдонмолордун коргоосун кепилдебейт.
8. Байланыш көйгөйлөрүн чечүү
My IP кадимки даректи көрсөтсө, WireGuard профили күйгөнүн караңыз. Бир жолу өчүрүп күйгүзүп, My IP жаңыртыңыз.
VPN менен сайттар ачылбаса, өчүрүп ошол баракты ачыңыз. Анда да иштебесе, кадимки интернетти оңдоңуз. VPN менен гана бузулса, төмөндө текшериңиз.
Салыштыруу үчүн компьютерди телефондун хотспотуна туташтырыңыз. Телефондо Wi-Fi’ды өчүрүп мобилдик интернетти сынаңыз; трафик акысы болушу мүмкүн. Бул убактылуу тест. Мобилдикте гана иштесе, көйгөй ошол Wi-Fi байланышына тиешелүү, бирок так себеби али белгисиз.
Орнотуу ката менен токтосо, акыркы билдирүүнү сактаңыз. Себебин оңдоп, ошол түзмөк аты менен буйрукту кайталаңыз. Мурдагы профиль сакталат.
VPN сервер иштеп жатканын текшерүү
2-кадамдагыдай SSH менен кирип буйрукту аткарыңыз. Натыйжа active болушу керек. inactive же failed болсо, кайра иштетүү буйругун берип текшериңиз. Дагы active болбосо, катаны сактаңыз.
systemctl is-active wg-quick@wg0systemctl restart wg-quick@wg0
systemctl is-active wg-quick@wg0Кайра иштетүү түзмөктөрдү кыска убакытка ажыратат.
Түзмөк серверге жеткенин текшерүү
VPN’ди күйгүзүп My IP ачыңыз, серверде wg show аткарыңыз. Түзмөктүн алдынан latest handshake табыңыз. 10 seconds ago жакында шифрленген байланыш түзүлгөнүн билдирет. Сап жок болсо, бул түзмөктүн ийгиликтүү байланышы жазыла элек.
Жаңы байланыш жок болсо, Endpoint’те VPS дареги жана :51820 барын караңыз. VPS панелинен Firewall же Security groups ачыңыз. Firewall кошулган болсо, кирүүчү UDP 51820 уруксат алышы керек. Экран провайдерге жараша; Ubuntu firewall’ун скрипт жөндөйт.
Жаңы handshake болуп сайт ачылбаса, натыйжаны жана колдонмонун катасын же журналын сактаңыз. Өркүндөтүлгөн жөндөөлөрдү туш келди өзгөртүү диагнозду кыйындатат.
wg show9. Кандай ылдамдык күтсө болот?
Windows тестибизде жүктөө 350–400 Mbps, жөнөтүү 450–500 Mbps чамасында болду. Долбоордун башка VPN тесттери менен бирдей ыкма колдонулду. Жол: San Diego’догу колдонуучу → San Francisco Bay Area’дагы VPN → Seattle’деги өлчөө сервери.
Vultr Shared CPU vc2-1c-1gb: 1 vCPU, 1 GB RAM, 25 GB SSD, айына 1 TB трафик; алынган учурда айына 5 АКШ доллары.
Бул ушул жөндөөнүн натыйжасы. Сиздин ылдамдык интернетке, серверге жана жерге көз каранды. Башка VPS тарифтери же провайдерлер салыштырыла элек.
10. Чыгымдар, купуялык жана провайдер чектери
Жеке VPN жөндөөнү жана бир чыгуу аймагын башкарууга мүмкүндүк берет. Жаңыртуу, төлөм, түзмөк кирүүсү жана калыбына келтирүү сизде. Хостинг провайдеринен жашырбайт жана HTTPS’ти алмаштырбайт.
Сайт кароо, видео, жүктөө, жөнөтүү жана ылдамдык тесттери VPS трафик квотасын сарптайт. Калдыгын панелден караңыз. Ашып кетсе тарифке жараша акы же чектөө болот.
P2P алдында провайдердин учурдагы шарттарын жана мыйзамды караңыз. Протокол менен контент укугу өзүнчө маселелер. Укугуңуз болгон маалыматты гана жүктөп бөлүшүңүз; ар хост бардык P2P колдонууга уруксат бербейт.
Дата-борбор IP’си CAPTCHA, кызмат же стриминг бөгөтүнө кабылышы мүмкүн. Кадимки WireGuard бардык чыпкаланган тармакта иштөөгө кепил эмес. Бир VPS — чоң провайдердин көп аймак жана алмаштыруучу серверлеринин ордуна бир бузулуу чекити.
11. Түзмөк кошуу, кирүүнү жокко чыгаруу жана тейлөө
Ар түзмөккө бир профиль. Жоголгон телефондун peer жазуусун серверден жана калган профиль көчүрмөлөрүн өчүрүп, жаңы профиль түзүңүз. Телефондогу файлды гана өчүрүү сервердеги кирүүнү жокко чыгарбайт.
Ubuntu коопсуздук жаңыртууларын коюп, кайра жүктөө зарылдыгын караңыз. Ыңгайлуу учурда кайра жүктөп VPN кайтканын текшериңиз. Хостинг жана SSH’ти коргоңуз; SSH ырастоосун өзүнчө кадамда, сыналган башка кирүү жолу менен өзгөртүңүз.
Өчүрүү скрипти VPN’ди токтотуп, өзү башкарган жөндөөлөрдү жана firewall эрежелерин өчүрөт. SSH, UFW жана пакеттер калат. Пакет багыттоо кайра жүктөөдө система саясаты колдонулганча иштейт. VPN’ди өчүрүү VPS төлөмүн токтотпойт; керектүү маалыматты сактап, керексиз серверди провайдерден өчүрүңүз.
python3 /root/internetspeed-wireguard/manage-client.py remove iphoneapt update
apt list --upgradable
test ! -f /var/run/reboot-required || cat /var/run/reboot-requiredbash /root/internetspeed-wireguard/remove-server.sh --confirm