CentOS 7 पर fail2ban स्थापित करना


15

मैं @GarethTheRed के उत्तर का उपयोग कर रहा हूं एक दूरस्थ CentOS 7 सर्वर पर fail2ban को स्थापित करने के इस सवाल के । मैं सभी चरणों को पूरा करने में सक्षम हूं tail -f /var/log/fail2ban.log, जिस बिंदु पर मुझे उसके जवाब में मिलने वाले परिणाम की तुलना में अलग-अलग परिणाम मिलते हैं।

इस चरण में परिणाम मुझे मिल रहे हैं:

[root@remotecentosserver.com ~]# tail -f /var/log/fail2ban.log
2014-12-02 16:55:53,548 fail2ban.server.server[6667]: INFO    Changed logging target to /var/log/fail2ban.log for Fail2ban v0.9.0
2014-12-02 16:55:53,550 fail2ban.server.database[6667]: INFO    Connected to fail2ban persistent database '/var/lib/fail2ban/fail2ban.sqlite3'
2014-12-02 16:55:54,239 fail2ban.server.database[6667]: WARNING New database created. Version '2'  

अंतिम पंक्ति के बाद, मुझे केवल एक कर्सर मिलता है लेकिन जब तक मैं टाइप नहीं करता हूं कोई कमांड प्रॉम्प्ट नहीं Ctrl-C

जब मैं टाइप करता हूं systemctl status fail2ban, तो यह मुझे बताता है कि fail2banसक्रिय है। जब मैं सिस्टम से लॉग आउट करता हूं और बाद में लॉग इन करता हूं,sshd हूं तो मुझे बताता है कि मेरे पिछले लॉगिन के बाद से लॉगिन करने के कई असफल प्रयास हुए हैं। इसलिए fail2banलॉग होना चाहिए । लेकिन मैं उन्हें ढूंढ नहीं सकता।

क्या कोई मुझे दिखा सकता है कि इस सेट को कैसे प्राप्त किया जाए ताकि fail2banलॉग उत्पन्न हो सके कि मैं ट्रैक कर सकूं?


क्या आपने फ़ाइल अनुमतियों की जाँच की? मैंने केवल एक बार से अधिक समय बर्बाद किया है यह जानने के लिए कि अनुमतियाँ समस्या थीं।
कोडवर्ड करें

1
fail2banअब EPEL रेपो में है। इसे वहाँ से स्थापित करने का प्रयास करें। वर्तमान संस्करण को अनइंस्टॉल करें और सुनिश्चित करें कि कोई अवशिष्ट विन्यास फाइल आदि नहीं हैं। फिर EPEL से इंस्टॉल करें। मैं इसे किसी भी मुद्दे के बिना एक CentOS 7 मशीन पर चल रहा है।
garethTheRed

मैंने आखिरी टिप्पणी में एक छोटा सा झूठ कहा - मैं भूल गया कि मुझे इसे कुछ समय पहले ठीक करना था। नीचे लंबा जवाब ...
garethTheRed

जवाबों:


32

EPELfail2ban से इंस्टॉल करने का प्रयास करें । यह CentOS 7 के लिए पैक किया गया है और जैसे ही वे रिलीज़ होंगे आपको अपडेट मिल जाएगा। फॉर्म को स्थापित करना एक और रेपो काम कर सकता है (यह इस मामले में किया था) लेकिन चीजों को करने का सबसे अच्छा तरीका नहीं है।rpm

सबसे पहले, निम्नलिखित को जारी करके EPEL रिपॉजिटरी स्थापित करें (रूट के रूप में):

yum install epel-release

उपरोक्त को ईपीईएल स्थापित करना चाहिए और आपको कई नए पैकेजों तक पहुंच प्रदान करनी चाहिए । उन पैकेजों में से एक है fail2ban, इसलिए इसे चलाकर इंस्टॉल करें:

yum install fail2ban

डिफ़ॉल्ट रूप से कोई जेल कॉन्फ़िगर नहीं है, इसलिए बुनियादी sshdजेल को कॉन्फ़िगर करने के लिए :

फ़ाइल बनाएं और संपादित करें /etc/fail2ban/jail.local:

[sshd]
enabled = true

इसे इसके साथ शुरू करें:

systemctl start fail2ban

इसे बूट समय पर शुरू करें:

systemctl enable fail2ban

वहाँ एक ज्ञात बग हुआ करता था जहाँ SELinux fail2banअपने काम करने के लिए आवश्यक लॉग फ़ाइलों तक पहुँचने से रोकता था । यह CentOS 7 के सबसे हाल के संस्करण में तय किया गया लगता है; आपको नीचे परिवर्तन करने की आवश्यकता नहीं है।

यदि आपके पास यह समस्या है, तो लक्षण लॉग में दिखाई नहीं दे रहे हैं और कुछ भी नहीं दिखाई दे रहा है जो कि आउटपुट में विफल या अवरुद्ध है fail2ban-client status sshd

SELinux त्रुटि की जांच करने के लिए, इसके साथ पत्रिकाओं को पढ़ें:

journalctl -lfu fail2ban

उन्हें संदेशों के लिए देखें जैसे:

SELinux is preventing /usr/bin/python2.7 from getattr access on the file .
       *****  Plugin catchall (100. confidence) suggests   **************************
       If you believe that python2.7 should be allowed getattr access on the  file by default.
       Then you should report this as a bug.
       You can generate a local policy module to allow this access.
       Do 
       allow this access for now by executing:
       # grep fail2ban-server /var/log/audit/audit.log | audit2allow -M mypol
       # semodule -i mypol.pp

इसलिए सुझाव के अनुसार करें और चलाएं:

grep fail2ban-server /var/log/audit/audit.log | audit2allow -M mypol
semodule -i mypol.pp

फिर, सुरक्षित होने के लिए, पुनः आरंभ करें fail2ban:

systemctl restart fail2ban

जब तक लॉग में कोई और त्रुटि संदेश दिखाई न दे, तब तक आपको उपरोक्त प्रक्रिया को दोहराना पड़ सकता है।

अगर आपका सर्वर इंटरनेट पर है तो मॉनिटर करें fail2ban-client status sshd । यदि आपने सभी SELinux मुद्दों को पकड़ लिया है, तो यह जल्द ही विफल और प्रतिबंधित प्रतिबंध दिखाना शुरू कर देगा।

ध्यान दें कि आपको अपने SELinux नीति अपडेट पर नज़र रखनी होगी। यदि कोई selinux-policyपैकेज अद्यतन दिखाई देता है, तो यह उपरोक्त को अधिलेखित कर सकता है और आपको उपरोक्त आदेशों को फिर से चलाने की आवश्यकता हो सकती है। आपको पता चलेगा कि क्या यह मामला है क्योंकि fail2banफिर से काम करना बंद हो जाएगा!


बहुत बहुत धन्यवाद। क्या मुझे पहले विफल 2 की स्थापना रद्द करने के लिए विशिष्ट कदम उठाने चाहिए? या फिर आपके द्वारा ऊपर दिए गए चरणों में स्वचालित रूप से नियंत्रित किया जाता है?
कोडमेड

मैं पहले फेडोरा 20 से संस्करण की स्थापना रद्द करूंगा और सुनिश्चित करूंगा कि निर्देशिका /etc/fail2banहटा दी गई है।
22

उस enabled = trueहिस्से ने काम किया। मैंने हर जगह पढ़ा है कि ssh डिफ़ॉल्ट रूप से कॉन्फ़िगर और सक्षम है, लेकिन यह सच नहीं था।
राहिल वजीर
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.