স্থানীয় ব্যর্থ 2 ফিল্টার সংজ্ঞায় কীভাবে * বিধি যুক্ত করবেন?


10

আমি আমার নিয়ন্ত্রণাধীন একটি সার্ভারে ডেবিয়ান দ্বারা প্যাকেজকৃত হিসাবে ব্যর্থ 2ban ইনস্টল করেছি। যেহেতু আমার আগে থেকে কিছু ব্যর্থতা রয়েছে, তাই আমি সেগুলি স্থানীয় ফিল্টার সংজ্ঞা ফাইলে রাখছি যাতে সেগুলিও বিবেচনা করা হবে। সুতরাং, আমি উদাহরণস্বরূপ /etc/fail2ban/filter.d/sshd.conf এবং /etc/fail2ban/filter.d/sshd.local দিয়ে শেষ করছি। এটি সেট আপ করার জন্য এইভাবে প্রস্তাব দেওয়া হয় এবং এটি যা ঠিক তা কাজ করার জন্য এটি ঠিকঠাকভাবে কাজ করছে বলে মনে হয়।

যাইহোক, .local ফাইলটিতে, আমি আসলে .conf ফাইল থেকে ব্যর্থতার সমস্ত তালিকাটি প্রতিস্থাপন করছি । ডকুমেন্টেশনটি এটি করার অন্য কোনও উপায় আছে বলে মনে হয় না এবং এটি কাজ করার জন্য, আমি কেবলমাত্র বিতরণ সরবরাহিত .conf ফাইলটি একটি লোকাল ফাইলে অনুলিপি করে কিছু সংযোজন করেছি।

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

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

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

কোনও সাইট-লোকাল বা হোস্ট-লোকাল ফাইলের মাধ্যমে সংশ্লিষ্ট বৈশ্বিক বা বিতরণ সরবরাহকৃত ফাইলগুলিতে কোনও পরিবর্তন না করেই ব্যর্থ 2 ফিল্টার সংজ্ঞায় ফেইলরেজেক্স এবং উপেক্ষিতের তালিকা সংশোধন করা সম্ভব ? যদি তা হয়, তবে এটি কিভাবে করবেন?

উত্তর:


4

আসুন আমরা /etc/fail2ban/filter.d/sshd.confফাইলের অংশটি একবার দেখে নিই।

[INCLUDES]

# Read common prefixes. If any customizations available -- read them from
# common.local
before = common.conf

সুতরাং আপনি ভাবতে পারেন যে আপনি এখানে যুক্ত করতে পারেন: after = sshd.localএবং এ জাতীয় ফাইলটি পড়ার জন্য; এর মধ্যে যে কোনও সেটিংস এই ফাইলে থাকা ওভাররাইড করে।

এবং এটি কাজ করে। আপনি কেবল এন্ট্রি failregexবা অন্য কোনও নির্দেশিকাতে সংশোধন করতে পারবেন না ; আপনি কেবল তাদের প্রতিস্থাপন করতে পারেন।

আপনার অনুভূতি ঠিক আছে। এটি অবশ্যই ব্যর্থ কনফিগারেশন ফাইল ফর্ম্যাটগুলির একটি ঘাটতি। আমি বিকাশকারীর কাছে অভিযোগ করব।


2

আমার একই চাহিদা ছিল এবং এটি একটি ইস্যু হিসাবে পোস্ট করেছি। লেখক এতে কাজ করছেন বলে মনে হচ্ছে: https://github.com/fail2ban/fail2ban/issues/867

একবার মার্জ হয়ে গেলে, এটি এর মতো কাজ করা উচিত (উদাহরণটি বিকাশকারীর সৌজন্যে, সার্জ ব্রেস্টার):

# filter test.conf:
[Definition]
failregex = failure test 1 (filter.d/test.conf) <HOST>

# filter test.local:
[Definition]
failregex = %(known/failregex)s
            failure test 2 (filter.d/test.local) <HOST>

এবং কারাগারে একই পদ্ধতিতে রেজেক্সস যুক্ত করা যেতে পারে ...

# jail.local
[test3known-interp]
filter=test
enabled = true
failregex = %(known/failregex)s
            failure test 3 (jail.local) <HOST>

এর ফলাফলের জন্য:

$ bin/fail2ban-client -d -c config | grep addfail
['set', 'test3known-interp', 'addfailregex', 'failure test 1 (filter.d/test.conf)]
['set', 'test3known-interp', 'addfailregex', 'failure test 2 (filter.d/test.local)]
['set', 'test3known-interp', 'addfailregex', 'failure test 3 (jail.local) <HOST>']
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.