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

পোর্ট তালিকা কেন নীতি নয়

পোর্ট পরিবহন স্তরের ধারণা, এবং কয়েকটি টানেল প্রযুক্তি এগুলো একেবারেই ব্যবহার করে না। অন্যরা ইচ্ছাকৃতভাবে সাধারণ ওয়েব ট্রাফিকের সঙ্গে একটি পোর্ট ভাগ করে, কারণ ওই পোর্টটিই নিশ্চিতভাবে পার হয়। তাই ঐতিহাসিক পোর্টে নির্ভর নিয়ম মুষ্টিমেয় বাস্তবায়ন গোনে, আচরণের শ্রেণি নয়। এটি দ্রুত পুরোনোও হয়: কোনো প্রদানকারী ডিফল্ট বদলালেই তালিকা অতীত বর্ণনা করতে শুরু করে।

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

প্রোটোকল নম্বর ও পোর্ট আলাদা নামক্ষেত্র

GRE-কে IP প্রোটোকল নম্বর 47 দেওয়া হয়েছে। এটি TCP পোর্ট 47 নয় এবং UDP পোর্ট 47 নয়, এবং পোর্টের জন্য লেখা ফিল্টার এটিকে স্পর্শ করে না। ESP ও AH একই বৈশিষ্ট্য নিয়ে প্রোটোকল নম্বর 50 ও 51-এ আছে। এনক্যাপসুলেটেড ট্রাফিক অনুমোদিত সংযোগের ভিতরেও লুকাতে পারে, তাই কোনো শ্রেণি বা স্বাক্ষর সাহায্য করতে পারে, কিন্তু একা কখনো উদ্দেশ্য প্রমাণ করে না। বিশ্বাস ও কভারেজ নির্দিষ্ট পণ্য ও সংস্করণের, ধারণার নয়।

nft list ruleset | grep -nE 'gre|esp|ah|47|50|51'
cat /proc/net/protocols | head -20
ss -tn state established '( dport = :443 )'

প্রথম কমান্ড দেখায় আপনি আসলে কী লিখেছেন; দ্বিতীয়টি স্ট্যাক যে প্রোটোকল টেবিল জানে তা দেখায়; তৃতীয়টি দেখায় এই মুহূর্তে কতগুলি সেশন ওয়েব পোর্ট ব্যবহার করছে। এর কোনোটিই বলে না সেই সেশনগুলি কীসের জন্য। TLS বাধা একটি আলাদা সিদ্ধান্ত যার বিশ্বাস, গোপনীয়তা ও ক্লায়েন্ট সামঞ্জস্যের নিজস্ব খরচ আছে। এটি নামযুক্ত গন্তব্য প্রত্যাখ্যানের পূর্বশর্ত নয়, এবং টানেল চেনার নিশ্চয়তাও নয়।

ডিভাইসের যে ক্ষমতা আছে তা নিয়ন্ত্রণ করুন

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

এর অর্থ হল অনুমোদিত সংযুক্তি অন্য ডিভাইসের জন্য পাঠানোর সীমাহীন অনুমতির বদলে নিজের ঘোষিত ভূমিকা পায়, এবং এর অর্থ হল ইনস্টলেশন ও নেটওয়ার্ক প্রশাসনের অধিকার নীতির অংশ, পরে ভাবা কিছু নয়।

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

conntrack -L | awk '{print $1, $4, $5}' | sort | uniq -c | sort -rn | head
ip -br addr show
ip route show default

দীর্ঘস্থায়ী এনক্রিপ্টেড সেশন বা বড় বাইট সংখ্যা অপব্যবহারের প্রমাণ নয়: ব্যাকআপ, সহায়তা সরঞ্জাম ও সাইট লিঙ্ক একই রকম দেখায়। সংগ্রহ তদন্তের মধ্যে সীমিত রাখুন এবং যা পাবেন তা তার মালিকানাধীন প্রক্রিয়ার অধীনে রাখুন।

ব্যতিক্রমগুলি স্পষ্ট করুন

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

যখন ব্যবসা সত্যিই একটি বিস্তৃত বাহ্যিক পরিষেবার অনুমতি দেয়, তখন সেই পরিষেবা যে ক্ষমতা দেয় তা মূল্যায়ন করুন, গন্তব্যের লেবেল প্রতিটি ব্যবহার গ্রহণযোগ্য করে দেয় বলে ধরে নেওয়ার বদলে।

পর্যালোচনাহীন ব্যতিক্রম টিকিট নম্বরযুক্ত একটি ছিদ্র। নাম, কারণ ও পর্যালোচনার তারিখযুক্ত ব্যতিক্রম একটি সিদ্ধান্ত।

স্লোগান নয়, লিখিত পরিকল্পনা দিয়ে গ্রহণ করুন

গ্রহণের দুটি অর্ধ আছে: অনুমোদিত কাজ এখনও সফল হয়, এবং নির্দিষ্ট নিষিদ্ধ ক্ষেত্রে অনুমোদিত পরীক্ষায় ব্যর্থ হয়। দুটোই পরিবর্তনের আগে লিখতে হবে এবং পরে পুনরাবৃত্তি করতে হবে।

সেই পর্যালোচনায় এন্ডপয়েন্ট ও নীতি পরিবর্তন অন্তর্ভুক্ত করুন, কারণ ল্যাপটপে যোগ করা একটি রুট প্রান্তে নিখুঁতভাবে কাজ করা ফিল্টার বাতিল করতে পারে।

ফলাফল একটি মালিকানাধীন নির্গমন সীমা যার সঙ্গে অবশিষ্ট ঝুঁকির জানা তালিকা থাকে। কয়েকটি বন্ধ পোর্ট অননুমোদিত VPN ব্যবহার শেষ করেছে বলে দাবি করা তা নয়।

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