पोस्टफिक्स को दूसरे आईपी पते का उपयोग कैसे करें?


21

मैं पोस्टफ़िक्स मेल सर्वर का उपयोग कर रहा हूं और मेरे पास 6 आईपी उपलब्ध हैं। मैं वेब सर्वर के उपयोग की तुलना में मेल भेजने के लिए पोस्टफिक्स मेल सर्वर के लिए एक और आईपी का उपयोग करना चाहता हूं।

मैं यह कैसे कर सकता हूँ? मेरा उपसर्ग संस्करण 2.3.3 है।

उदाहरण के लिए: मुख्य आईपी: 66.66.66.66 अन्य आईपी: 66.66.66.67

जवाबों:


25

आप चाहते हैं smtp_bind_address=66.66.66.67औरinet_interfaces=all या inet_interfaces=eth(whatever)कि 66.66.66.67 पर है।

वह परिवर्तन करें, फिर पोस्टफ़िक्स को रोकना / शुरू करना। यदि आप बदल रहे हैं तो आप बस पुनः लोड नहीं कर सकतेinet_interfaces


मैंने smtp_bind_address विकल्प की कोशिश की है, लेकिन तब मेरा मेल सर्वर अब मेल नहीं भेजता है। और मुझे नहीं लगता कि inet_interfaces को बदलना होगा क्योंकि मैं उस सर्वर पर मेल प्राप्त नहीं करना चाहता। ध्यान दें, इस आईपी का उपयोग केवल मेल भेजने के लिए किया जाता है।
अर्थमाइंड

कृपया अपना पोस्ट करें postconf -nताकि हम देख सकें कि आप किस बारे में बात कर रहे हैं। उदाहरण के रूप में निजी आइपी (10.xxx, आदि) और डोमेन के रूप में आईपी को अज्ञात करें। यदि आपको लगता है कि आपको ज़रूरत है तो (कॉम | नेट | | जो कुछ भी)।
बिल वीस

2
smtp_bind_address सही तरीका था और मेरे पास ईमेल वितरण में देरी थी क्योंकि नया आईपी मैं उपयोग कर रहा था जिसका कोई आरडीएनएस रिकॉर्ड नहीं था। आपकी मदद के लिए धन्यवाद।
अर्थमाइंड

3
smtp_bind_addressIPv4 पता सेट करता है, IPv6 बराबर हैsmtp_bind_address6
पॉल टोबियास

16

यदि आप "smtp_bind_address" समाधान का उपयोग करते हैं तो आपका मेल सर्वर आने वाले मेल के लिए भी उस निर्दिष्ट आईपी पते पर ही सुनेगा। यही बात "inet_interfaces" समाधान पर लागू होती है। यदि आप कई आईपी पते / इंटरफेस पर आने वाले मेल को सुनना चाहते हैं तो यह वांछित समाधान नहीं हो सकता है।

मेरा समाधान बेहतर है, क्योंकि मैं सुझाव देता हूं कि डिफ़ॉल्ट "smtp_bind_address" और "inet_interfaces" सेटिंग्स को न बदलें, इसलिए आपका मेल सर्वर अभी भी सभी आईपी पते पर आने वाले मेल के लिए सुनेगा।

केवल अपनी /etc/postfix/master.cf फ़ाइल में एक छोटा सा बदलाव करने की आवश्यकता है।

इस भाग को बदलें:

smtp यूनिक्स - - - - - smtp
# बैकअप एमएक्स के रूप में मेल रिले करते समय, एमएक्स लूप से बचने के लिए फॉलबैक_रेल को अक्षम करें
रिले यूनिक्स - - - - - smtp
        -o smtp_fallback_relay =

इसके लिए:

smtp यूनिक्स - - - - - smtp
        -o smtp_bind_address = 192.168.0.1
# बैकअप एमएक्स के रूप में मेल रिले करते समय, एमएक्स लूप से बचने के लिए फॉलबैक_रेल को अक्षम करें
रिले यूनिक्स - - - - - smtp
        -o smtp_bind_address = 192.168.0.1
        -o smtp_fallback_relay =

बेशक, 192.168.0.1 के बजाय आपको अपने आईपी पते में से एक का उपयोग करना होगा, जिसे आप अपना मेल भेजना चाहते हैं।

ज़ोल्टन


मुझे लगता है कि उस समय मैं चाहता था कि मेल सर्वर केवल इनकमिंग और आउटगोइंग दोनों ईमेल के लिए एक ही आईपी एड्रेस सुने। लेकिन कभी नहीं, मैं अतिरिक्त जानकारी की सराहना करता हूं। धन्यवाद।
अर्थमाइंड

1
इस ipv6 के साथ काम करेंगे? यदि हां, तो क्या मैं दो पते शामिल कर सकता हूं और प्रत्येक में से एक को बांध सकता हूं? इस समाधान के साथ मैं अभी भी ipv6 पर आउटगोइंग मेल प्राप्त कर रहा हूं, न कि मेरे द्वारा निर्दिष्ट IPv4 पते
बिलीन्हो

मैंने जोड़ा -o smtp_bind_address6=1:2:3:4:5:6:7:8और काम करने लगता है।
बिलियोनह

1
यह सही नहीं है। यह है करने के लिए उन सभी को जोड़ने के माध्यम से पोस्टफ़िक्स कई इंटरफेस पर सुनने करना संभव inet_interfacesकरने के लिए इसे स्थापित करने के लिए या सिर्फ - all(डिफ़ॉल्ट) और को विन्यस्त smtp_bind_addresssmtp_bind_address (या smtp_bind_address6) द्वारा निर्दिष्ट एक पता तब स्वतंत्र रूप से पोस्टफिक्स smtp भेजने की प्रक्रिया के लिए उपयोग किया जाता है।
maxschlepzig

मैंने अपने मास्टर.cf में -o smtp_bind_address जोड़ा और यह काम नहीं किया। मैंने इसे main.cf में इस्तेमाल किया और इसने काम किया।
आरिब सू यासिर

10

master.cf

विभिन्न इंटरफेस बनाएँ। प्रत्येक डोमेन के लिए एक:

rotate1  unix -       -       n       -       -       smtp
          -o syslog_name=postfix-rotate1
          -o smtp_helo_name=domainone.com.br
          -o smtp_bind_address=173.111.111.1

rotate2  unix -       -       n       -       -       smtp
          -o syslog_name=postfix-rotate2
          -o smtp_helo_name=domaintwo.com.br
          -o smtp_bind_address=173.111.111.2

main.cf

  1. अन्य सभी परिवहन मानचित्रों को अक्षम करें, अर्थात: # transport_maps = xxxxx

  2. निर्भर परिवहन मानचित्र सक्षम करें (पोस्टफिक्स 2.7.x या बाद के संस्करण की आवश्यकता है)

प्रेषक_निर्भर_देफॉल्ट_ट्रांसपोर्ट_मैप्स = mysql: /etc/postfix/config/transport_random_dependent.cf

transport_random_dependent.cf

उदाहरण:

user = postfix
password = mypassword
dbname = postfixdb
hosts = localhost
query = SELECT transport FROM transport_random WHERE domain = '%d' AND status='1' ORDER BY RAND() LIMIT 1

तालिका transport_random

Column "transport" = rotate1, rotate2, rotate3, rotate4 (etc)
Column "domain" = sender domains (replaced by %d)
Column "status" = boolean (0 or 1) if is enabled the transport.

निर्देश "रैंड () सीमा 1" केवल तभी आवश्यक है जब आप एक ही डोमेन के लिए यादृच्छिक परिवहन का उपयोग करना चाहते हैं।

उदाहरण के लिए, आप 3 अलग-अलग आईपी से mydomain.com से भेजना चाहते हैं।

फिर, आप 3 अलग-अलग आईपी के साथ 3 ट्रांसपोर्ट (रोट 1, रोट 2 और रोट 3) बनाते हैं, फिर mysql लाइनों पर सेट होते हैं:

transport = rotate1 | domain = mydomain.com
transport = rotate2 | domain = mydomain.com
transport = rotate3 | domain = mydomain.com

फिर, जब पोस्टफिक्स इस ईमेल को भेजने के लिए तीन अलग-अलग ट्रांसपोर्ट (एक से तीन को घुमाएंगे) को यादृच्छिक करेगा।


3

/Etc/postfix/main.cf संपादित करें और सुनिश्चित करें कि निम्न पंक्ति मौजूद है

inet_interfaces = 66.66.66.67, localhost

फिर "पोस्टफिक्स रीलोड" चलाएं


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