fail2ban দিয়ে কীভাবে আপনার লিনাক্স সার্ভার সুরক্ষিত করবেন

একটি উবুন্টু-স্টাইল লিনাক্স ল্যাপটপে চলমান একটি স্টাইলাইজড টার্মিনাল উইন্ডো।

ফাতমাওয়াতি আহমাদ জায়েনুরি/শাটারস্টক

|_+_| এর সাথে, আপনার লিনাক্স কম্পিউটার স্বয়ংক্রিয়ভাবে এমন আইপি ঠিকানাগুলিকে ব্লক করে যেগুলির সংযোগ ব্যর্থ হয়েছে৷ এটা স্ব-নিয়ন্ত্রিত নিরাপত্তা! আমরা আপনাকে দেখাব কিভাবে এটি ব্যবহার করতে হয়।

নিরাপত্তা নিরাপত্তা নিরাপত্তা

উইন্ডসরের ডাচেস, ওয়ালিস সিম্পসন, একবার বিখ্যাতভাবে বলেছিলেন, আপনি কখনই খুব ধনী বা খুব পাতলা হতে পারবেন না। আমরা আমাদের আধুনিক, আন্তঃসংযুক্ত বিশ্বের জন্য এটি আপডেট করেছি: আপনি কখনই খুব সতর্ক বা খুব নিরাপদ হতে পারবেন না।





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

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



কার্যত এটি অর্জন করার একমাত্র উপায় হল পুরো প্রক্রিয়াটিকে স্বয়ংক্রিয় করা। একটু সহজ কনফিগারেশনের সাথে, |_+_| পরিচালনা করবে নিরীক্ষণ, নিষেধাজ্ঞা, এবং নিষেধাজ্ঞা মুক্ত করা তোমার জন্য.

বিজ্ঞাপন

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

অবশ্যই, আপনি যদি নিরাপত্তার বিষয়ে উদ্বিগ্ন হন, তাহলে সম্ভবত আপনার কাছে একটি ফায়ারওয়াল কনফিগার করা আছে যেটি একটি ভাল-জনসংখ্যার রুলসেট আছে। |_+_| কেবল এর নিজস্ব নিয়ম যোগ করে এবং সরিয়ে দেয় -আপনার নিয়মিত ফায়ারওয়াল ফাংশন অস্পৃশ্য থাকবে।



আমরা এই কমান্ডটি ব্যবহার করে আমাদের খালি রুলসেট দেখতে পারি:

|_ + _ |

সম্পর্কিত: iptables, লিনাক্স ফায়ারওয়ালের জন্য শিক্ষানবিস গাইড

fail2ban ইনস্টল করা হচ্ছে

ইনস্টল করা হচ্ছে |_+_| আমরা এই নিবন্ধটি গবেষণা করার জন্য ব্যবহৃত সমস্ত বিতরণে সহজ। উবুন্টু 20.04 এ, কমান্ডটি নিম্নরূপ:

|_ + _ |

ফেডোরা 32-এ, টাইপ করুন:

|_ + _ |

Manjaro 20.0.1-এ, আমরা ব্যবহার করেছি |_+_|:

|_ + _ |

fail2ban কনফিগার করা হচ্ছে

|_+_| ইনস্টলেশনে jail.conf নামে একটি ডিফল্ট কনফিগারেশন ফাইল থাকে। এই ফাইলটি ওভাররাইট করা হয় যখন |_+_| আপগ্রেড করা হয়েছে, তাই এই ফাইলে কাস্টমাইজেশন করলে আমরা আমাদের পরিবর্তনগুলি হারাবো৷

পরিবর্তে, আমরা jail.conf ফাইলটিকে jail.local নামক একটিতে কপি করব। আমাদের কনফিগারেশন পরিবর্তনগুলি jail.local এ রেখে, তারা আপগ্রেড জুড়ে টিকে থাকবে। উভয় ফাইল স্বয়ংক্রিয়ভাবে |_+_| দ্বারা পড়া হয়৷

এই ফাইলটি কিভাবে অনুলিপি করতে হয়:

|_ + _ |

এখন আপনার প্রিয় সম্পাদকে ফাইলটি খুলুন। আমরা ব্যবহার করতে যাচ্ছি |_+_|:

|_ + _ |বিজ্ঞাপন

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

/etc/fail2ban/jail.local একটি gedit উইন্ডোতে খোলা হয়েছে।

আপনি লাইন 40 এর আশেপাশে কোথাও [ডিফল্ট] বিভাগটি পাবেন। এটি অনেক মন্তব্য এবং ব্যাখ্যা সহ একটি দীর্ঘ বিভাগ।

/etc/fail2ban/jail.local একটি gedit উইন্ডোতে খোলা হয়েছে এবং লাইন 89 এ স্ক্রোল করা হয়েছে।

90 লাইনের কাছাকাছি নিচে স্ক্রোল করুন, এবং আপনি নিম্নলিখিত চারটি সেটিংস পাবেন যা আপনার জানা দরকার:

    উপেক্ষা করা:IP ঠিকানাগুলির একটি সাদা তালিকা যা কখনই নিষিদ্ধ করা হবে না। তাদের একটি স্থায়ী গেট আউট অফ জেল ফ্রি কার্ড রয়েছে। দ্য স্থানীয় হোস্ট আইপি ঠিকানা (|_+_|) তার IPv6 সমতুল্য (|_+_|) সহ ডিফল্টরূপে তালিকায় রয়েছে। যদি এমন অন্য আইপি ঠিকানা থাকে যা আপনি জানেন যে কখনই নিষিদ্ধ করা উচিত নয়, সেগুলিকে এই তালিকায় যুক্ত করুন এবং প্রতিটির মধ্যে একটি স্থান ছেড়ে দিন। ব্যানটাইমযে সময়কালের জন্য একটি IP ঠিকানা নিষিদ্ধ করা হয়েছে (m মানে মিনিট)। আপনি যদি m বা h (ঘন্টার জন্য) ছাড়া একটি মান টাইপ করেন তবে এটি সেকেন্ড হিসাবে বিবেচিত হবে। -1 মান স্থায়ীভাবে একটি IP ঠিকানা নিষিদ্ধ করবে। নিজেকে স্থায়ীভাবে তালাবদ্ধ না করার জন্য খুব সতর্ক থাকুন। সময় খুঁজে:যে সময়ের মধ্যে অনেক ব্যর্থ সংযোগ প্রচেষ্টার ফলে একটি IP ঠিকানা নিষিদ্ধ করা হবে। maxretry:অনেকগুলি ব্যর্থ প্রচেষ্টার মান।

যদি একই IP ঠিকানা থেকে একটি সংযোগ তৈরি করে |_+_| ব্যর্থ সংযোগ প্রচেষ্টা |_+_| এর মধ্যে সময়কাল, তারা |_+_| সময়ের জন্য নিষিদ্ধ। শুধুমাত্র ব্যতিক্রম হল |_+_| এর IP ঠিকানা তালিকা

|_+_| একটি নির্দিষ্ট সময়ের জন্য IP ঠিকানাগুলিকে জেলে রাখে। |_+_| অনেকগুলি বিভিন্ন জেল সমর্থন করে, এবং প্রতিটি প্রতিনিধিত্ব করে সেটিংস একটি একক সংযোগ প্রকারে প্রযোজ্য। এটি আপনাকে বিভিন্ন ধরনের সংযোগের জন্য বিভিন্ন সেটিংস করতে দেয়। অথবা আপনি থাকতে পারেন |_+_| শুধুমাত্র সংযোগ প্রকারের একটি নির্বাচিত সেট নিরীক্ষণ করুন।

আপনি হয়ত [ডিফল্ট] বিভাগের নাম থেকে এটি অনুমান করেছেন, কিন্তু আমরা যে সেটিংস দেখেছি তা ডিফল্ট। এখন, এসএসএইচ জেলের সেটিংস দেখি।

সম্পর্কিত: লিনাক্সে gedit-এর মাধ্যমে গ্রাফিক্যালি টেক্সট ফাইল কিভাবে এডিট করবেন

একটি জেল কনফিগার করা

জেলগুলি আপনাকে সংযোগের ধরনগুলিকে |_+_| এর মধ্যে এবং বাইরে সরাতে দেয়৷ পর্যবেক্ষণ ডিফল্ট সেটিংস যদি আপনি জেলে প্রয়োগ করতে চান তার সাথে মেলে না, আপনি |_+_|, |_+_|, এবং |_+_| এর জন্য নির্দিষ্ট মান সেট করতে পারেন৷

বিজ্ঞাপন

প্রায় 280 লাইনে স্ক্রোল করুন এবং আপনি [sshd] বিভাগটি দেখতে পাবেন।

/etc/fail2ban/jail.local একটি gedit উইন্ডোতে খোলা হয়েছে এবং লাইন 280 এ স্ক্রোল করা হয়েছে।

এখানে আপনি SSH সংযোগ জেলের জন্য মান সেট করতে পারেন। এই কারাগারটিকে পর্যবেক্ষণ এবং নিষিদ্ধকরণে অন্তর্ভুক্ত করতে, আমাদের নিম্নলিখিত লাইনটি টাইপ করতে হবে:

|_ + _ |

আমরা এই লাইনটিও টাইপ করি:

|_ + _ |

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

আমরা এই জেলটি |_+_| এ যুক্ত করেছি নিরীক্ষণ, এবং ডিফল্ট সেটিংসের একটিকে ওভাররড করে। একটি জেল ডিফল্ট এবং জেল-নির্দিষ্ট সেটিংসের সংমিশ্রণ ব্যবহার করতে পারে।

fail2ban সক্ষম করা হচ্ছে

এখন পর্যন্ত, আমরা ইনস্টল করেছি |_+_| এবং এটি কনফিগার করুন। এখন, আমাদের এটি একটি স্বয়ংক্রিয়-শুরু পরিষেবা হিসাবে চালানোর জন্য সক্ষম করতে হবে। তারপরে, এটি প্রত্যাশিত হিসাবে কাজ করে তা নিশ্চিত করতে আমাদের এটি পরীক্ষা করতে হবে।

বিজ্ঞাপন

সক্ষম করতে |_+_| একটি পরিষেবা হিসাবে, আমরা ব্যবহার করি |_+_| আদেশ :

|_ + _ |

আমরা পরিষেবা শুরু করতেও এটি ব্যবহার করি:

|_ + _ |

আমরা |_+_| ব্যবহার করেও পরিষেবার স্থিতি পরীক্ষা করতে পারি:

|_ + _ |

সবকিছু ভালো লাগছে—আমরা সবুজ আলো পেয়েছি, তাই সব ঠিক আছে।

দেখা যাক যদি |_+_| সম্মত:

|_ + _ |

এটা আমরা কি সেট আপ প্রতিফলিত. আমরা [sshd] নামে একটি একক জেল চালু করেছি। আমরা যদি আমাদের পূর্ববর্তী আদেশের সাথে কারাগারের নাম অন্তর্ভুক্ত করি তবে আমরা এটিকে আরও গভীরভাবে দেখতে পারি:

|_ + _ |

এটি ব্যর্থতার সংখ্যা এবং নিষিদ্ধ আইপি ঠিকানা তালিকাভুক্ত করে। অবশ্য এই মুহূর্তে সব পরিসংখ্যানই শূন্য।

আমাদের জেল পরীক্ষা করা হচ্ছে

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

বিজ্ঞাপন

|_+_| তিনটি ব্যর্থ সংযোগ প্রচেষ্টার পরে মান ট্রিগার হবে, তিনটি ব্যর্থ পাসওয়ার্ড প্রচেষ্টা নয়। সুতরাং, সংযোগের প্রচেষ্টা ব্যর্থ করতে আমাদের তিনবার একটি ভুল পাসওয়ার্ড টাইপ করতে হবে।

তারপরে আমরা আরেকটি সংযোগের চেষ্টা করব এবং পাসওয়ার্ডটি আরও তিনবার ভুল টাইপ করব। তৃতীয় সংযোগের অনুরোধের প্রথম ভুল পাসওয়ার্ড প্রচেষ্টা |_+_| ট্রিগার করা উচিত

তৃতীয় সংযোগের অনুরোধে প্রথম ভুল পাসওয়ার্ডের পরে, আমরা দূরবর্তী মেশিন থেকে কোনও প্রতিক্রিয়া পাই না। আমরা কোন ব্যাখ্যা পাই না; আমরা শুধু ঠান্ডা কাঁধ পেতে.

কমান্ড প্রম্পটে ফিরে যেতে আপনাকে অবশ্যই Ctrl+C টিপুন। যদি আমরা আরও একবার চেষ্টা করি, আমরা একটি ভিন্ন প্রতিক্রিয়া পাব:

|_ + _ |

পূর্বে, ত্রুটি বার্তাটি ছিল অনুমতি অস্বীকার করা হয়েছে। এই সময়, সংযোগ সরাসরি প্রত্যাখ্যান করা হয়. আমরা ব্যক্তিত্বহীন। আমাদের নিষিদ্ধ করা হয়েছে।

আসুন আবার [sshd] জেলের বিবরণ দেখি:

|_ + _ |

বিজ্ঞাপন

তিনটি ব্যর্থতা ছিল, এবং একটি আইপি ঠিকানা (192.168.4.25) নিষিদ্ধ করা হয়েছিল।

আমরা পূর্বে উল্লেখ করেছি, |_+_| ফায়ারওয়াল রুলসসেটে নিয়ম যোগ করে নিষেধাজ্ঞা জারি করে। আসুন নিয়ম সেটটি আরেকবার দেখে নেওয়া যাক (এটি আগে খালি ছিল):

|_ + _ |

INPUT নীতিতে একটি নিয়ম যোগ করা হয়েছে, SSH ট্রাফিক পাঠাচ্ছে |_+_| চেইন নিয়ম |_+_| চেইন 192.168.4.25 থেকে SSH সংযোগ প্রত্যাখ্যান করে। |

আপনি যদি একটি দীর্ঘ নিষেধাজ্ঞার সময়কাল সেট করেন (যেমন কয়েক ঘন্টা), কিন্তু একটি আইপি ঠিকানাকে শীঘ্রই অন্য সংযোগের অনুরোধ করার অনুমতি দিতে চান, আপনি তাড়াতাড়ি এটি প্যারোল করতে পারেন।

আমরা এটি করতে নিম্নলিখিত টাইপ:

|_ + _ |

আমাদের দূরবর্তী কম্পিউটারে, আমরা যদি অন্য SSH সংযোগের অনুরোধ করি এবং সঠিক পাসওয়ার্ড টাইপ করি, তাহলে আমাদের সংযোগ করার অনুমতি দেওয়া হবে:

|_ + _ |

সহজ এবং কার্যকর

সহজ সাধারণত ভাল, এবং |_+_| একটি চতুর সমস্যার একটি মার্জিত সমাধান. এটি খুব কম কনফিগারেশন নেয় এবং খুব কমই কোনো অপারেশনাল ওভারহেড চাপিয়ে দেয়—আপনার বা আপনার কম্পিউটারে।

লিনাক্স কমান্ড
নথি পত্র tar · pv · বিড়াল · tac · chmod · আঁকড়ে ধরে · পার্থক্য · sed · সঙ্গে · মানুষ · pushd · popd · fsck · টেস্টডিস্ক · seq · fd · প্যান্ডোক · সিডি · $PATH · awk · যোগদান · jq · ভাঁজ · ইউনিক · journalctl · লেজ · অবস্থা · ls · fstab · বের করে দিল · কম · chgrp · chown · rev · তাকান · স্ট্রিং · প্রকার · নাম পরিবর্তন করুন · জিপ · আনজিপ · মাউন্ট · উমাউন্ট · ইনস্টল · fdisk · mkfs · rm · rmdir · rsync · df · জিপিজি · আমরা · ন্যানো · mkdir · থেকে · ln · প্যাচ · রূপান্তর · rclone · টুকরা · এসআরএম
প্রসেস উপনাম · পর্দা · শীর্ষ · চমৎকার · renice · অগ্রগতি · স্ট্রেস · পদ্ধতি · tmux · chsh · ইতিহাস · · ব্যাচ · বিনামূল্যে · যা · dmesg · usermod · পুনশ্চ · chroot · xargs · tty · গোলাপী · lsof · vmstat · সময় শেষ · প্রাচীর · হ্যাঁ · হত্যা · ঘুম · sudo · তার · সময় · groupadd · usermod · গ্রুপ · lshw · শাটডাউন · রিবুট · থামা · যন্ত্র বন্ধ · পাসওয়াড · lscpu · ক্রন্টাব · তারিখ · বিজি · fg
নেটওয়ার্কিং netstat · পিং · ট্রেসরুট · আইপি · ss · কে · fail2ban · bmon · আপনি · আঙুল · nmap · এফটিপি · কার্ল · wget · WHO · আমি কে · ভিতরে · iptables · ssh-keygen · ufw

সম্পর্কিত: বিকাশকারী এবং উত্সাহীদের জন্য সেরা লিনাক্স ল্যাপটপ

পরবর্তী পড়ুন
  • › MIL-SPEC ড্রপ সুরক্ষা কি?
  • › 5টি ওয়েবসাইট প্রতিটি লিনাক্স ব্যবহারকারীর বুকমার্ক করা উচিত
  • › কীভাবে আপনার স্পটিফাই মোড়ানো 2021 খুঁজে পাবেন
  • & rsaquo; সাইবার সোমবার 2021: সেরা প্রযুক্তিগত ডিল
  • › কম্পিউটার ফোল্ডারটি 40: কিভাবে জেরক্স স্টার ডেস্কটপ তৈরি করেছে
  • › মাইক্রোসফ্ট এক্সেলে ফাংশন বনাম সূত্র: পার্থক্য কী?
ডেভ ম্যাকেয়ের প্রোফাইল ফটো ডেভ ম্যাককে
ডেভ ম্যাককে প্রথম কম্পিউটার ব্যবহার করেছিলেন যখন পাঞ্চড পেপার টেপ প্রচলিত ছিল এবং তখন থেকেই তিনি প্রোগ্রামিং করছেন। আইটি শিল্পে 30 বছরেরও বেশি সময় পরে, তিনি এখন একজন পূর্ণকালীন প্রযুক্তি সাংবাদিক। তার কর্মজীবনে, তিনি একজন ফ্রিল্যান্স প্রোগ্রামার, একটি আন্তর্জাতিক সফ্টওয়্যার ডেভেলপমেন্ট টিমের ম্যানেজার, একটি আইটি পরিষেবা প্রকল্প ব্যবস্থাপক এবং সম্প্রতি, একজন ডেটা সুরক্ষা অফিসার হিসাবে কাজ করেছেন। তার লেখা Howtogeek.com, cloudsavvyit.com, itenterpriser.com এবং opensource.com দ্বারা প্রকাশিত হয়েছে। ডেভ একজন লিনাক্স ধর্মপ্রচারক এবং ওপেন সোর্স অ্যাডভোকেট।
সম্পূর্ণ বায়ো পড়ুন

আকর্ষণীয় নিবন্ধ

জনপ্রিয় পোস্ট

আইফোন এবং আইপ্যাডে সাফারিতে ট্যাব গ্রুপগুলি কীভাবে ব্যবহার করবেন

আইফোন এবং আইপ্যাডে সাফারিতে ট্যাব গ্রুপগুলি কীভাবে ব্যবহার করবেন

মাইক্রোসফ্টের কালারটুল দিয়ে আপনার কমান্ড প্রম্পটের কালার স্কিম কীভাবে কাস্টমাইজ করবেন

মাইক্রোসফ্টের কালারটুল দিয়ে আপনার কমান্ড প্রম্পটের কালার স্কিম কীভাবে কাস্টমাইজ করবেন

ব্রাউজারগুলি ওয়েবসাইটগুলিতে স্বয়ংক্রিয় ডার্ক মোড নিয়ে আসছে

ব্রাউজারগুলি ওয়েবসাইটগুলিতে স্বয়ংক্রিয় ডার্ক মোড নিয়ে আসছে

সমস্ত ব্রাউজারে পৃথক ওয়েবসাইটের অনুমতিগুলি কীভাবে পরিবর্তন করবেন

সমস্ত ব্রাউজারে পৃথক ওয়েবসাইটের অনুমতিগুলি কীভাবে পরিবর্তন করবেন

কীভাবে বাষ্পের অফলাইন মোড কাজ করবেন

কীভাবে বাষ্পের অফলাইন মোড কাজ করবেন

ফেসবুকে কিভাবে একাধিক ভাষায় পোস্ট করবেন

ফেসবুকে কিভাবে একাধিক ভাষায় পোস্ট করবেন

Chrome এর নতুন ট্যাব পৃষ্ঠায় একটি করণীয় তালিকা যোগ করুন

Chrome এর নতুন ট্যাব পৃষ্ঠায় একটি করণীয় তালিকা যোগ করুন

কন্টেন্ট ক্যাশিং সহ আপনার ম্যাক, আইফোন এবং আইপ্যাডে ডাউনলোডের গতি বাড়াবেন

কন্টেন্ট ক্যাশিং সহ আপনার ম্যাক, আইফোন এবং আইপ্যাডে ডাউনলোডের গতি বাড়াবেন

আপনার অতিরিক্ত আইক্লাউড স্টোরেজের জন্য 6টি ব্যবহার

আপনার অতিরিক্ত আইক্লাউড স্টোরেজের জন্য 6টি ব্যবহার

উইন্ডোজ 10 এ কমান্ড প্রম্পটে ডিরেক্টরিগুলি কীভাবে পরিবর্তন করবেন

উইন্ডোজ 10 এ কমান্ড প্রম্পটে ডিরেক্টরিগুলি কীভাবে পরিবর্তন করবেন