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

চেইন একটি ধারক। কার্নেল এতে নজর দেয় কি না তা নির্ভর করে বাস্তবায়নের উপর এবং নিয়মসমষ্টি কীভাবে এটি যুক্ত করে তার উপর।

দুই মডেল, দুই ভিন্ন সংযুক্তি

iptables-এ filter টেবিল তিনটি অন্তর্নির্মিত চেইন দেয়—INPUT, FORWARD ও OUTPUT, আর -N একটি ব্যবহারকারী-নির্ধারিত চেইন তৈরি করে যা কেবল তখনই কাজ করে যখন তাদের কোনো একটি থেকে সেখানে লাফ দেওয়া হয়। nftables ম্যানুয়াল বরং বেস চেইন সংজ্ঞায়িত করে, যারা নিজেদের ধরন, হুক ও অগ্রাধিকার ঘোষণা করে, এবং সাধারণ চেইন, যারা তা করে না। একটি বেস চেইন আপনার পছন্দের যেকোনো নাম বহন করতে পারে, আর FORWARD নামের একটি সাধারণ চেইন তার লেবেল থেকে কোনো বৈশিষ্ট্য পায় না। পুরো পার্থক্য এটিই, এবং কেবল নিয়মের লেখা দেখানো কোনো টিউটোরিয়ালে তা অদৃশ্য।

সামঞ্জস্যতার ব্যাকএন্ড কমান্ডের নাম থেকে আচরণ অনুমান না করার দ্বিতীয় কারণ যোগ করে। iptables ডকুমেন্টেশন এমন কিছু ক্রিয়াকলাপের কথা বলে যা iptables-nft-এর অধীনে ভিন্ন, তাই নেটিভ nftables, iptables-nft এবং পুরোনো নিয়মসমষ্টিকে একটির তিনটি বানান নয়, তিনটি সিস্টেম হিসেবে দেখুন।

ত্রুটিটি তার প্রকৃত প্রেক্ষাপটে পড়ুন

অনুপস্থিত টেবিল, অনুমতি ব্যর্থতা, অনুপলব্ধ কার্নেল সুবিধা এবং অনুপস্থিত নামযুক্ত চেইন—এগুলো চারটি ভিন্ন পর্যবেক্ষণ, আর কেবল একটি চেইন সম্পর্কে। টুলের সংস্করণ, অনুরোধ করা ঠিকানা পরিবার ও টেবিল, নেটওয়ার্ক নেমস্পেস এবং প্রথম নির্দিষ্ট ত্রুটি লিখে রাখুন। তারপর যাচাই করুন কোন উপাদান নিয়মসমষ্টির মালিক: ফায়ারওয়াল সেবা বা কোনো পণ্য-পরিচালিত গেটওয়ে নিজের চেইন ও ক্রম তৈরি করতে পারে। তাদের পাশে একটি নেটিভ চেইন যোগ করলে পরিচালিত নীতি অপরিবর্তিত থাকে এবং তালিকাটি আরও বিভ্রান্তিকর হয়।

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

কাউন্টার প্রমাণ করে পৌঁছানো, রায় নয়

নিয়মের কাউন্টার আপনাকে বলে একটি নিয়মে পৌঁছানো গেছে। তারা বলে না যে পরবর্তী কোনো নিয়ম কাজটি অনুমোদন করেছে, এবং তারা প্রমাণ করে না যে প্রতিটি বিকল্প পথ প্রত্যাখ্যাত হয়েছে। একটি নিরীহ অনুমোদিত প্রবাহের সময় নিয়মের ক্রম ও চেইনের সংযুক্তির সঙ্গে এগুলো পড়ুন, এবং একটি রায় নয় বরং একটি পর্যবেক্ষণ হিসেবে গণ্য করুন। বর্জন নিয়মে অশূন্য কাউন্টার মানে ট্রাফিক সেটিতে লেগেছে; যে ট্রাফিক লাগেনি সে সম্পর্কে এটি কিছু বলে না।

কার্নেলের IP ফরওয়ার্ডিং সম্পূর্ণ আলাদা একটি সেটিং। চেইন থাকা মানে ফরওয়ার্ডিং চালু হয় না, আর পরিচিত লেবেল অনুপস্থিত থাকা মানে ফরওয়ার্ডিং থেমে যায়নি।

আপনি যে প্রবাহ রক্ষা করতে চান তা বর্ণনা করুন

ডিক্যাপসুলেশনের পর একটি ক্লায়েন্ট অনুরোধ লিখুন: তার উৎস, গন্তব্য, ঠিকানা পরিবার, এবং এটি গেটওয়েতে শেষ হয় নাকি তার মধ্য দিয়ে যায়। স্থানীয় সেবার ইনপুট ও ফরওয়ার্ড করা ট্রাফিক ভিন্ন বিন্দুতে দেখা যায়, তাই তাদের ভিন্ন নিয়ম ও ভিন্ন পরীক্ষা দরকার। ব্রিজযুক্ত VPN-এর ক্ষেত্রে ব্রিজের পথও যাচাই করুন, কারণ IP স্তরের চেইন Ethernet ফ্রেম স্বয়ংক্রিয়ভাবে নিয়ন্ত্রণ করে না।

দূরবর্তী গেটওয়ে পরিবর্তনের আগে স্বতন্ত্র পুনরুদ্ধার প্রবেশাধিকার সংরক্ষণ করুন। তারপর একই নিয়মসমষ্টির অধীনে অভীষ্ট প্রবাহ ও প্রয়োজনীয় বর্জন নিশ্চিত করুন। পরিচিত নামের একটি নতুন খালি চেইন কোনো মেরামত নয়।

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

সম্পর্কিত নিবন্ধ