কীভাবে AWS দিয়ে Site-to-Site VPN টানেল শুরু করাবেন
Startup action ও DPD timeout action দুটি আলাদা প্রশ্নের উত্তর দেয়। AWS-কে উদ্যোগ নিতে বাধ্য করে এমনটি সেট করুন, তারপর peer address ও অ্যাপের রুট যাচাই করুন।
ডিফল্টভাবে একটি AWS Site-to-Site VPN অপেক্ষা করে যতক্ষণ customer gateway নেগোশিয়েশন শুরু না করে। সেই ডিফল্ট একটি সেটিং, কোনো আইন নয়, এবং সেটিংটির নাম Startup action। এটি ব্যবহার করার আগে দুটি প্রশ্ন আলাদা করুন যেগুলো নিয়মিত মিশে যায়: টানেল কে স্থাপন করে, এবং আপনার প্রয়োজনীয় প্যাকেটগুলোর এর ভেতর দিয়ে কোনো রুট আছে কি না। কেবল প্রথমটিই টানেল অপশনে থাকে।
শুরুর অ্যাকশনকে DPD টাইমআউট অ্যাকশন থেকে আলাদা করুন
প্রতি টানেলের দুটি অপশন দুটি ভিন্ন ইভেন্ট নিয়ন্ত্রণ করে, এবং একটি সেট করলে অন্যটি সম্পর্কে কিছুই বোঝায় না।
| Event | Option | Useful values |
|---|---|---|
| A new or modified VPN connection needs a tunnel | Startup action | add waits for the peer; start asks AWS to initiate |
| Dead peer detection times out | DPD timeout action | clear ends the session, restart reinitiates, none does nothing |
AWS যদি নতুন বা পরিবর্তিত টানেল তোলা উচিত হয়, তবে বেছে নিন start. AWS যদি DPD টাইমআউটের পর নেগোশিয়েশনও পুনরায় শুরু করতে হয়, তবে সেই ইভেন্টের জন্য আলাদাভাবে restart কনফিগার করুন। কোনোটিই অ্যাপ্লিকেশনের রিট্রাই নীতি নয়, এবং কোনোটিই rekey ইন্টারভাল নয়: DPD দেখে peer জীবিত কি না, আর rekeying একটি চালু টানেলে security associations প্রতিস্থাপন করে।
টানেল এখনো up দেখালেও যে অ্যাপ্লিকেশনের টাইমআউট হয়, তার সমস্যা ডেটা-পাথে। DPD টাইমার কমানো এটি ঠিক করবে না, এবং পরে ব্যাখ্যা করতে হবে এমন অস্থিরতাও যোগ করতে পারে।
AWS-এর কাছে নেগোশিয়েশন পাঠানোর জায়গা আছে কি না যাচাই করুন
AWS-এর দিক থেকে উদ্যোগ শুধু IKEv2-তে সম্ভব, আর প্রস্তাব কোথায় পাঠাতে হবে জানতে AWS-এর customer gateway-এর পাবলিক ঠিকানা দরকার। যে ক্ষেত্রে সমস্যা হয় তা হলো ঠিকানা ছাড়া তৈরি করা সার্টিফিকেট-অথেনটিকেটেড customer gateway রিসোর্স: AWS-এর ডকুমেন্টেশন বলে ঠিকানাসহ নতুন customer gateway রিসোর্স তৈরি করে পরে VPN সংযোগটি তার দিকে ঘুরিয়ে দিতে।
সার্টিফিকেট প্রমাণ করে peer কে। এটি AWS-কে বলে না peer কোথায়, আর এগুলো দুটি ভিন্ন প্রয়োজন। তাই সমাধান নতুন সার্টিফিকেট নয়, নতুন customer gateway রিসোর্স। সার্টিফিকেট বদলালে AWS-এর একই গন্তব্য অনুপস্থিতই থাকে।
customer gateway যদি NAT-এর পেছনে থাকে, তবে AWS-এর একটি কনফিগার করা responder identity-ও দরকার, IDr, যাতে peer-এর পরিচয় ডিভাইস যা আশা করে তার সঙ্গে মেলে। যে অপশনটি এইমাত্র বদলেছেন তাকে দোষ দেওয়ার আগে সেই মান এবং যে ফায়ারওয়াল পথ IKE ট্রাফিক গ্রহণ করে তা যাচাই করুন। বেছে নেওয়া start দিয়ে অপ্রাপ্য বা ভুলভাবে চিহ্নিত peer-কে প্রস্তাব গ্রহণ করতে বাধ্য করা যায় না।
পরিবর্তনটি একটি টানেলে প্রয়োগ করুন এবং বিরতির আশা রাখুন
একটি VPN সংযোগের দুটি টানেল থাকে স্বতন্ত্র অপশনসহ, তাই বাইরের ঠিকানা দেখে নিশ্চিত করুন কোনটি সম্পাদনা করছেন। AWS একবারে একটিমাত্র টানেল পরিবর্তনের অনুমতি দেয়, এবং নির্বাচিত টানেলের ওপর সংযোগ কয়েক মিনিটের জন্য বিচ্ছিন্ন হতে পারে।
- Site-to-Site VPN সংযোগটি নির্বাচন করুন এবং Modify VPN tunnel options খুলুন।
- বাইরের IP ঠিকানা দিয়ে টানেলটি বাছুন এবং তার IKE সংস্করণ ও customer gateway রিসোর্স যাচাই করুন।
- আপনি যে শুরুর ও DPD অ্যাকশন সত্যিই চান তা সেট করুন, তারপর নিজের নিয়ন্ত্রণাধীন একটি উইন্ডোতে সংরক্ষণ করুন।
- পরিবর্তিত টানেলটি প্রতিষ্ঠিত হচ্ছে কি না নিশ্চিত করুন, এবং পরের পরিবর্তনের আগে অন্য টানেল ও রাউটিং পরীক্ষা করুন।
রক্ষণাবেক্ষণের আগে একটি আচরণ মনোযোগ দাবি করে। AWS উদ্যোগ সক্রিয় থাকলে কোনো টাইমআউট নেই: টানেল ওঠা পর্যন্ত AWS চেষ্টা চালিয়ে যায়, এবং customer gateway delete-SA বার্তা পাঠালে আবার শুরু করে। আপনি যদি peer ইচ্ছাকৃতভাবে বন্ধ করেন, AWS ঠুকতে থাকবে, আর peer-এর লগে তা দেখা যাবে।
কেবল টানেলের অবস্থা নয়, অ্যাপ্লিকেশনের পথ যাচাই করুন
টানেল up দেখানো মানে কাজ করা রিকোয়েস্ট নয়। VPC-তে সংযুক্ত Lambda ফাংশনের এখনো দরকার কাস্টমারের প্রিফিক্সে একটি subnet রাউট, ট্রাফিক অনুমোদনকারী security group ও network ACL নিয়ম, সঠিক ঠিকানা ফেরানো নাম-রিজলিউশন, এবং কাস্টমারের দিকে ফেরার পথ।
অ্যাপ্লিকেশনের প্রেক্ষাপট থেকে একবার সত্যিকারের রিকোয়েস্ট দিয়ে পরীক্ষা করুন, ব্যর্থ হলে flow logs পড়ুন। AWS উদ্যোগ বন্ধ থাকলে এবং নিষ্ক্রিয় টানেলকে প্যাকেট দিয়ে দাঁড়িয়ে থাকতে হলে keepalive ট্রাফিক বৈধ বিকল্প, তবে তা এমন একটি মনিটরিং সিদ্ধান্ত হওয়া উচিত যার নাম আপনি বলতে পারেন, ফাংশনের গায়ে জোড়া দেওয়া অব্যাখ্যাত ping লুপ নয়।
আগে ঠিক করুন টানেল কে স্থাপন করবে, তারপর বাকি ব্যর্থতা তার নিজের স্তরে নির্ণয় করুন। AWS উদ্যোগের ডকুমেন্টেশন কনসোলের ইঙ্গিতের চেয়ে বেশি বিস্তারিতভাবে ঠিকানা, পরিচয় ও রিট্রাইয়ের প্রয়োজনীয়তা কভার করে।