একটি ইন্টারফেসে rp_filter অক্ষম করা হচ্ছে


9

আমার একটি উবুন্টু 16.04 সার্ভার রয়েছে যা একাধিক (ভিএলএএন) ইন্টারফেসের মাধ্যমে রাউটার হিসাবে কাজ করছে। ডিফল্টরূপে rp_filter(বিপরীত পাথ ফিল্টারিং) সমস্ত ইন্টারফেসের জন্য সক্ষম হয়। আমি এটি সেভাবে রাখতে চাই, তবে ঠিক একটি ইন্টারফেসের জন্য ব্যতিক্রম করব। (এই ইন্টারফেসের প্যাকেটের কোনও সোর্স আইপি ঠিকানা থাকতে দেওয়া উচিত যা এই ইন্টারফেসের কোনও রাউটিং গন্তব্য ঠিকানার সাথে মিলে না))

ধরা যাক এই ইন্টারফেসটির নাম রয়েছে ens20.4, এর ভ্লান-কাঁচা-ডিভাইস ens20এবং গন্তব্য ইন্টারফেসের (প্যাকেট প্রবাহের পরীক্ষার জন্য) নাম দেওয়া হয়েছে ens20.2(যদিও এটি কোনও গন্তব্য ইন্টারফেসের জন্য কাজ করা উচিত)।

আমি সাফল্য ছাড়াই শুধুমাত্র rp_filterসম্পত্তি সেট করার চেষ্টা করেছি ens20.4:

echo 0 > /proc/sys/net/ipv4/conf/ens20.4/rp_filter

সুতরাং, পরীক্ষার উদ্দেশ্যে, আমি rp_filterভ্লান-কাঁচা ডিভাইস এবং পরীক্ষার গন্তব্য ইন্টারফেসের জন্যও অক্ষম করেছি :

echo 0 > /proc/sys/net/ipv4/conf/ens20/rp_filter
echo 0 > /proc/sys/net/ipv4/conf/ens20.2/rp_filter

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

echo 0 > /proc/sys/net/ipv4/conf/all/rp_filter

তবে, আমি এখনও অন্য সমস্ত ইন্টারফেসের জন্য বিপরীত পথ ফিল্টারিং রাখতে চাই - আমি কী মিস করছি?


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

উত্তর:


12

সেখানে তথ্য: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git/tree/Docamentation/networking/ip-sysctl.txt?h=v4.9#n1090

আপনার প্রচেষ্টাটি ব্যাখ্যা করবে এমন সর্বশেষ বাক্যটি নোট করুন:

কনফারেন্স / {সমস্ত, ইন্টারফেস} / আরপি_ফিল্টার থেকে সর্বাধিক মান used ইন্টারফেস} এ উত্স বৈধকরণ করার সময় ব্যবহৃত হয়}

সুতরাং এটি কাজ করা উচিত:

for i in /proc/sys/net/ipv4/conf/*/rp_filter; do
    echo 1 > "$i"
done
echo 0 > /proc/sys/net/ipv4/conf/all/rp_filter
echo 0 > /proc/sys/net/ipv4/conf/ens20.4/rp_filter

এখন সর্বাধিক (কনফিড /, সব, ens20.4} / আরপি_ফিল্টার == 0: কোনও উত্সের বৈধতা নেই Just কেবলমাত্র ডাবল-পরীক্ষা করে দেখুন যে অন্যান্য ইন্টারফেসগুলি এখনও সুরক্ষিত আছে।

আপনি মান 2 দিয়ে "আলগা" আরপিএফও পরীক্ষা করতে পারেন 2 যদি সাধারণত প্যাকেটটি অন্য কোনও ইন্টারফেস দ্বারা চালিত করা হয় তবে এটি কোনও বৈধতার চেয়ে ভাল।


2
আপনাকে ধন্যবাদ, যে এটি খুব ভাল ব্যাখ্যা করে! "আলগা" আরপিএফ পরামর্শের জন্য বিশেষ ধন্যবাদ, যা সত্যই আমার সেটআপের জন্য সেরা পছন্দ। সমস্ত / আরপি_ফিল্টার 0 তে সেট করাও অপ্রয়োজনীয় করে তোলে যা সবচেয়ে স্বাগত welcome
সাইবারান
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.