技术解析

Nginx服务器 透明代理 SMTP,隐藏发信源 IP
0
2021-04-29 16:46:19
idczone

之前一直在用 haproxy,但是似乎总会死掉,要定期重启才可以。这次直接换成 nginx 了。

本次以 mailgun.com 的 SMTP 服务举例,在 nginx 配置好后,到需要发信的服务器,使用 hosts 将 smtp.mailgun.org 域名指向到代理的服务器 IP 即可。

直接贴配置:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
stream {
  log_format proxy '$remote_addr [$time_local] '
       '$protocol $status $bytes_sent $bytes_received '
       '$session_time "$upstream_addr" '
       '"$upstream_bytes_sent" "$upstream_bytes_received" "$upstream_connect_time"';
 
  server {
      listen 25;
      proxy_pass smtp.mailgun.org:25;
      access_log  /www/wwwlogs/access.stream.log proxy;
  }
 
  server {
      listen 465;
      proxy_pass smtp.mailgun.org:465;
      access_log  /www/wwwlogs/access.stream.log proxy;
  }
 
  server {
      listen 587;
      proxy_pass smtp.mailgun.org:587;
      access_log  /www/wwwlogs/access.stream.log proxy;
  }
 
  server {
      listen 2525;
      proxy_pass smtp.mailgun.org:2525;
      access_log  /www/wwwlogs/access.stream.log proxy;
  }
}

记得添加防火墙白名单:

1
2
firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="8.8.8.8/24"   accept"
firewall-cmd --reload

Categories


数据地带为您的网站提供全球顶级IDC资源
在线咨询
专属客服