EC2 Windows: VPN ক্লায়েন্ট, VPN সার্ভার, নাকি AWS গেটওয়ে?
একটি Windows EC2 ইনস্ট্যান্স VPN সফটওয়্যার চালাতে পারে, কিন্তু ক্লায়েন্ট, স্ব-পরিচালিত সার্ভার আর AWS গেটওয়ে আলাদা ভূমিকা, যাদের মালিকও আলাদা।
একটি দল Windows EC2 ইনস্ট্যান্সে চলা একটি অ্যাপের জন্য VPN সংযোগ চায়, মানানসই ক্লায়েন্ট সফটওয়্যার খুঁজে পায়, তা ইনস্টল করে, তারপর জিজ্ঞেস করে VPC-র বাকি অংশ কেন এটি ব্যবহার করতে পারছে না। ইনস্টল কাজ করেছে; ভূমিকাটাই কখনও ঠিক করা হয়নি। গেস্টের ভিতরে চলা সফটওয়্যার হতে পারে এমন ক্লায়েন্ট যা অন্যের নেটওয়ার্কে যোগ দেয়, এমন সার্ভার যা অন্য ক্লায়েন্ট গ্রহণ করে, অথবা AWS-পরিচালিত VPN পণ্যদুটির কোনোটিই নয়, আর প্রতিটি ভূমিকা আপনাকে আলাদা কাজ রেখে যায়।
লক্ষণ সাধারণত ভুল ভূমিকা
সাধারণ লক্ষণ হলো এমন একটি কাজ করা টানেল যা ভুল সমস্যার সমাধান করে। VM-এর ভিতরের ক্লায়েন্ট ওই VM-কে বাইরের পথ দেয়; এটি আপনার ল্যাপটপ, অফিস বা অন্য সাবনেটকে ভিতরে আসার পথ দেয় না। VM-এর ভিতরের সার্ভার অন্যদের ভিতরে আসার পথ দেয়, কিন্তু এখন লিসেনার, প্রমাণীকরণ ও ফরওয়ার্ডিং আপনার দায়িত্ব।
পরিচালিত সেবা সেবার পরিচালনা AWS-এ সরিয়ে দেয় আর ডিজাইন আপনার কাছে রাখে। Site-to-Site VPN কাস্টমার গেটওয়ে ও AWS গেটওয়ের মধ্য দিয়ে নেটওয়ার্ক সংযুক্ত করে, আর Client VPN দূরবর্তী ডিভাইসকে একটি পরিচালিত এন্ডপয়েন্ট দেয়। দুই ক্ষেত্রেই রুট, অনুমোদন নিয়ম আর পরিচয়ের উৎস আপনার কনফিগারেশন, এবং কোনও পণ্যই Windows গেস্টের ভিতরে সাধারণ উদ্দেশ্যের ক্লায়েন্ট ইনস্টল করে না।
চারটি রূপ সম্ভব, আর সারণিটি সেগুলোকে আলাদা করে কী কীসের সঙ্গে যুক্ত হয় এবং পরিচালনার ভার কে বহন করে তা দিয়ে।
| Role | What connects | Who owns the VPN software |
|---|---|---|
| Client in the Windows VM | This VM dials out into someone else's network | You, plus the software vendor |
| Server in the Windows VM | Inbound clients and sites attach to this VM | You, end to end |
| AWS Site-to-Site VPN | Two networks meet through a customer gateway and an AWS gateway | AWS operates the tunnels; you own the peer and route design |
| AWS Client VPN | User devices attach to an endpoint AWS operates | AWS operates it; you own the access rules |
পণ্যের নাম নয়, সারিটি পড়ুন: একই Windows ইনস্ট্যান্স তার ভিতরে কোন সফটওয়্যার চলছে তার উপর নির্ভর করে দুটি ভিন্ন সারিতে বসতে পারে।
VM-এর ভিতরে ক্লায়েন্ট: VM একটি নেটওয়ার্কে যোগ দেয়
একটি আউটবাউন্ড ক্লায়েন্টের জন্য কিছু ইনস্টল করার আগে Windows বিল্ড, আর্কিটেকচার ও ড্রাইভার প্রয়োজনীয়তা যাচাই করতে হয়। ক্লায়েন্ট ইনস্ট্যান্সে রুট ও DNS বদলে দেবে, যা সেখানে আগে চলা সেবাগুলোকে প্রভাবিত করতে পারে, দূরবর্তী প্রশাসনের পথসহ। অ্যাডাপ্টারের নাম ও ক্লায়েন্ট যে ইন্টারফেস মেট্রিক সেট করে তা লিখে রাখুন, কারণ নতুন ইন্টারফেস পুরনোটির উপর অগ্রাধিকার পেতে পারে। ইনস্ট্যান্স যদি SSH বা RDP-র বদলে সেশন ম্যানেজার দিয়ে পরিচালিত হয়, তাহলে ক্লায়েন্ট সংযুক্ত হওয়ার পরেও সেই পথ কাজ করে কি না নিশ্চিত করুন।
ক্লায়েন্ট চালু করার আগে ঠিক করুন এটি কোন ট্রাফিক বহন করবে। একটি ফুল টানেল প্রশাসন সেশন ধরে নিয়ে আপনাকে বাইরে আটকে দিতে পারে, আর একটি স্প্লিট টানেল ইনস্ট্যান্সকে প্রাইভেট নেটওয়ার্কে পৌঁছাতে দিয়ে তার বাকি ট্রাফিক অন্য পথে নিয়ে যেতে পারে। দ্বিতীয় প্রশাসন পথ হাতে রেখে পরীক্ষা করুন, এবং ক্লায়েন্ট যে রুট ইনস্টল করে তা লিখে রাখুন যাতে পরে পরিবর্তন ব্যাখ্যা করা যায়।
VM-এর ভিতরে সার্ভার: অন্য ক্লায়েন্টরা এতে যোগ দেয়
স্ব-পরিচালিত সার্ভারের ক্ষেত্রে লিসেনার, সার্টিফিকেট বা কী উপাদান, ব্যবহারকারী ডাটাবেস আর ফরওয়ার্ডিং নিয়ম আপনার। সার্ভার যদি অন্য ক্লায়েন্টের জন্য ট্রাফিক ফরওয়ার্ড করে, ইনস্ট্যান্সটি একটি রাউটার হয়ে যায়, আর এর জন্য গেস্ট-স্তরের ফরওয়ার্ডিংয়ের সঙ্গে AWS-স্তরের রুট ও সিকিউরিটি গ্রুপ পরিবর্তন দরকার।
গেস্ট থেকে লিসেনার পরীক্ষা করুন, আবার অন্য সাবনেট থেকে, তারপর ইনস্ট্যান্স যে হোস্টের জন্য ফরওয়ার্ড করে তা পরীক্ষা করুন। সুস্থ স্থানীয় সেবা ফরওয়ার্ড করা পথ সম্পর্কে কিছুই প্রমাণ করে না, তাই দুটি ফলাফলই পরিবর্তন নোটে লিখুন।
পরিচালিত গেটওয়ে সেবা রাখে, আপনার অ্যাক্সেস ডিজাইন নয়
AWS Site-to-Site VPN কাস্টমার-গেটওয়ে ও AWS-গেটওয়ে টানেল ভূমিকা নথিভুক্ত করে, আর সেই সংযোগ কিনলে প্রতিটি রিমোট-অ্যাক্সেস ডিজাইন প্রতিস্থাপিত হয় না। Client VPN ক্লায়েন্ট পারসোনাসহ একটি পরিচালিত এন্ডপয়েন্ট নথিভুক্ত করে, অথচ অনুমোদন নিয়ম ও লক্ষ্য রুট আপনারই থাকে। AWS এন্ডপয়েন্ট ও তার সার্টিফিকেট চালু রাখে; কে কোন অ্যাপে পৌঁছাতে পারবে তা এখনও এমন অনুমোদন নিয়ম যা আপনি লেখেন ও রক্ষণাবেক্ষণ করেন।
পাঁচটি অক্ষে পণ্যগুলোর মধ্যে বেছে নিন: প্রতিটি কোন ভূমিকা পালন করে, কোন প্রোটোকল গ্রহণ করে, কোন পরিচয় উৎস আশা করে, ট্রাফিক কীভাবে ফরওয়ার্ড হয় এবং প্রাপ্যতা কীভাবে দেওয়া হয়। ফোরাম থ্রেডে উদ্ধৃত কোনও একক থ্রুপুট সংখ্যা উপেক্ষা করুন, কারণ প্রকাশিত ক্ষমতা সেবার সঙ্গে বদলায়। আর ধরে নেবেন না যে পরিচালিত টানেল জোড়া কোনও সাধারণ গেস্ট ক্লায়েন্টের আচরণ বদলে দেয়।
পণ্যের আগে ভূমিকা বাছুন
একটি বাক্য লিখুন যা দিকটি নাম দেয়: এই VM একটি নেটওয়ার্কে যোগ দেয়, এই VM ক্লায়েন্ট গ্রহণ করে, বা একটি AWS গেটওয়ে নির্দিষ্ট নেটওয়ার্ক সংযুক্ত করে।
সেই বাক্যই পণ্যের সংক্ষিপ্ত তালিকা, সফটওয়্যারের মালিক আর যে ব্যর্থতার ধরন আপনি ডিবাগ করবেন তা ঠিক করে। প্রয়োজন যদি দূরবর্তী ব্যবহারকারীদের একটি অ্যাপে পৌঁছানো হয়, তবে অ্যাপের VM-এ ইনস্টল করা ক্লায়েন্ট ভুল রূপ। প্রয়োজন যদি একটি VM-এর সহযোগী নেটওয়ার্কে পৌঁছানো হয়, তবে পরিচালিত সাইট-থেকে-সাইট গেটওয়ে কাজের প্রয়োজনের চেয়ে বেশি যন্ত্র। দুটি উত্তরই বৈধ; কেবল একটি আপনার লেখা বাক্যের সঙ্গে মেলে।