Ipv4 এবং ipv6 iptables এর জন্য সমান্তরাল নিয়ম পরিচালনা করা?


10

আমরা সম্প্রতি আইপিভি with নিয়ে পরীক্ষা-নিরীক্ষা শুরু করেছি এবং আমরা যে প্রথম সমস্যার সাথে লড়াই করতে পারি তার মধ্যে একটি হ'ল দুটি প্রোটোকল স্ট্যাকের জন্য সম্পূর্ণ পৃথক ফায়ারওয়াল (লিনাক্স iptables / ip6ables) নিয়মের সাথে সম্পর্কিত। আমাদের ফায়ারওয়াল যুক্তিটি মূলত অনেকগুলি উদ্দেশ্য-নির্দিষ্ট নেটওয়ার্কগুলির উদারভিত্তিক (যেমন, 10.0.0.0/24 স্টাফ ওয়ার্কস্টেশন নেটওয়ার্ক, 10.1.0.0/24 ডাটাবেস নেটওয়ার্ক, 10.2.0.0/24 ওয়েব সার্ভার নেটওয়ার্ক ইত্যাদি) ), এবং আইপিভি 6 এবং আইপিভি 4 উভয়ের জন্য যুক্তি মূলত এক রকম হবে, বিভিন্ন নেটওয়ার্কের উপসর্গগুলি মডুলো করা হবে।

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

আমি বিশেষত একটি পুতুল-ভিত্তিক সমাধানে আগ্রহী হব যা নিয়মের আপেক্ষিক ক্রম (বা নিয়মের গোষ্ঠীগুলি) প্রয়োগের জন্য পুতুলের নিজস্ব নির্ভরশীলতা ব্যবস্থার ভাল ব্যবহার করে।

উত্তর:


5

ফায়ারওয়াল নির্মাতাকে আপনার যা প্রয়োজন তা হ'ল। আপনি একটি নিয়ম সেট তৈরি করতে পারেন, এটিকে "সংযুক্ত আইপিভি 4 + আইপিভি 6" হিসাবে চিহ্নিত করুন এবং একই আইনে একই আইগনে (যেমন "ডাটাবেস নেটওয়ার্ক" ইত্যাদি) নির্ধারিত আপনার আইপিভি 4 এবং আইপিভি 6 নেটওয়ার্ক স্থাপন করতে পারেন। প্রোগ্রামটি তখন দুটি পৃথক iptables কনফিগারেশন উত্পন্ন করে একটি আইপভি 4 এর জন্য এবং অন্যটি আইপিভি 6 এর জন্য। ব্যবহারকারীদের গাইড এর এই অধ্যায়টি এটি চিত্রিত করে, যদিও এটি সিসকো রাউটারগুলির অ্যাক্সেসের তালিকা উদাহরণ হিসাবে ব্যবহার করে। এটি iptables জন্য ঠিক একই কাজ করে।

http://www.fwbuilder.org/4.0/docs/users_guide5/combined-ipv4-ipv6-rule-set.html


4

আমি সম্প্রতি, আইপিভি 4 এবং আইপিভি 6 উভয়ের জন্য আইপটবেল-বিধি তৈরির মুখোমুখি হয়েছিলাম। কিছু অনুসন্ধানের পরে আমি ফিল হুইনারে আইপিভি 6 ফায়ারহোল শাখাটি ব্যবহার করে শেষ করেছি

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

দুর্ভাগ্যক্রমে অফিসিয়াল সংস্করণে আইপিভি 6 এর সমর্থন নেই। তবে ফিল হুইনারে একটি অযৌক্তিক শাখায় সমর্থন যোগ করেছেন।

কনফিগারেশনটি কেমন দেখাচ্ছে তার কয়েকটি উদাহরণ:

# allowing outgoing http and https requests for ipv4 and ipv6 (default setting when nothing is specified):
client "http https" accept

# allow incoming ssh only on ipv4
ipv4 server ssh accept

# allow incoming IMAP requests only for ipv6
ipv6 server imap accept

আপনি এই ফায়ারহোল শাখাটি এখানে চেকআউট করতে পারেন:

git clone git://repo.or.cz/fireholvi.git

অতিরিক্ত ডকুমেন্টেশনগুলি অফিসিয়াল ফায়ারএইচএল ডকুমেন্টেশনে বা আইপিভি 6 সম্পর্কিত অতিরিক্ত রেডমে পাওয়া যাবে ।

ব্যক্তিগতভাবে আমি সম্ভবত যখন কোনও প্রযোজনা মেশিনে এটি ব্যবহার করা হয় তখন সতর্ক থাকি যেখানে 100% নির্ভরযোগ্য ফায়ারওয়াল থাকা জরুরী। তবে তবুও এটি মূল্যবান।


3

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

মিডিয়াউইকির পাবলিক গিট সংগ্রহস্থলটি কনফিগারেশন নিদর্শনগুলির একটি দুর্দান্ত খনি এবং এতে একটি iptables বর্গ রয়েছে যা শুরু করার জন্য একটি ভাল বেস সরবরাহ করবে। আপনি ডিফল্ট হিসাবে একবারে উভয় স্ট্যাকের বিধি প্রয়োগ করতে এটি সম্পাদনা করতে পারেন এবং আপনি যখন আইভিভি 4 বা আইপিভি 6 নীতিতে জিনিস ভিত্তি করে থাকেন তখন বিভিন্ন বিধিগুলির জন্য পতাকা থাকতে পারে।

এর শেষে চূড়ান্ত বোনাসটি হ'ল কোনও পরিষেবার জন্য ফায়ারওয়াল বিধিগুলি পরিষেবা সংজ্ঞাতে লেখা যেতে পারে এবং যখন কোনও পরিষেবা মোতায়েন বা সরানো হয় তখন স্বয়ংক্রিয়ভাবে মোতায়েন ও সরিয়ে নেওয়া যেতে পারে।


আমি একবার দেখে নেব। আমি iptables পরিচালনার জন্য সাধারণত পুতুল-ভিত্তিক সমাধানগুলি সহ সাধারণত এতক্ষন বিরক্ত হয়েছি। বিশেষত, তারা সকলেই স্পষ্টভাবে অর্ডার প্রয়োগ করতে বলে মনে হয়, হয় খণ্ডিত ফাইলের ফাইলের নামগুলির মাধ্যমে বা পুতুলের বিধিবিধানে প্রদত্ত স্পষ্ট সূচকগুলির মাধ্যমে, পুতুলের নির্ভরতা রেজোলিউশন প্রক্রিয়াটি ব্যবহার না করে, যা আমি সত্যই চাই। যদি এখানে লিঙ্কযুক্ত সমাধানগুলি এই সমস্যাগুলি এড়ায় তবে আমি এটির জন্যই আছি।
larsks

@ আলার্কস আমি সম্মত এবং একইভাবে হতাশ হয়েছি যে একটি ভাল জেনেরিক সমাধান প্রকাশিত হয়নি ... তবে সম্ভবত এখন সময় এসেছে আমি নিজেই করেছি। পুতুল before => Resource['declared_name']কোনও সংজ্ঞা অনুযায়ী এটি ব্যবহারের অনুমতি দেবে , যাতে আপনি তাদের এমন একটি প্রয়োগ ব্যবহার করে অর্ডার করতে পারেন যা টুকরো টুকরো দিয়ে জিনিস অর্ডার করার চেষ্টা করে না। কাঠামোর জন্য অগুয়াসের একটি ভাল ব্যবহারও এই সমস্যাটিকে আটকাতে পারে - আপনার উপরের গাছের উপরে মন্তব্য করতে এবং আপনার ইচ্ছামতো তার নীচে অর্ডার করুন।
জেফ ফেরল্যান্ড

এটি সমাধান করার জন্য আমার নিজের প্রচেষ্টা খুব বেশি এগিয়ে যায়নি। আমি আপাতত যা করেছি তা হ'ল (ক) উপ-ডিরেক্টরিতে খণ্ডগুলি ইনস্টল করুন এবং তারপরে (খ) সেগুলি নির্ভরতার ক্রমে রাখার জন্য আরসির্ডার ব্যবহার করুন। এটি কাজ করে, তবে যেহেতু এটি খাঁটি ফাইলগুলি পরিচালনা করার উপর ভিত্তি করে এটি কোনও মিশ্র ipv4 / ipv6 পরিবেশে নিজেকে ধার দেয় না। সমস্যাটি সমাধানে সহায়তার জন্য আমি অউজিয়ার ব্যবহারকে সত্যই নিবিড়ভাবে দেখিনি। যদি আপনার কোনও প্রোটোটাইপ কোড থাকে তবে আমি আগ্রহী।
লারস্ক করুন

2

এখানে আমার নিজের প্রশ্নের উত্তর দেওয়া, কিন্তু আমি ভেবেছিলাম এই তথ্যটি সাধারণ আগ্রহের বিষয়:

যদিও এই প্রশ্ন আমি জুড়ে পদস্খলিত মধ্যে খুঁজছেন ufw (আনকমপ্লিকেটেড ফায়ারওয়াল) উবুন্টু ভাবেন থেকে। ইউভিডব্লিউ কনফিগারেশনে আইপিভি 6 সক্ষম করার সাথে সাথে ইউএফডাব্লু সমান্তরালভাবে iptables এবং ip6tables নিয়ম পরিচালনা করবে। এর অর্থ আপনি এরকম কিছু করতে পারেন:

# ufw allow ssh/tcp

এবং এর সাথে শেষ:

# ufw status
Status: active

To                         Action      From
--                         ------      ----
22/tcp                     ALLOW       Anywhere
22/tcp                     ALLOW       Anywhere (v6)

আইপটিবলস / ip6tables নিয়মগুলির ফলাফল যা এর মতো দেখায়:

# iptables-save | grep 'dport 22'
-A ufw-user-input -p tcp -m tcp --dport 22 -j ACCEPT
# ip6tables-save | grep 'dport 22'
-A ufw6-user-input -p tcp -m tcp --dport 22 -j ACCEPT

ইউএফডাব্লু অ্যাপ্লিকেশন প্রোফাইলগুলিও সমর্থন করে, যা আপনাকে নামী গোষ্ঠীগুলির পোর্ট তৈরি করতে দেয়। তুমি এটি করতে পারো:

# ufw allow 'WWW Full'

এবং 80 এবং 443 উভয় বন্দর খোলার সমাপ্তি (আইপিভি 4 এবং আইপিভি 6 উভয়ের জন্য)।

আমি কেবল এটি দেখতে শুরু করেছি, তবে মনে হচ্ছে এটি মোটামুটি ভালভাবে একসাথে রাখা হয়েছে।


0

যেহেতু এটি এখনও তালিকা থেকে নিখোঁজ রয়েছে: শোরওয়াল হ'ল একটি বহুল-গৃহীত এবং নিয়মিত আপডেট হওয়া বৈশিষ্ট্য সমৃদ্ধ প্যাকেট ফিল্টার কনফিগারেশন সরঞ্জাম। এটির কিছুক্ষণের জন্য আইপিভি 6 সমর্থন ছিল ।


1
আমার বোঝা যাচ্ছে যে "শোরওয়াল" কেবলমাত্র আইপিভি 4 এবং "শোরওয়াল 6" কেবল আইপিভি 6, উভয় প্রোটোকল কভার করার জন্য এনওডের দুটিই ব্যবহার করতে হবে। তারা কি একটি সাধারণ কনফিগারেশন ভাগ করতে পারে?
30:43
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.