এই নিবন্ধে, আমি আপনাকে লিনাক্স সার্ভারে একটি WireGuard VPN সেট আপ করার প্রক্রিয়ার মাধ্যমে ধাপে ধাপে গাইড করতে যাচ্ছি। এটি আপনাকে কফি শপের মতো অনিরাপদ স্থান থেকে নিরাপদ ইন্টারনেট সংস্থানগুলি অ্যাক্সেস করতে দেবে৷
কিন্তু কেন একটি VPN? এবং কেন ওয়্যারগার্ড?
যখনই আপনি দূরবর্তী অবস্থান থেকে আপনার ব্যাঙ্কের ওয়েবসাইটের সাথে সংযোগ করেন, আপনি নেটওয়ার্কে শুনছেন এমন কারও কাছে পাসওয়ার্ড এবং অন্যান্য সংবেদনশীল তথ্য প্রকাশ করার ঝুঁকি রয়েছে৷
আশা করি, অবশ্যই, ব্যাঙ্কের ওয়েবসাইট নিজেই এনক্রিপ্ট করা হবে, যার মানে হল যে ব্যাঙ্ক এবং আপনার পিসি বা স্মার্টফোনের মধ্যে প্রবাহিত মূল ডেটা পথের ধারে শোনা যে কেউ পাঠযোগ্য হবে না।
এবং যদি আপনি আপনার বাসা বা অফিস থেকে সংযোগ করছেন তাহলে কি হবে? একটি VPN এর সাথে, আপনি যুক্তিসঙ্গতভাবে নিশ্চিত হতে পারেন যে নিয়মিত এনক্রিপশন দ্বারা অস্পষ্ট করা ডেটা উপাদানগুলি ভুল লোকেরা দেখতে পাবে না৷
কিন্তু যদি আপনি একটি বিমানবন্দর বা কফি শপে একটি পাবলিক ওয়াইফাই রাউটারের মাধ্যমে সংযোগ করছেন? আপনি কি নিশ্চিত যে নেটওয়ার্কের সাথে আপোস করা হয়নি বা হ্যাকাররা অলক্ষ্যে দেখছে না?
এই খুব বাস্তব হুমকি মোকাবেলা করার জন্য, আপনি আপনার ল্যাপটপ বা ফোনে একটি VPN সার্ভারে একটি সংযোগ খুলতে পারেন। এইভাবে আপনার সমস্ত ডেটা স্থানান্তর একটি ভার্চুয়াল টানেলের মাধ্যমে সঞ্চালিত হয়। আপনার সংবেদনশীল সংযোগের প্রতিটি অংশ আপনি যে স্থানীয় নেটওয়ার্ক থেকে সংযোগ করছেন তাতে যে কেউ অদৃশ্য থাকবে৷
ওয়্যারগার্ড হল ওপেন সোর্স ভিপিএন জগতের তিনটি বড় প্লেয়ারের মধ্যে নতুন, বাকি দুটি হল IPsec এবং OpenVPN৷
ওয়্যারগার্ড অন্যদের তুলনায় সহজ, দ্রুত এবং আরও নমনীয় হতে তৈরি করা হয়েছে। এটি ব্লকের নতুন বাচ্চা, কিন্তু এটি দ্রুত কিছু গুরুত্বপূর্ণ বন্ধুকে তুলে নিয়েছে। লিনাক্স স্রষ্টা লিনাস টরভাল্ডসের অনুরোধে সম্প্রতি ওয়্যারগার্ডকে লিনাক্স কার্নেলে অন্তর্ভুক্ত করা হয়েছে।
আপনার VPN সার্ভার কোথায় তৈরি করবেন?
অবশ্যই, আপনি সবসময় বাড়িতে একটি VPN সার্ভার একসাথে রাখতে পারেন এবং আপনার ISP এর রাউটারের মাধ্যমে পোর্ট ফরওয়ার্ডিং কনফিগার করতে পারেন। কিন্তু এটি প্রায়শই ক্লাউডে এটি চালানোর জন্য আরও ব্যবহারিক অর্থ তৈরি করবে।
চিন্তা করবেন না। আমি আপনাকে আশ্বাস দিচ্ছি যে এই উপায়টি একটি দ্রুত এবং ব্যথাহীন "এটি সেট করুন এবং এটি ভুলে যান" কনফিগারেশনের অনেক কাছাকাছি হবে। এবং এটা খুবই অসম্ভাব্য যে আপনি বাড়িতে যা কিছু তৈরি করবেন তা AWS-এর মতো বড় ক্লাউড প্রদানকারীর দ্বারা প্রদত্ত অবকাঠামোর মতো নির্ভরযোগ্য – বা নিরাপদ – হবে।
যাইহোক, যদি আপনার বাড়ির চারপাশে একটি পেশাদারভাবে সুরক্ষিত ইন্টারনেট সার্ভার পড়ে থাকে (অথবা আপনি একটি অতিরিক্ত রাস্পবেরি পাই নিয়ে একটি সুযোগ নিতে ইচ্ছুক হন যা আপনি পড়ে আছেন) তবে এটি ঠিক একইভাবে কাজ করবে।
ওয়্যারগার্ডকে ধন্যবাদ, ক্লাউডে হোক বা ফিজিক্যাল সার্ভারে, নিজের বাড়িতে ভিপিএন তৈরি করা কখনোই সহজ ছিল না। পুরো সেটআপটি আধা ঘন্টার মধ্যে করা যেতে পারে।
প্রস্তুত হচ্ছে
আপনার ক্লাউড ইন্সট্যান্স আপ এবং চালু করুন, সম্ভবত এখান থেকে একটি টিউটোরিয়াল ব্যবহার করে৷
৷51820 পোর্ট নিশ্চিত করুন আপনার সার্ভারে উন্মুক্ত। এটি নিরাপত্তা গোষ্ঠীর সাথে করা হয়৷ AWS এবং একটি VPC নেটওয়ার্ক ফায়ারওয়াল-এ Google ক্লাউডে৷
৷আধুনিক ডেবিয়ান/উবুন্টু রিলিজের সাথে, ওয়্যারগার্ড এইভাবে প্যাকেজ পরিচালকদের থেকে ইনস্টল করার জন্য উপলব্ধ:
sudo apt install wireguard
অথবা yum এর সাথে, EPEL সংগ্রহস্থল থেকে:
sudo yum install kmod-wireguard wireguard-tools
প্রথম ধাপ:এনক্রিপশন কী তৈরি করুন
সার্ভারের যেকোনো ডিরেক্টরিতে যেখানে আপনি সর্বজনীন এবং ব্যক্তিগত কী সমন্বিত ফাইল তৈরি করতে চান, এই কমান্ডটি ব্যবহার করুন:
umask 077; wg genkey | tee privatekey | wg pubkey > publickey
একটি ভিন্ন ডিরেক্টরিতে বা আপনার স্থানীয় মেশিনে ক্লায়েন্টের জন্য একই কাজ করুন। শুধু নিশ্চিত করুন যে আপনি পরে বিভিন্ন কী সেটের মধ্যে পার্থক্য করতে সক্ষম হবেন।
দ্রুত সেটআপের জন্য আপনি একটি অনলাইন কী জেনারেটর ব্যবহার করতে পারেন। তবে আমি প্রথমবার ম্যানুয়ালি এটি করার পরামর্শ দিই। নিশ্চিত করুন যে ফাইলগুলি কী হ্যাশ দিয়ে তৈরি করা হয়েছে কারণ আপনি পরবর্তী ধাপে সেগুলি ব্যবহার করবেন৷
দুই ধাপ:সার্ভার কনফিগারেশন তৈরি করুন
আপনাকে একটি .conf তৈরি করতে হবে /etc/wireguard ডিরেক্টরিতে ফাইল করুন। এমনকি আপনি বিভিন্ন পোর্ট ব্যবহার করে একই সময়ে একাধিক VPN চালাতে পারেন।
নতুন ফাইলে নিম্নলিখিত কোডটি পেস্ট করুন:
sudo nano /etc/wireguard/wg0.conf
[Interface]
Address = 10.0.0.1/24
ListenPort = 51820
# use the server PrivateKey
PrivateKey = GPAtRSECRETLONGPRIVATEKEYB0J/GDbNQg6V0s=
# you can have as many peers as you wish
# remember to replace the values below with the PublicKey of the peer
[Peer]
PublicKey = NwsVexamples4sBURwFl6HVchellou6o63r2B0s=
AllowedIPs = 10.0.0.2/32
[Peer]
PublicKey = NwsexampleNbw+s4sBnotFl6HrealxExu6o63r2B0s=
AllowedIPs = 10.0.0.3/32
ভিপিএন চালু করুন
sudo systemctl start wg-quick@wg0
আপনার যদি সিস্টেমড না থাকে (আপনার উদাহরণটি অ্যামাজন লিনাক্স চালালে এটি সত্য হতে পারে) আপনি sudo wg-quick up wg0
ব্যবহার করতে পারেন .
ধাপ তিন:ক্লায়েন্ট কনফিগারেশন তৈরি করুন
প্রথমে আপনার ক্লায়েন্ট মেশিনে ওয়্যারগার্ড ইনস্টল করুন, হয় একইভাবে লিনাক্সে বা অ্যাপ স্টোরের মাধ্যমে আপনি যদি Windows, macOS, Android বা iPhone ব্যবহার করেন।
আপনি যদি প্রথম ধাপে একটি অনলাইন-কী-জেনারেটর বা QR স্ক্রিপ্ট ব্যবহার করেন, তাহলে আপনি QR কোডের একটি ছবি তুলে আপনার ফোন সংযোগ করতে পারেন।
একবার ক্লায়েন্টে ওয়্যারগার্ড ইনস্টল হয়ে গেলে, এই মানগুলি ব্যবহার করে এটি কনফিগার করুন:
# Replace the PrivateKey value with the one from your client interface
[Interface]
Address = 10.0.0.2/24
ListenPort = 51820
PrivateKey = CNNjIexAmple4A6NMkrDt4iyKeYD1BxSstzer49b8EI=
#use the VPN server's PublicKey and the Endpoint IP of the cloud instance
[Peer]
PublicKey = WbdIAnOTher1208Uwu9P17ckEYxI1OFAPZ8Ftu9kRQw=
AllowedIPs = 0.0.0.0/0
Endpoint = 34.69.57.99:51820
অনেক ঐচ্ছিক অ্যাড-অন রয়েছে যা আপনি আপনার ব্যবহারের ক্ষেত্রের উপর নির্ভর করে চাইতে পারেন, যেমন নিরাপত্তার অতিরিক্ত স্তরের জন্য DNS বা প্রি-শেয়ারড কী নির্দিষ্ট করা।
আপনি যদি লিনাক্সে থাকেন বা অন্য সিস্টেমে নিজেই অ্যাপ্লিকেশনের মাধ্যমে সার্ভারের মতো ক্লায়েন্ট স্টার্ট আপ করুন৷
আপনার VPN পরীক্ষা করুন
আপনার সর্বজনীন IP ঠিকানা আবিষ্কার করতে আপনার ব্রাউজারে "my ip" টাইপ করুন। VPN শুরু করার আগে আপনার কম্পিউটারে যে ঠিকানাটি ছিল তার থেকে যদি আপনি যে আইপি পান তা ভিন্ন হয়, তাহলে আপনি সফল!
(এবং যদি আপনি এটি আগে কি ছিল তা ভুলে গেছেন, sudo systemctl stop wg-quick@wg0
চেষ্টা করুন , পরীক্ষা করে আবার শুরু করা হচ্ছে।)
সমস্যা সমাধানের নির্দেশিকা
নিশ্চিত করুন যে আপনার সার্ভারটি আইপি ফরওয়ার্ডিংয়ের জন্য কনফিগার করা আছে। /etc/sysctl.conf ফাইলটি পরীক্ষা করুন, অথবা চালান:
echo 1 > /proc/sys/net/ipv4/ip_forward
আপনার সংযোগ প্রায়ই মারা যায়? এটিকে ক্লায়েন্ট কনফিগারেশনের পিয়ার বিভাগে যুক্ত করুন:
PersistentKeepalive = 25
নিশ্চিত না কেন এটি কাজ করছে না? sudo tcpdump -i eth
চেষ্টা করুন ক্লায়েন্ট ব্যবহার করার চেষ্টা করার সময় সার্ভারে।
এই নির্দেশিকাটি পড়ার জন্য ধন্যবাদ৷
আপনি যদি আরও গভীরে যেতে চান, ওয়্যারগার্ড ভিপিএন-এ আমার অর্থ প্রদানের ম্যানিং কোর্সটি নেওয়ার কথা বিবেচনা করুন৷