एक विशिष्ट प्रक्रिया / सेवा चल रही है या नहीं यह जांचने के लिए जेनेरिक नगियोस प्लगइन?


12

मैं http://exchange.nagios.org पर देख रहा हूं कि अगर Sendmail, xinetd, automount, ypserv, ypbind, mailscanner, mcafee, clamav, samba server, और openvpn चल रहे हैं, तो यह जांचने के लिए प्लगइन्स नहीं हैं।

बेशक, ये सभी स्थिर कार्यक्रम होने चाहिए, लेकिन ये महत्वपूर्ण हैं, इसलिए मैं जांच करना चाहूंगा कि क्या वे चल रहे हैं।

सवाल

क्या विशिष्ट प्रक्रियाओं की जांच के लिए एक सामान्य प्लगइन मौजूद है?

जवाबों:


25

मैं ध्वज के check_procsसाथ मानक एनएजीआईओएस प्लगइन का उपयोग करता हूं -C, यहां दिखाया गया है कि एनआरपीई के nrpe.cfgमाध्यम से आमंत्रित किया जा रहा है :

command[check_spamd]=/usr/lib/nagios/plugins/check_procs -c 1: -w 3: -C spamd

अगर यह निष्पादन योग्य नाम (मतगणना पथ नहीं) के साथ कम से कम तीन प्रक्रियाओं को नहीं spamdखोजेगा, और जो कम से कम एक नहीं खोजेगा, तो वह सीआरआईटी को मिल जाएगा।


2

मैं इस स्क्रिप्ट का उपयोग विभिन्न चल रही प्रक्रियाओं की जाँच करने के लिए कर रहा हूँ । आप इन दो पंक्तियों को संपादित कर सकते हैं:

PROCLIST_RED="sshd"
PROCLIST_YELLOW="syslogd"

लाल (महत्वपूर्ण) प्रक्रियाओं और पीले (चेतावनी) प्रक्रियाओं को बदलने के लिए।

इसके अलावा, यह स्क्रिप्ट खुले बंदरगाहों (सुनने की स्थिति) के लिए जांच करती है। आप पंक्ति को संपादित कर सकते हैं:

PORTLIST="22"

मैंने UDP_PORTLISTUDP सॉकेट्स की जांच करने के लिए एक नए चर को परिभाषित करके स्वयं स्क्रिप्ट को भी संशोधित किया ।


स्क्रिप्ट लिंक मर चुका है
फेंसन

यकीन नहीं होता कि यह सही स्क्रिप्ट है, लेकिन कम से कम नाम तो एक ही है। शायद यह मदद करता है।
gf_


1

टीसीपी पोर्ट पर सुनने वाली किसी भी सेवा के साथ जांच की जा सकती है check_tcp। कनेक्शन की जाँच बाह्य रूप से करने से आप जाँचते हैं कि फ़ायरवॉल उस पोर्ट के माध्यम से कनेक्शन को जाँचने की अनुमति दे रहा है और जाँच कर रहा है कि प्रक्रिया सही पोर्ट पर चल रही है और सुन रही है।

check_tcpजांच आपको बता नहीं होगा अगर किसी को sendmail के बजाय पोस्टफिक्स शुरू या nginx कॉन्फ़िगर किया गया अपाचे के बजाय पोर्ट 80 लेकिन पर सुनने के लिए check_procs(है कि दूसरों को पहले ही उल्लेख किया) है कि करेंगे।


यह दिलचस्प है! मुझे लगता है कि प्लगइन को एक भेजें / अपेक्षा स्ट्रिंग की आवश्यकता है। मुझे ये कैसे मिलते हैं जैसे उदा। Sendmail और openvpn?
सैंड्रा

2
क्या इसके लिए सेंड / उम्मीद स्ट्रिंग की आवश्यकता है? आप क्या या तो समीक्षा करके sendmail के लिए भेजने के लिए मिल सकता है एसएमटीपी कल्पना या के साथ जोड़ने के द्वारा telnet localhost 25और यह अपने आप बाहर की कोशिश कर रहा। OpenVPN थोड़ा अधिक मुश्किल हो सकता है क्योंकि यह एन्क्रिप्ट किया जाना चाहता है लेकिन कुछ बकवास भेज रहा है और एक त्रुटि संदेश प्राप्त करना आपकी आवश्यकताओं के लिए पर्याप्त हो सकता है।
लादादादा

यूपीएस। मैंने check_tcp के बजाय check_udp की कोशिश की। भेजने / पाने के लिए टेलनेट का उपयोग करना निश्चित रूप से उपयोगी हो जाएगा।
सैंड्रा

1

आम तौर पर, वास्तव में एक नेटवर्क सेवा से कनेक्ट करना बेहतर होता है और यह देखें कि यदि यह सेवा चल रही है तो check_tcp या चेक का उपयोग करने के बजाय, यह अपेक्षित रूप से प्रतिक्रिया दे रहा है या नहीं।

सांबा, क्लैमाव, सेंडमेल इत्यादि के मामले में, इनकी जाँच करने के लिए सेवा-विशिष्ट प्लगइन्स हैं (भले ही NRPE के माध्यम से "लोकलहोस्ट" पर जाँच की गई हो) जो कि पोर्ट के खुले रहने पर जाँचने से अधिक सटीक होगा। जाहिर है, टीसीपी पोर्ट और / या check_procs का उपयोग करना कुछ भी नहीं से बेहतर है ।


हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.