Internet Speed Online

ভাষা

নিবন্ধ

ব্যবহারিক নির্দেশিকা

স্ক্রিপ্ট দিয়ে Ubuntu-তে WireGuard VPN সার্ভার সেটআপ করার উপায়

নতুন Ubuntu সার্ভার থেকে ব্যক্তিগত VPN: সার্ভার সেটআপ, ডিভাইস প্রোফাইল এবং ইন্টারনেট ট্র্যাফিক টানেল দিয়ে যাচ্ছে কি না যাচাই।

সার্ভার সেটআপ, Linux কনটেইনারের সংযোগ এবং Windows-এর গতি পরীক্ষা হয়েছে। প্রকৃত macOS, Ubuntu Desktop, iPhone ও Android ডিভাইসের পরীক্ষা বাকি।

কখন এই সেটআপ ব্যবহার করবেন?

নিজের বাছাই করা সার্ভার দিয়ে ইন্টারনেটে যাওয়ার জন্য ব্যক্তিগত VPN চাইলে এবং আপনার নেটওয়ার্ক WireGuard সংযোগ অনুমতি দিলে এটি উপযুক্ত। সেবাদাতা, সার্ভারের অবস্থান ও সংযুক্ত ডিভাইস আপনি বেছে নেবেন।

নেটওয়ার্ক VPN ব্লক করলে সাধারণ WireGuard উপযুক্ত নাও হতে পারে। এটি সংযোগকে সাধারণ ওয়েব ট্র্যাফিকের ছদ্মবেশ দেয় না। সঠিকভাবে কনফিগার করা সার্ভারও আপনার ইন্টারনেট সেবাদাতার মাধ্যমে অপ্রাপ্য হতে পারে। VPS-এর টাকা দেওয়ার আগে বিষয়টি বিবেচনা করুন।

VPN-ব্লক করা নেটওয়ার্কে AmneziaWG বা VLESS ও REALITY-সহ Xray বিবেচনা করুন। AmneziaVPN নিজের সার্ভারে এগুলো সেটআপ করতে পারে। শনাক্তকরণ ও ব্লক প্রতিরোধের জন্য তৈরি হলেও সব নেটওয়ার্কে সংযোগের নিশ্চয়তা দেয় না।

WireGuard

AmneziaVPN

1. সার্ভার বেছে প্রবেশের ব্যবস্থা করুন

এই নির্দেশনা Ubuntu 26.04 LTS VPS-এ শুরু থেকে ইনস্টল করার জন্য। পাবলিক IPv4 এবং root পাসওয়ার্ড বা SSH কী দরকার। প্রয়োজন অনুযায়ী সেবাদাতা ও অঞ্চল বাছুন।

এই গাইডে 1 vCPU ও 1 GB RAM-এর VPS ব্যবহার করছি।

IPv6-বিহীন নেটওয়ার্ক থেকেও যুক্ত হতে IPv4 নিন। শুধু IPv6 সার্ভার থেকে IPv4 সাইটে যেতে অতিরিক্ত ব্যবস্থা লাগে; তা এখানে নেই।

সার্ভারের নিরাপত্তা: এই গাইড VPN ইনস্টল করা নিয়ে, VPS-এর সম্পূর্ণ নিরাপত্তা ও রক্ষণাবেক্ষণ নিয়ে নয়। স্ক্রিপ্ট SSH ও WireGuard-এর ফায়ারওয়াল সেট করে। নিরাপত্তা আপডেট ও প্রবেশাধিকার রক্ষা আপনার দায়িত্ব। SSH কী ব্যবহার করুন, হোস্টিং অ্যাকাউন্টে দুই ধাপের প্রমাণীকরণ চালু করুন এবং VPN প্রোফাইল পাসওয়ার্ডের মতো সুরক্ষিত রাখুন। কী দিয়ে লগইন কাজ করছে যাচাই করার পরেই SSH পাসওয়ার্ড লগইন বন্ধ করুন।

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 দিয়ে নিজের কম্পিউটারে ফিরুন।

নিজের কম্পিউটারের PowerShell বা Terminal — পাসওয়ার্ড লগইন
ssh root@SERVER_IP
নিজের কম্পিউটারের PowerShell বা Terminal — বিদ্যমান SSH কী
ssh -i ~/.ssh/id_ed25519 root@SERVER_IP
সার্ভারে
cat /etc/os-release
exit
ssh কমান্ড না পাওয়া গেলে

Windows-এ PowerShell Run as administrator দিয়ে খুলে নিচের কমান্ড চালান। ইনস্টলের পর বন্ধ করে সাধারণ PowerShell খুলুন। Ubuntu-তে Ubuntu কমান্ড ব্যবহার করুন। macOS-এ SSH ক্লায়েন্ট আছে।

Windows — প্রশাসক PowerShell-এ SSH ক্লায়েন্ট ইনস্টল
Add-WindowsCapability -Online -Name OpenSSH.Client~~~~0.0.1.0

হুবহু কপি করুন। OpenSSH.Client~~~~0.0.1.0 Windows উপাদানের পরিচয়; টিল্ডা ও সংখ্যা বদলাবেন না।

Ubuntu Desktop — SSH ক্লায়েন্ট ইনস্টল
sudo apt update
sudo apt install openssh-client

3. সেটআপ প্যাকেজ নামিয়ে দেখুন

ZIP ডাউনলোড করে খুলুন। সব স্ক্রিপ্ট wireguard-guide ফোল্ডারে একসঙ্গে রাখুন। নিচের Windows, Mac বা Ubuntu পথের একটি অনুসরণ করুন।

স্ক্রিপ্ট VPS-এ WireGuard ইনস্টল করে ও কম্পিউটারে VPN প্রোফাইল রাখে। পুরো সেটআপে একটি SSH সংযোগ ব্যবহার হয়। পাসওয়ার্ড দিয়ে লগইনে সফল প্রতিবার চালানোর সময় একবার পাসওয়ার্ড চায়, স্ক্রিপ্ট তা সংরক্ষণ করে না।

প্রোফাইলের নাম 1–15টি ইংরেজি বড় বা ছোট অক্ষর, সংখ্যা ও হাইফেন দিয়ে হবে; শুরুতে অক্ষর চাই। স্পেস নয়। উদাহরণ: my-wg-vpn, my-laptop, my-phone। নাম না দিলে স্ক্রিপ্ট জিজ্ঞেস করবে; Enter দিলে my-wg-vpn হবে। ভুল নামে আবার চেষ্টা করা যাবে। প্রতিটি অতিরিক্ত ডিভাইসের আলাদা নাম দিন।

বিদ্যমান প্রোফাইল ডাউনলোড করতে স্ক্রিপ্ট চালিয়ে 2 (Manage existing server) বেছে সংযোগ করুন, তারপর 9 (Download profile) বেছে নিন। তালিকা থেকে নাম লিখুন; খালি রেখে Enter চাপলে বাতিল হবে। একই SSH সংযোগে ডাউনলোড হয়, সার্ভারের পাসওয়ার্ড আবার লাগে না। সফল ডাউনলোড একই নামের স্থানীয় ফাইল প্রতিস্থাপন করে।

সেটআপ স্ক্রিপ্ট ডাউনলোড (.zip)

4a. Windows থেকে সার্ভার সেটআপ

File Explorer-এ খোলা wireguard-guide ফোল্ডারটি খুলুন। ঠিকানার বারে powershell লিখে Enter দিন; সঠিক ফোল্ডারে PowerShell খুলবে।

নিচের কমান্ডগুলোর একটি চালান। SERVER_IP এবং কী ব্যবহার করলে তার পাথও বদলান।

1 (Set up server) বেছে নিন, সার্ভারের IP ও প্রোফাইলের নাম লিখুন, তারপর SSH কী-এর পথ লিখুন অথবা Enter চাপুন। Enter প্রস্তাবিত নাম রাখে। সারাংশ দেখে এগোতে yes/y লিখুন; বাতিল করতে no লিখুন। 3টি অজানা উত্তরের পর স্ক্রিপ্ট বন্ধ হবে। ইনস্টলেশনের অগ্রগতি দেখানো হয়। Enter চাপলেও এগিয়ে যাবে।

প্রোফাইল আপনার হোম ফোল্ডারে WireGuard/SERVER_IP/my-wg-vpn.conf-এ সংরক্ষিত হয়। স্ক্রিপ্ট সম্পূর্ণ পথ দেখায়।

সার্ভারের ঠিকানা ও প্রোফাইলের নাম জানতে চেয়ে শুরু করুন
.\Connect-WireGuardServer.ps1
PowerShell — পাসওয়ার্ড যাচাইকরণ
.\Connect-WireGuardServer.ps1 -Server SERVER_IP -ProfileName my-wg-vpn
PowerShell — SSH কী যাচাইকরণ
.\Connect-WireGuardServer.ps1 -Server SERVER_IP -ProfileName my-wg-vpn -IdentityFile "$HOME\.ssh\id_ed25519"
PowerShell স্ক্রিপ্ট আটকালে

ফাইলে ডিজিটাল স্বাক্ষর নেই বললে একই ফোল্ডারে এই কমান্ড চালিয়ে সেটআপ আবার চেষ্টা করুন।

PowerShell — ডাউনলোড ফাইলের ব্লক সরান
Unblock-File -LiteralPath .\Connect-WireGuardServer.ps1, .\ManagementClient.ps1

স্ক্রিপ্ট চালানো বন্ধ থাকলে কমান্ডগুলো চালিয়ে প্রশ্নে সম্মতি দিন, তারপর আবার চেষ্টা করুন। এই পরিবর্তন PowerShell উইন্ডো বন্ধ হওয়া পর্যন্ত থাকে।

PowerShell — শুধু এই উইন্ডোতে স্ক্রিপ্টের অনুমতি
Set-ExecutionPolicy -Scope Process -ExecutionPolicy RemoteSigned
Unblock-File -LiteralPath .\Connect-WireGuardServer.ps1, .\ManagementClient.ps1

নীতির ত্রুটি থাকলে থামুন এবং নির্ণয়ের জন্য বার্তাটি রাখুন।

4b. Mac থেকে সার্ভার সেটআপ

Terminal খুলুন। cd ও একটি স্পেস লিখে Finder থেকে wireguard-guide ফোল্ডার Terminal-এ টেনে Enter দিন।

শুরুর bash-সহ একটি কমান্ড চালান। SERVER_IP এবং কী-এর পাথ বদলান। my-wg-vpn প্রোফাইলের নাম; অন্য Mac-এ macbook-এর মতো আলাদা নাম দিন।

প্রোফাইল আপনার হোম ফোল্ডারে WireGuard/SERVER_IP/my-wg-vpn.conf-এ সংরক্ষিত হয়। স্ক্রিপ্ট সম্পূর্ণ পথ দেখায়।

1 (Set up server) বেছে নিন, সার্ভারের IP ও প্রোফাইলের নাম লিখুন, তারপর SSH কী-এর পথ লিখুন অথবা Enter চাপুন। Enter প্রস্তাবিত নাম রাখে। সারাংশ দেখে এগোতে yes/y লিখুন; বাতিল করতে no লিখুন। 3টি অজানা উত্তরের পর স্ক্রিপ্ট বন্ধ হবে। ইনস্টলেশনের অগ্রগতি দেখানো হয়। Enter চাপলেও এগিয়ে যাবে।

সার্ভারের ঠিকানা ও প্রোফাইলের নাম জানতে চেয়ে শুরু করুন
bash ./connect-wireguard-server.sh
macOS Terminal — পাসওয়ার্ড
bash ./connect-wireguard-server.sh SERVER_IP my-wg-vpn
macOS Terminal — SSH কী
bash ./connect-wireguard-server.sh SERVER_IP my-wg-vpn 22 ~/.ssh/id_ed25519

4c. Ubuntu Desktop থেকে সার্ভার সেটআপ

Ctrl+Alt+T চাপুন। cd ও স্পেস লিখে wireguard-guide ফোল্ডার Terminal-এ টেনে Enter দিন।

SERVER_IP বদলে একটি কমান্ড চালান। my-wg-vpn প্রোফাইলের নাম। এই লঞ্চার বা SSH লগইনে sudo লাগে না।

প্রোফাইল আপনার হোম ফোল্ডারে WireGuard/SERVER_IP/my-wg-vpn.conf-এ সংরক্ষিত হয়। স্ক্রিপ্ট সম্পূর্ণ পথ দেখায়।

1 (Set up server) বেছে নিন, সার্ভারের IP ও প্রোফাইলের নাম লিখুন, তারপর SSH কী-এর পথ লিখুন অথবা Enter চাপুন। Enter প্রস্তাবিত নাম রাখে। সারাংশ দেখে এগোতে yes/y লিখুন; বাতিল করতে no লিখুন। 3টি অজানা উত্তরের পর স্ক্রিপ্ট বন্ধ হবে। ইনস্টলেশনের অগ্রগতি দেখানো হয়। Enter চাপলেও এগিয়ে যাবে।

সার্ভারের ঠিকানা ও প্রোফাইলের নাম জানতে চেয়ে শুরু করুন
bash ./connect-wireguard-server.sh
Ubuntu Desktop-এ — পাসওয়ার্ড
bash ./connect-wireguard-server.sh SERVER_IP my-wg-vpn
Ubuntu Desktop-এ — SSH কী
bash ./connect-wireguard-server.sh SERVER_IP my-wg-vpn 22 ~/.ssh/id_ed25519

সংযোগের আগে: VPN বন্ধ হলে কী হবে?

Full tunnel প্রোফাইল সক্রিয় থাকা অবস্থায় সাধারণ ইন্টারনেট ট্র্যাফিক VPN দিয়ে পাঠায়।

Kill switch VPN-এর বাইরের ইন্টারনেট সংযোগ আটকায়। আচরণ অ্যাপ ও সেটিংসের ওপর নির্ভর করে: সার্ভার অপ্রাপ্য, নিজে প্রোফাইল বন্ধ করা ও ডিভাইস পুনরায় চালু করার ফল আলাদা হতে পারে। গাইড full-tunnel প্রোফাইল বানায়, কিন্তু সব ডিভাইসে VPN ছাড়া সংযোগের একই স্থায়ী বাধা সেট করে না। বাড়তি সুরক্ষা ছাড়া প্রোফাইল বন্ধ করলে সাধারণ ইন্টারনেট ফিরে আসতে পারে।

Windows: স্ক্রিপ্টের তৈরি প্রোফাইলে অফিসিয়াল ক্লায়েন্ট স্বয়ংক্রিয়ভাবে kill switch চালু করে। টানেল সক্রিয় থাকা পর্যন্ত এটি কাজ করে। নিজে প্রোফাইল বন্ধ করলে সাধারণ ইন্টারনেট আবার চলে।

Android: ফোনের সিস্টেম সেটিংসে VPN ও WireGuard-এর সেটিংস খুঁজুন। VPN-এর বাইরের সংযোগ আটকাতে Always-on VPN ও Block connections without VPN চালু করুন; শুধু Always-on যথেষ্ট নয়। নাম ও অবস্থান ফোনভেদে বদলায়। ব্লক চালু থাকলে VPN অপ্রাপ্য মানে ইন্টারনেটও অপ্রাপ্য।

Mac ও iPhone: On-Demand নির্ধারিত নিয়মে স্বয়ংক্রিয় সংযোগ দেয়। একে স্থায়ী kill switch ভাববেন না।

Ubuntu Desktop: নিচের NetworkManager ইমপোর্ট আলাদা kill switch তৈরি করে না। কম্পিউটারে বাড়তি ফায়ারওয়াল নিয়ম দরকার।

সার্ভার অপ্রাপ্য হওয়া আর VPN প্রোফাইল বন্ধ থাকা আলাদা। প্রোফাইল সক্রিয় থাকলেও সার্ভার সাড়া না দিলে ট্র্যাফিক শুধু থেমে যেতে পারে; এর মানে ডিভাইস VPN-এর বাইরে চলে গেছে এমন নয়।

WireGuard — Windows

Android — VPN

5a. Windows বা macOS যুক্ত করুন

অফিশিয়াল WireGuard অ্যাপ বসান। তৈরি .conf ফাইল ইমপোর্ট করে VPN অনুমতি দিন এবং টানেল চালু করুন। ইমপোর্ট অপশনের নাম সংস্করণভেদে বদলাতে পারে।

প্রোফাইল IPv4 টানেলে পাঠায় এবং IPv6 বাইরে যাওয়া ঠেকাতে ডিফল্ট IPv6 রুট রাখে। সার্ভার IPv6 ইন্টারনেট দেয় না। নিচের পরীক্ষায় ডিভাইসের বাস্তব আচরণ দেখুন।

প্রোফাইলে ব্যক্তিগত কী থাকে। কপি থাকা ব্যক্তি ডিভাইসের VPN পরিচয় ব্যবহার করতে পারে। সহায়তার টিকিট, অনলাইন QR জেনারেটর বা অন্য ডিভাইসে এটি শেয়ার করবেন না।

অফিশিয়াল WireGuard ডাউনলোড

5b. NetworkManager দিয়ে Ubuntu Desktop যুক্ত করুন

NetworkManager প্রোফাইল, DNS ও রুট সামলায়; গ্রাফিক্যাল ইমপোর্ট উইন্ডোর সংস্করণের ওপর নির্ভর করে না। কমান্ড নিজের ডেস্কটপে চালান, VPS-এর SSH-এ নয়। আগে nmcli আছে ও NetworkManager চলছে যাচাই করুন।

my-wg-vpn.conf থেকে my-wg-vpn নামের সংযোগ হয়। নাম আগে থাকলে অন্য ডিভাইস নাম দিয়ে কমান্ড মিলিয়ে নিন। একবার ইমপোর্ট করুন; পরে up ও down ব্যবহার করুন। নিচের সেটিং কম্পিউটার চালু হলে স্বয়ংক্রিয় VPN বন্ধ রাখে।

এই DNS সেটিং সংযোগ চালু থাকা অবস্থায় সব নামের জন্য VPN-কে অগ্রাধিকার দেয়। ব্রাউজারের নিরাপদ DNS আলাদা হতে পারে। ধাপ 7-এ IP, DNS ও IPv6 দেখুন। প্রকৃত Ubuntu Desktop-এ এই পদ্ধতি এখনও পরীক্ষিত নয়; কনটেইনার পরীক্ষা ডেস্কটপ DNS বা IPv6 প্রমাণ করে না।

একই প্রোফাইল একসঙ্গে wg-quick দিয়ে চালাবেন না; রুটের সংঘাত হতে পারে। গ্রাফিক্যাল দৃশ্য আলাদা হলেও nmcli দিয়ে যাচাই ও বিচ্ছিন্ন করা যায়।

Ubuntu Desktop — NetworkManager যাচাই
nmcli --version
systemctl is-active NetworkManager
Ubuntu Desktop — একবার ইমপোর্ট ও DNS সেটিং
sudo nmcli connection import type wireguard file "$HOME/WireGuard/SERVER_IP/my-wg-vpn.conf"
sudo nmcli connection modify my-wg-vpn connection.autoconnect no ipv4.dns-priority -50 ipv4.dns-search "~."
Ubuntu Desktop — যুক্ত করুন
sudo nmcli connection up my-wg-vpn
nmcli connection show --active
Ubuntu Desktop — বিচ্ছিন্ন করুন
sudo nmcli connection down my-wg-vpn

6. QR দিয়ে iPhone বা Android যুক্ত করুন

নিচের App Store বা Google Play লিংক থেকে অফিশিয়াল WireGuard অ্যাপ বসান।

কম্পিউটার থেকে ssh root@SERVER_IP বা নিজের কী-এর কমান্ড দিয়ে VPS-এ আবার ঢুকুন। ফোনের কমান্ড প্রোফাইল বানিয়ে QR দেখায়।

ফোনের WireGuard-এ QR স্ক্যান করে টানেল যোগ করা বাছুন। কম্পিউটারের কোড স্ক্যান করে নাম দিন, VPN অনুমতি দিয়ে চালু করুন।

প্রতি ফোনে আলাদা প্রোফাইল। QR শেয়ার করবেন না: এতে VPN-এ প্রবেশ মেলে। কোডের লাইন ভেঙে গেলে Terminal বড় করে আবার দেখান।

সার্ভারে — iPhone প্রোফাইল তৈরি
python3 /root/internetspeed-wireguard/manage-client.py add iphone
qrencode -t ANSIUTF8 < /etc/wireguard/clients/iphone.conf
সার্ভারে — আলাদা Android প্রোফাইল তৈরি
python3 /root/internetspeed-wireguard/manage-client.py add android
qrencode -t ANSIUTF8 < /etc/wireguard/clients/android.conf

iPhone-এর WireGuard — App Store

Android-এর WireGuard — Google Play

7. ইন্টারনেট VPN দিয়ে যাচ্ছে যাচাই করুন

VPN চালুর আগে My IP খুলে ঠিকানা লিখে রাখুন। WireGuard চালিয়ে My IP রিফ্রেশ করে VPS-এর পাবলিক IPv4-এর সঙ্গে মিলান।

পাতা খুলে VPS ঠিকানা দেখালে সেই ব্রাউজারের সংযোগ VPN দিয়ে যাচ্ছে। পুরোনো ঠিকানা থাকলে সমস্যা সমাধান দেখুন।

এটি ব্রাউজার যাচাই, সব অ্যাপ বা VPN বিচ্ছিন্ন হলে সুরক্ষার নিশ্চয়তা নয়। বাড়তি পরীক্ষা DNS ও IPv6-এর জন্য।

পাবলিক IP যাচাই করুন

ঐচ্ছিক: IPv6 ও DNS পরীক্ষা

IPv6: আগে Test IPv6 খুলে IPv6 ঠিকানা আছে কি না দেখুন। VPN চালিয়ে আবার করুন। এই IPv4 সেটআপে IPv6 ইন্টারনেট চলার কথা নয়। স্বাভাবিক IPv6 দেখা গেলে টানেলের বাইরে যাচ্ছে। আগে IPv6 না থাকলে এই পরীক্ষা IPv6 নেটওয়ার্কের আচরণ বলতে পারে না।

DNS: VPN চালু রেখে DNS Leak Test-এ Standard test করুন। প্রোফাইল Cloudflare DNS ব্যবহার করে। বাড়ির ইন্টারনেট সেবাদাতা দেখালে ডিভাইস DNS দেখুন। অন্য সেবাদাতা ব্রাউজারের Secure DNS থেকেও আসতে পারে; নিজে থেকেই লিকের প্রমাণ নয়। ফল সব অ্যাপ সুরক্ষিত থাকার নিশ্চয়তা দেয় না।

Test IPv6 খুলুন

DNS Leak Test খুলুন

8. সংযোগের সমস্যা সমাধান

My IP-তে স্বাভাবিক ঠিকানা থাকলে WireGuard প্রোফাইল চালু আছে দেখুন। একবার বন্ধ-চালু করে My IP রিফ্রেশ করুন।

VPN চালু হলে সাইট না খুললে VPN বন্ধ করে একই পাতা দেখুন। তখনও না চললে আগে স্বাভাবিক ইন্টারনেট ঠিক করুন। শুধু VPN-এ সমস্যা হলে নিচে দেখুন।

তুলনার জন্য কম্পিউটার ফোনের হটস্পটে যুক্ত করুন। ফোনে Wi-Fi বন্ধ করে মোবাইল ডেটা ব্যবহার করুন; খরচ হতে পারে। এটি সাময়িক পরীক্ষা। শুধু মোবাইলে চললে সমস্যা ওই Wi-Fi সংযোগের সঙ্গে সম্পর্কিত, সঠিক কারণ এখনও জানা যায়নি।

সেটআপ ত্রুটিতে থামলে শেষ বার্তা রাখুন। কারণ ঠিক করে একই ডিভাইস নাম দিয়ে কমান্ড আবার চালান। পুরোনো প্রোফাইল থাকবে।

VPN সার্ভার চলছে যাচাই করুন

ধাপ 2-এর মতো SSH-এ ঢুকে কমান্ড চালান। ফল active হওয়া উচিত। inactive বা failed হলে রিস্টার্ট কমান্ড দিয়ে আবার দেখুন। active না হলে ত্রুটি রাখুন।

সার্ভারে — WireGuard যাচাই
systemctl is-active wg-quick@wg0
সার্ভারে — নিষ্ক্রিয় WireGuard আবার চালু
systemctl 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 খুলুন। যুক্ত ফায়ারওয়াল থাকলে আগত UDP পোর্ট 51820 অনুমোদন দরকার। প্যানেল সেবাদাতাভেদে আলাদা; Ubuntu ফায়ারওয়াল স্ক্রিপ্ট সেট করে।

সাম্প্রতিক handshake থাকলেও সাইট না খুললে ফল ও অ্যাপের ত্রুটি বা লগ রাখুন। উন্নত নেটওয়ার্ক সেটিং এলোমেলো বদলালে নির্ণয় কঠিন হয়।

সার্ভারে — VPN অবস্থা দেখুন
wg show

9. কী গতি আশা করা যায়?

Windows পরীক্ষায় ডাউনলোড প্রায় 450–500 Mbps ও আপলোড 450–500 Mbps হয়েছে। প্রকল্পের অন্য VPN-এর মতো একই পদ্ধতি ব্যবহৃত হয়েছে। পথ: San Diego-র ব্যবহারকারী → San Francisco Bay Area-র VPN → Seattle-এর মাপার সার্ভার।

Vultr Shared CPU (vc2-1c-1gb): 1 vCPU, 1 GB RAM, ও মাসে 1 TB ট্র্যাফিক; নেওয়ার সময় মাসে 5 মার্কিন ডলার।

আলাদা পরীক্ষায় মাসে 6 মার্কিন ডলারের Vultr Shared CPU Intel High Frequency (vhf-1c-1gb; 1 vCPU, 1 GB RAM) ইনস্ট্যান্সে ডাউনলোড ও আপলোড উভয়ই প্রায় 550–750 Mbps হয়েছে। দুটি প্যাকেজই Windows-এ একই পদ্ধতি ও পথে পরীক্ষা করা হয়েছে: San Diego → San Francisco Bay Area-র VPN সার্ভার → Seattle-এর মাপার সার্ভার।

পরীক্ষা করা Intel High Frequency ইনস্ট্যান্সগুলোর ফল আলাদা ছিল: কিছু ধারাবাহিকভাবে সীমার ওপরের দিকের গতি দিয়েছে, অন্যগুলো নিচের দিকের কাছাকাছি ছিল। শুধু এই প্যাকেজ বেছে নিলেই 750 Mbps নিশ্চিত হয়নি।

এটি এই সেটআপের ফল। আপনার গতি ইন্টারনেট, সার্ভার ও অবস্থানের ওপর নির্ভর করে।

10. খরচ, গোপনীয়তা ও সেবাদাতার সীমা

নিজের VPN সেটিং ও একটি নির্বাচিত বের হওয়ার স্থান নিয়ন্ত্রণ করতে দেয়। আপডেট, বিল, ডিভাইসের প্রবেশ ও পুনরুদ্ধার নিজের দায়িত্ব। হোস্টিং সেবাদাতার কাছে বেনামি করে না বা HTTPS-এর বিকল্প নয়।

পরীক্ষিত সার্ভারগুলোর দাম মাসে 5 ও 6 মার্কিন ডলার। সেবাদাতা ও অঞ্চলভেদে দাম, হার্ডওয়্যার ও ট্র্যাফিক সীমা আলাদা। VPN সাবস্ক্রিপশনের সঙ্গে তুলনায় মনে রাখুন: একটি VPS একটি বাছাই করা অবস্থান দেয়, রক্ষণাবেক্ষণ আপনার।

ব্রাউজিং, ভিডিও, ডাউনলোড, আপলোড ও গতি পরীক্ষা VPS ট্র্যাফিক কোটা খরচ করে। প্যানেলে বাকি কোটা দেখুন। অতিক্রম করলে প্যাকেজ অনুযায়ী বাড়তি ফি বা সীমাবদ্ধতা হতে পারে।

P2P-এর আগে সেবাদাতার বর্তমান শর্ত ও প্রযোজ্য আইন দেখুন। প্রোটোকল ও বিষয়বস্তুর অধিকার আলাদা। শুধু অধিকার আছে এমন কনটেন্ট ডাউনলোড ও শেয়ার করুন; সব হোস্ট সব P2P অনুমতি দেয় না।

ডেটা সেন্টার IP-তে CAPTCHA, পরিষেবা বা স্ট্রিমিং বাধা আসতে পারে। সাধারণ WireGuard সব ফিল্টার করা নেটওয়ার্কে প্রবেশ নিশ্চিত করে না। এক VPS একক ব্যর্থতার স্থান; বড় সেবাদাতার মতো বহু অঞ্চল ও বিকল্প সার্ভার নেই।

11. ডিভাইস যোগ, প্রবেশ বাতিল ও রক্ষণাবেক্ষণ

প্রতি ডিভাইসে আলাদা প্রোফাইল রাখুন। কোনো VPN প্রোফাইলের প্রবেশাধিকার বাতিল করতে SSH দিয়ে VPS-এ ঢুকে নিচের অপসারণ কমান্ড চালান; iphone-এর জায়গায় প্রোফাইলের নাম দিন। এরপর সংরক্ষিত ফাইল বা QR-এর কপি মুছুন। শুধু ডিভাইস থেকে প্রোফাইল মুছলে সার্ভারের প্রবেশাধিকার বাতিল হয় না।

Ubuntu নিরাপত্তা আপডেট দিন ও রিবুট দরকার দেখুন। সুবিধাজনক সময় রিবুট করে VPN ফিরেছে নিশ্চিত করুন। হোস্টিং অ্যাকাউন্ট ও SSH রক্ষা করুন; SSH যাচাইকরণ আলাদা ধাপে পরীক্ষিত বিকল্প লগইন রেখে বদলান।

সরানোর স্ক্রিপ্ট এই VPN থামিয়ে নিজের সেটিং ও ফায়ারওয়াল নিয়ম মোছে। SSH, UFW ও প্যাকেজ থাকে। ফরওয়ার্ডিং রিবুটে সিস্টেম নীতি প্রয়োগ হওয়া পর্যন্ত চালু থাকে। VPN মোছা VPS বিল বন্ধ করে না; দরকারি ডেটা রেখে অপ্রয়োজনীয় সার্ভার সেবাদাতার প্যানেল থেকে মুছুন।

সার্ভারে — iPhone প্রোফাইল বাতিল
python3 /root/internetspeed-wireguard/manage-client.py remove iphone
সার্ভারে — আপডেট ও রিবুটের প্রয়োজন দেখুন
apt update
apt list --upgradable
test ! -f /var/run/reboot-required || cat /var/run/reboot-required

এই কমান্ডগুলো উপলব্ধ আপডেট ও পুনরায় চালুর প্রয়োজন দেখায়, আপডেট ইনস্টল করে না। নিরাপত্তা আপডেট ও সম্পূর্ণ VPS সুরক্ষা VPN ইনস্টল থেকে আলাদাভাবে সেট করুন।

সার্ভারে — VPN সেটিং সরান (সব ক্লায়েন্ট বিচ্ছিন্ন হবে)
bash /root/internetspeed-wireguard/remove-server.sh --confirm