हम में से जो सर्वर का प्रबंधन करते हैं, उन्हें सर्वर पर होने वाली हर चीज पर सबसे अधिक संभव नियंत्रण रखना चाहिए, उनमें से एक चीज जो हमें अक्सर जानने की जरूरत होती है, जब एक उपयोगकर्ता SSH (रूट शामिल) के माध्यम से जोड़ता है, इसके लिए पैकेज और एक पंक्ति के साथ। हमारे ईमेल सूचना तक पहुँच जाएगा।
क्या आप सोच सकते हैं कि हर बार जब कोई एसएसएच से जुड़ता है, तो उसे एक ईमेल मिलता है जो कहता है?
दूसरे शब्दों में, उन्हें एक ईमेल प्राप्त होगा जो कुछ इस तरह कहेगा:
[कंजूस] चेतावनी: रूट टर्मिनल एक्सेस पर: 2014/01/21 (200.55.51.151)
अर्थात्:
[$ NOMBRE_VPS] चेतावनी: रूट टर्मिनल तक पहुँच: $ DATE ($ IP_DE_WHO_S_CONNECT)
इसे प्राप्त करने के लिए उन्हें पहले एक पैकेज स्थापित करना होगा जिसे कहा जाता है mailx.
मान लिया जाए कि आपका सर्वर डेबियन या इसके आधार पर कुछ डिस्ट्रो का उपयोग करता है (मैं केवल डेबियन की सलाह देता हूं, न कि उबंटू या सर्वर के समान):
apt-get install mailx
तो हमें निम्नलिखित लाइन को रूट में रखना होगा।
echo 'ALERTA - Acceso a Terminal de Root en:' `hostname` 'el:' `date +'%Y/%m/%d'` `who | grep -v localhost` | mail -s "[ `hostname` ] Alerta: Acceso a Terminal de Root el: `date +'%Y/%m/%d'` `who | grep -v localhost | awk {'print $5'}`" mi@email.com
/Root/.bashrc को संपादित करने के लिए टर्मिनल जैसे नैनो में कुछ संपादक का उपयोग करें:
nano /root/.bashrc
डालने के बाद (फ़ाइल में कहीं भी) जो लाइन मैंने पहले डाली थी, हम फ़ाइल को उसके साथ सहेजते हैं कंट्रोल + O (या भालू) और हमने इसे छोड़ दिया कंट्रोल + X
तैयार है, हर बार जब कोई रूट टर्मिनल में प्रवेश करता है।। जैसा:
लाइन की व्याख्या कुछ सरल है:
- Mailx के माध्यम से मैं मेल भेजता हूँ, पैरामीटर -s के साथ «_____» मैं विषय निर्दिष्ट करता हूं, और मैं इसे गूंज «____» और शरीर की एक पाइप के साथ पास करता हूं।
- `hostname` इसके साथ मुझे hostname या hostname मिलता है, यानी VPS का नाम।
- `दिनांक + '% Y /% m /% d'` दिनांक आदेश मुझे सिस्टम दिनांक दिखाता है, शेष अक्षर केवल यह दर्शाते हैं कि मैं कैसे दिनांक प्रदर्शित करना चाहता हूं।
- कौन | grep -v localhost` यदि आप अपने कंप्यूटर पर चलाते हैं, तो यह आपको सक्रिय उपयोगकर्ता दिखाएगा, एक grep -v लोकलहोस्ट के साथ मैं यह सुनिश्चित करता हूं कि यह केवल उन लोगों को दिखाता है जो एक अलग स्थान से सर्वर से ही जुड़े हैं, अर्थात्, मूल रूप से एसएसएच
- `कौन | grep -v लोकलहोस्ट | awk {'प्रिंट $ 5'} `पिछले एक से इस लाइन को क्या अलग करता है, awk के माध्यम से और 5 वें कॉलम की प्रिंटिंग है कि मुझे वह IP मिलती है जहां से वे SSH से जुड़े हैं
वैसे भी, रेखा कुछ लंबी है और समझने में जटिल लग सकती है, हालांकि कई अजीब चरित्र हैं लेकिन सब कुछ काफी सरल है somewhat
हमेशा की तरह, मुझे उम्मीद है कि आपको यह दिलचस्प लगा होगा।
सादर
22 टिप्पणियाँ, तुम्हारा छोड़ दो
एक प्रश्न, यह किस मेल सर्वर के साथ भेजा जाता है? क्या आपको शिपिंग खाता कॉन्फ़िगर करना है?
आपके पास मेल पैकेज स्थापित होना चाहिए x
एक बार ऐसा करने के बाद, इसे सर्वर पर कुछ और कॉन्फ़िगर करने की आवश्यकता के बिना भेजा जाता है।
मैं इसे आज़माऊंगा, लेकिन मुझे लगता है कि मेरा ईमेल किसी अप्रमाणित स्रोत से ईमेल प्राप्त करना स्वीकार नहीं करेगा ...
मैं ईमेल भेजने के लिए 'gmail' खाते के साथ exim4 का उपयोग करता हूं और यह ठीक काम करता है
- FROM TO और REPLY TO शीर्षकों को छोड़कर, जो जीमेल डालता है, जो वह चाहता है, लेकिन वे अच्छी तरह से आते हैं -।
Exim4 के साथ जीमेल कॉन्फ़िगर करने के लिए इस जानकारी का उपयोग करें:
http://dajul.com/2009/06/08/configurar-exim4-con-gmail-o-google-apps/
दिलचस्प है, बहुत बहुत धन्यवाद much
मित्र @ KZKG ^ Gaara मैंने पैकेज स्थापित किया है और मैंने मैन्युअल स्टेप बाय स्टेप बनाया है, केवल एक चीज है कि जब मैं इसे भेजता हूं तो मेरे पास स्थानीय मेल होता है, मैं कभी बाहर नहीं निकला, क्या आप मेरी मदद कर सकते हैं ?? ... अच्छी तरह से? मुझे वास्तव में इस विषय को अपने सर्वर, salu2s पर कॉन्फ़िगर करना होगा।
आपके आईपी द्वारा मैं मान लेता हूं कि आप मेरे देश से हैं that
हमारे नेटवर्क के साथ "समस्या" में शायद ही कभी वास्तविक आईपी होते हैं जैसे कि, हम एक मंत्रालय प्रॉक्सी नेटवर्क के तहत सबनेटेड हैं, या उसके बाद कुछ। दूसरे शब्दों में, संभवतः समस्या यह है कि वेब सर्वर को नेटवर्क से ईमेल या ऐसा कुछ नहीं मिल सकता है, शायद आपको इसकी आवश्यकता है: https://blog.desdelinux.net/enviar-emails-por-consola-con-sendmail/
दिलचस्प है और अगर इसे «/ etc / प्रोफाइल» में रखा जाता है तो क्या यह चेतावनी तब देगा जब कोई उपयोगकर्ता कनेक्ट होता है?
यह कोशिश करना आवश्यक होगा, यह मेरे लिए नहीं हुआ था try
मुझे पागल मत कहो, लेकिन एक स्क्रिप्ट रखो कि एक अजनबी मुझे अपने सिस्टम के एक महत्वपूर्ण हिस्से में सुझाव देता है जहां मैं खाता पासवर्ड, जन्म प्रमाण पत्र, व्यक्तिगत दस्तावेज और काम के दस्तावेज (जैसे मेरे ग्राहकों को भी उजागर करना) आदि, और वह भी रखता हूं मेरा मतलब है कि मेरा ईमेल खाता (!!!) ... अच्छी तरह से, यह कुछ खतरनाक है, मुझे लगता है।
प्रस्तुत स्क्रिप्ट का खतरा इसके बारे में समझने के लिए आनुपातिक है।
और व्यामोह के लिए, एनओएन-फ्री रिपॉजिटरी स्थापित करना बंद करें, क्योंकि यह संभव है कि कोई व्यक्ति एक दुर्भावनापूर्ण कोड दर्ज करता है जो आपकी खरीदारी की टोकरी चुराता है।
मैंने समझाया कि कमांड लाइन का प्रत्येक भाग क्या करता है, हालांकि अगर आपको लगता है कि मैं किसी को धोखा दे रहा हूं, तो स्क्रिप्ट या कमांड पोस्ट में वहीं हैं, इसमें कोई छिपा हुआ या गुप्त कोड नहीं है, आप कमांड का पूरी तरह से समीक्षा करने के लिए स्वागत करते हैं। जैसा कि आप चाहते हैं कि रन, अगर आपको कुछ संदिग्ध लगता है तो कृपया इसे यहीं टिप्पणी करें,
सराहना की है.
बहुत ही रोचक।
शायद ~ / .bashrc या / etc / प्रोफाइल फाइलें उस घटना में सबसे उपयुक्त नहीं हैं जिसे हम सामान्य उपयोगकर्ता के साथ SSH द्वारा एक्सेस करते हैं और रूट के रूप में एक विशिष्ट कमांड निष्पादित करते हैं। या यदि हम अपने दूरस्थ VPS से X11 निर्यात करते हैं, तो हर बार जब हम एक xterm खोलते हैं तो हमारे पास एक नया ईमेल होगा।
मेल हैक के लिए, मुझे लगता है कि हमें ~ / .sh / rc (प्रत्येक उपयोगकर्ता के लिए व्यक्तिगत) या / etc / ssh / sshrc फ़ाइलों का उपयोग करना चाहिए
PostData: रूट उपयोगकर्ता के रूप में SSH के माध्यम से _NEVER_ का उपयोग। पासवर्ड का उपयोग करके SSH द्वारा _NEVER_ का उपयोग। _ALWAYS_ निजी कुंजियों का उपयोग करें।
दिलचस्प → ~ / .ssh / rc मुझे इसके बारे में अधिक जानकारी मिलेगी धन्यवाद /
हैलो, बहुत अच्छा ट्यूटर!
क्या आप स्थानीय नेटवर्क के बाहर किसी भी आईपी से ssh के माध्यम से प्रवेश कर सकते हैं?
धन्यवाद!
यह स्क्रिप्ट काम करती है यदि हम जो मेल सर्वर भेजते हैं वह यह सत्यापित नहीं करता है कि स्रोत मेल एक प्रामाणिक सर्वर से आता है, इस मामले में यह रूट @ लोकलहोस्ट से होगा, अधिकांश सर्वर इसे स्पैम के रूप में लेंगे।
मैं क्या करता हूँ Sendmail को MTA के रूप में कॉन्फ़िगर किया जाता है, और फिर उस मेल का उपयोग करें जो ईमेल भेजने के लिए सभी विकृतियों में आता है।
http://vidagnu.blogspot.com/2009/02/configurar-sendmail-como-cliente-de.html
टिप के लिए धन्यवाद मैं इसे परीक्षण करने के लिए इसमें होगा:]
उपयोगी धन्यवाद
सलाह मित्र @ KZKG ^ Gaara के लिए एक लाख धन्यवाद, मैं Sendmail पर एक नज़र डालने जा रहा हूं, मुझे हल करने की उम्मीद है, salu2s।
महान! इनपुट के लिए धन्यवाद!
और क्या होता है, उदाहरण के लिए यदि स्क्रिप्ट बहुत सारे ईमेल भेज रही है, उदाहरण के लिए कोई व्यक्ति सुबह 8:00 बजे रूट टर्मिनल में प्रवेश करता है और लगभग 40 ईमेल भेजे जाते हैं, तो कोई अन्य समय में प्रवेश करता है और 23 से अधिक ईमेल भेजे जाते हैं और फिर कोई आता है एक और समय में और 150 से अधिक ईमेल भेजे गए, यह क्या हो सकता है?