यह मुझे चौंकाता है कि इस पुराने प्रश्न के अन्य सभी उत्तर लिंक-ओनली हैं। इसलिए मैं कुछ शब्दों में वर्णन करने जा रहा हूं कि इस नौकरी के लिए अपने पसंदीदा समाधान को कैसे लागू किया जाए।
लिंक है कि @ 84104 का सुझाव दिया है, हालांकि बहुत उपयोगी है, ठीक से इस प्रति दर लागू करने के लिए इस्तेमाल नहीं किया जा सकता है। smtpd_client
सीमाएं ट्रैफ़िक नियंत्रण के लिए नहीं हैं, बल्कि क्लाइंट सॉफ़्टवेयर की सहायता के लिए हैं: "क्लाइंट के विरुद्ध उपाय जो बहुत अधिक कनेक्शन बनाते हैं"। एक इस जैसे सुझाव देख सकते हैं हालांकि एक यह है कि यह निश्चित रूप से मदद मिल सकती है। जैसा कि @ ई। यज़ीसी ने सुझाव दिया है, पोस्टफ़िक्स के लिए एक ऐडोन की आवश्यकता है। व्यक्तिगत रूप से मैं पॉलिकैड को वैसा ही समझता हूं, जैसा @Janne Pikkarainen द्वारा अनुशंसित है, हालांकि यह एक मानक माना जाता है।
मेरा पसंदीदा एडऑन पोस्टफ़ीड है क्योंकि यह हल्का और आसान है। यह भी ध्यान देने योग्य है कि यह Plesk या अन्य समान के साथ बहुत आसानी से काम करता है, बिना विन्यास फाइल के Plesk के जटिल सेट को प्रभावित किए बिना। Plesk में ईमेल दर सीमा केवल संस्करण 12 में लागू की गई है, लेकिन अभी भी नीति सुविधाएँ सीमित हैं।
सबसे पहले ऊपर साइट से नवीनतम ऐडऑन डाउनलोड करें। मेरा मानना है कि उबंटू और डेबियन के विपरीत, सेंटोस के लिए कोई आरपीएम नहीं है। फिर भी, यह सलाह दी जाती है कि नवीनतम संस्करण का उपयोग किया जाए। अधिक विशेष रूप से, संस्करण 1.32 (जो उदाहरण में मौजूद है। Ubuntu 14.04LTS रेपो) में एक गंदा बग है जो इसे उचित रूप से कार्य करने से रोकता है। संस्करण 1.35 इसे बाहर छाँटते हैं।
सुनिश्चित करें कि ये PERL मॉड्यूल मौजूद हैं। यदि डेबियन या उबंटू का उपयोग कर रहे हैं, तो आप रिपॉज से स्थापित कर सकते हैं ताकि सभी निर्भरताएं स्वचालित रूप से हल हो जाएं और फिर /usr/sbin/postfwd
नवीनतम संस्करण के साथ बदल दें ।
फिर नियम बनाएं। एक फ़ाइल बनाएं जैसे /etc/postfwd.cf
या /etc/postfix/postfwd.cf
जोड़ें:
id=R001; sender=~/.*/; action=rate(sender/100/86400/REJECT only 100 messages per day for $$sender)
id=R002; sender=~/.*/; action=rate(sender/50/3600/REJECT only 50 messages per hour for $$sender)
उपरोक्त नियमों में स्पष्ट रूप से दो नियम हैं जो सभी प्रेषकों के लिए मूल्यांकन करते हैं। rate
क्रिया का वाक्य विन्यास है:
rate (<item>/<max>/<time in sec>/<action>)
अन्य दर के उदाहरण यहां देखे जा सकते हैं । सिंटैक्स का संदर्भ प्रलेखन पर पाया जा सकता है । इसी तरह की चर्चा यहाँ मिल सकती है । SASL कार्यान्वित किया जाता है तो (जैसे Dovecot) आप सुरक्षित रूप से जगह ले सकता है sender
के साथ sasl_username
। आप -C
विकल्प के साथ नियमों की वैधता का परीक्षण कर सकते हैं :
postfwd -f /etc/postfwd.cf -C
बाद में, आप वैकल्पिक रूप से एक समर्पित उपयोगकर्ता और समूह बना सकते हैं, postfwd
जिसके तहत पोस्टफ़ीड चलाएगा और उसे लॉन्च करेगा:
postfwd --daemon -f /etc/postfwd.cf -u postfwd -g postfwd
उपयुक्त (डेबियन, उबंटू आदि) से स्थापित होने के मामले में, इसके तहत एक कॉन्फ़िगरेशन फ़ाइल भी होनी चाहिए /etc/default/postfwd
और आप सेवा को ठीक से शुरू कर सकते हैं, जैसे sudo service postfwd start
।
फिर लॉग को देखने के लिए सत्यापित करें कि पोस्टफीड सुन रहा है। Postfwd पोस्टफिक्स (जैसे /var/log/mail
या /usr/local/psa/var/log/maillog
आदि) के रूप में एक ही लॉग का उपयोग करता है और एक पंक्ति के रूप postfwd 1.35 ready for input
में जगह में होना चाहिए।
फिर, पोस्टफ़िक्स को पोस्टफ़ीड का उपयोग करने के लिए बताएं। पोस्टफ़िक्स कॉन्फ़ फ़ाइल (आमतौर पर /etc/postfix/main.cf
) और लाइन में संपादित करें :
smtpd_recipient_restrictions = permit_mynetworks,...
जोड़ते हैं check_policy_service inet:127.0.0.1:10040
। कृपया विचार करें कि आपने इसे जिस क्रम में रखा है, smtpd_recipient_restrictions
उसका बहुत महत्व है और आप समय का एक बड़ा सौदा खर्च कर सकते हैं जो कि गलत हो सकता है। जैसा कि इस सवाल में बताया गया है , यदि कोई चेक ठीक है या ठीक है तो पोस्टफिक्स अगले एक पर जारी नहीं रहता है, इसलिए आपको संभवतः इसे उच्च स्थान पर रखना चाहिए।
अंतिम, यह जांचने के लिए कि यह काम करता है या तो आप एक बहुत छोटी सीमा को निर्दिष्ट कर सकते हैं जैसे 1 या यहां तक कि एक नियम भी जोड़ सकते हैं id=DEFAULT; action=dunno
। कोई भी नियम हिट वैसे भी लॉग इन हो जाता है। कृपया यह भी ध्यान रखें कि प्रति प्रेषक की दर सीमा एक एकल प्राप्तकर्ता या एकाधिक प्राप्तकर्ताओं के साथ एक एकल ईमेल के साथ mulitple ईमेल के बीच अंतर नहीं करती है।
फिर एक खाते से एक ईमेल भेजें (उस सर्वर में) और लॉग देखें:
grep "RULES" /var/log/mail
अन्य लिंक: पोस्टफीड क्विकस्टार्ट ।