लॉग इन ईमेल की जाँच कहाँ करें?


103

मैं ईमेल नहीं भेज सकता,

लॉग में देखने की जरूरत है,

लेकिन लॉग कहाँ है?


4
हमें यह बताने की परवाह करें कि आप किस ओएस का उपयोग कर रहे हैं? जैसा कि अन्य लोगों ने नीचे उल्लेख किया है, अधिकांश प्रणालियों पर यह / var / log / maillog है। सोलारिस पर यह / var / adm / maillog है। डेबियन / उबंटू पर यह /var/log/mail.log (ध्यान दें डॉट) है।
गेराल्ड कॉम्स

1
पूंछ -f / var / log / maillog
थॉमस डेंटन

जवाबों:


72

लॉग कहां हैं?

डिफ़ॉल्ट स्थान आपके लिनक्स / यूनिक्स प्रणाली पर निर्भर करता है, लेकिन सबसे आम स्थान हैं

  • / Var / log / maillog
  • /var/log/mail.log
  • / Var / ADM / maillog
  • /var/adm/syslog/mail.log

अगर यह नहीं है, तो ऊपर देखें /etc/syslog.conf। आपको कुछ इस तरह से देखना चाहिए

mail.*         -/var/log/maillog

sendmailmail syslog की सुविधा के लिए लॉग लिखता है । इसलिए, यह किस फ़ाइल को लिखा जाता है यह निर्भर करता है कि syslog को कैसे कॉन्फ़िगर किया गया था।

यदि आप सिस्टम syslog- एनजी (अधिक "पारंपरिक" syslog के बजाय ) का उपयोग करते हैं, तो आपको अपनी syslog-ng.confफ़ाइल देखनी होगी । आपको इस तरह से कुछ करना चाहिए:

# This files are the log come from the mail subsystem.
#
destination mail     { file("/var/log/mail.log"); };
destination maillog  { file("/var/log/maillog"); };
destination mailinfo { file("/var/log/mail.info"); };
destination mailwarn { file("/var/log/mail.warn"); };
destination mailerr  { file("/var/log/mail.err"); };

ईमेल भेजने में असमर्थ?

सबसे सामान्य कारण जो मैंने एक ताज़ा इंस्टॉल किए गए ईमेल के लिए देखा है, जो ईमेल भेजने में सक्षम नहीं है, केवल DAEMON_OPTIONS को केवल 127.0.0.1 पर सुनने के लिए सेट किया जा रहा है

देखें /etc/mail/sendmail.mc

dnl #
dnl # The following causes sendmail to only listen on the IPv4 loopback address
dnl # 127.0.0.1 and not on any other network devices. Remove the loopback
dnl # address restriction to accept email from the internet or intranet.
dnl #
DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, Name=MTA')dnl

यदि आपका मामला ऐसा है, तो "Addr = 127.0.0.1" भाग को हटा दें, अपनी गोपनीय फ़ाइल को फिर से बनाएं और आप जाने के लिए अच्छे हैं!

DAEMON_OPTIONS(`Port=smtp, Name=MTA')dnl

[root@server]$ m4 sendmail.mc > /etc/sendmail.cf
[root@server]$/etc/init.d/sendmail restart

यदि आप /etc/sendmail.cf में मैन्युअल रूप से परिवर्तन कर रहे हैं, तो इस प्रकार (* .m4 फ़ाइल के बजाय) आप /etc/sendmail.cf में समान परिवर्तन कर सकते हैं। अपमानजनक रेखा इस तरह दिखाई देगी:

O DaemonPortOptions=Port=smtp,Addr=127.0.0.1, Name=MTA

इसे इसमें बदलें:

O DaemonPortOptions=Port=smtp, Name=MTA

1
पूंछ -f / var / log / maillog
थॉमस डेंटन

1
मुझे लगता है, यहाँ कुंजी है: "DaemonPortOptions = पोर्ट = smtp, Addr = 127.0.0.1, Name = MTA" में /etc/mail/sendmail.mc बहुत अच्छा टिप। मेरा दिन
बचा लिया

1
लेकिन 127.0.0.1 क्यों निकालें? सार्वजनिक इंटरफ़ेस पर सुनने के लिए डेमन के पास ऐसा करने का सबसे सुरक्षित तरीका नहीं है। (मैं संपूर्ण "ईमेल्स भेजने में असमर्थ" भाग को हटाने का सुझाव
दूंगा

23

चेक / var / log / maillog या / var / log / संदेश यदि आप * nix पर हैं

इसके अलावा, अगर कुछ नहीं निकल रहा है, तो आप अपने फ़ायरवॉल को निम्नानुसार जांचना चाहते हैं (जड़ के रूप में ऐसा करना सुनिश्चित करें):

[root @ web01 ~] # iptables -L
चेन INPUT (पॉलिसी ACCEPT)
लक्ष्य विरोध ऑप्ट स्रोत गंतव्य         
ACCEPT tcp - कहीं भी tcp dpt: एमएस-वी-दुनिया 
ACCEPT tcp - कहीं भी tcp dpt: imaps 
ACCEPT tcp - कहीं भी tcp dpt: imap 
ACCEPT tcp - कहीं भी tcp dpt: pop3 
ACCEPT tcp - कहीं भी tcp dpt: smtp 
           tcp - कहीं भी tcp dpt: ssh स्थिति नई हाल: SET नाम: SSH पक्ष: स्रोत 
DROP tcp - कहीं भी tcp dpt: ssh स्थिति नई हाल ही में: अद्यतन सेकंड: 60 hit_count: 8 TTL- मैच का नाम: SSH पक्ष: स्रोत 

चेन फॉरवर्ड (पॉलिसी ACCEPT)
लक्ष्य विरोध ऑप्ट स्रोत गंतव्य         

चेन OUTPUT (पॉलिसी ACCEPT)
लक्ष्य विरोध ऑप्ट स्रोत गंतव्य         

चेन आरएच-फ़ायरवॉल -1-INPUT (0 संदर्भ)
लक्ष्य विरोध ऑप्ट स्रोत गंतव्य         
[रूट @ xxxx ~] # 

1
या, * nix पर, /etc/syslog.conf में यह देखने के लिए कि अन्य लॉग संदेश कहां भेजे जा रहे हैं।
Liudvikas

मैं iptables में smtp की कोई प्रविष्टि नहीं देखता
Umair


2

वर्तमान कैश्ड आउटगोइंग मेल के लिए भी जाँच / var / स्पूल / mqueue


2

फेडोरा एट अल के लिए। journalctl _COMM = sendmail, sendmail से संदेश दिखाएगा।

मुझे एक खोज के माध्यम से इस उत्तर के लिए निर्देशित किया गया था। / var / log / mail में केवल Fedora पर 'आँकड़े' फ़ाइल होती है। और अन्य सभी उल्लिखित निर्देशिकाएं अस्तित्वहीन हैं।

यदि आप नहीं जानते कि कौन सा पैरामीटर उपयोग करना है, तो yctv क्या है? इसलिए मैंने यह समाधान पोस्ट किया है।



-1

आप अपनी लॉग फ़ाइल बना सकते हैं

[admin@local ~]# killall sendmail
[admin@local ~]# touch /var/log/sendmail.log
[admin@local ~]# sendmail -bd -q15m >> /var/log/sendmail.log

और फिर

[admin@local ~]# tail -f /var/log/sendmail.log

451 4.0.0 /fake/path/sendmail.cf: line 0: cannot open: No such file or directory
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.