Postfix ile farklı iplerden eposta göndermek
Postfix 3.0 versiyonuyla gelen randmap özelliği sayesinde her table lookup sorgusundan rasgele bir dönüş gelir. Örneğin 3 adet değeriniz var diyelim ve her sorgulamada bir değer rasgele seçilir. Biz de bu yapıyı kullanarak tek bir sunucu üzerinden ama farklı ip adreslerinden eposta göndereceğiz ve bu sayede bedava eposta hizmeti sunan sistemlerin günlük eposta alma limitlerine takılmayacağız.
Ayrıca bu randmap özelliğiyle yük dengeleme de yapabilirsiniz.
randmap: Her tablo sorgusundan rasgele sonuçlar döndürür.
#Kurulum Öncesi
Gerçek sunucu ip adresi : 192.168.1.230
Sanal Ip 1 : 192.168.1.231
Sanal Ip 2 : 192.168.1.232
Sanal Ip 3 : 192.168.1.233
#Kurulum
1. master.cf dosyasına ekleyeciğimiz ip adresleri /etc/network/interface dosyasında vip olarak tanımlanır.
iface enp6s1:0 inet static
address 192.168.1.231/24
iface enp6s1:1 inet static
address 192.168.1.232/24
iface enp6s1:2 inet static
address 192.168.1.233/24
Interfaceler ayağa kaldırılır.
ifup enp6s1:0;ifup enp6s1:1;ifup enp6s1:2
2. vim /etc/postfix/master.cf dosyasını açıp aşağıdaki satırları kendinize göre düzenleyin ve kaydedin.
relay1 unix - - n - - smtp
-o smtp_bind_address=192.168.1.231
-o smtp_helo_name=mail1.deneme.org
-o syslog_name=relay1
relay2 unix - - n - - smtp
-o smtp_bind_address=192.168.1.232
-o smtp_helo_name=mail2.deneme.org
-o syslog_name=relay2
relay0 unix - - n - - smtp
-o smtp_bind_address=192.168.1.230
-o smtp_helo_name=mail0.deneme.org
-o syslog_name=relay0
relay3 unix - - n - - smtp
-o smtp_bind_address=192.168.1.233
-o smtp_helo_name=deneme.org
-o syslog_name=relay3
3. vim /etc/postfix/main.cf dosyasına asağıdaki 2 satırı ekliyoruz.
sender_dependent_default_transport_maps = randmap:{relay0,relay1,relay2,relay3}
smtp_connection_cache_on_demand=no
4. Postfix servisi yeniden başlatılır.
systemctl restart postfix
Bundan sonraki kısım tamamen local ip adreslerinin dışarıya hangi ip ile natlanacağı kısımdır.
Örnek : 192.168.1.230 > 88.xx.x.55
Örnek : 192.168.1.231 > 88.xx.x.56
Örnek : 192.168.1.232 > 88.xx.x.57
Örnek : 192.168.1.233 > 88.xx.x.58
Gönderilmiş olan epostalar belirtmiş olduğumuz ip adreslerinden rasgele çıkacaktır. Loglarda relay{0,1,2,3} olarak takip edebilirsiniz.
Örnek Log:
Sep 27 16:46:28 duyuru **relay0/smtp**[15703]: E1358BC7C37: to=<deneme@deneme.org>, relay=gw.deneme.org[1.1.1.1]:25, delay=2, delays=0.01/0/1.6/0.44, dsn=2.0.0, status=sent (250 2.0.0 Ok: queued as A5BE7C12C89
Sevgiler.
Comments
Leave a Comment