是否可以在 nginx 第四层服务器上运行邮件服务器?

是否可以在 nginx 第四层服务器上运行邮件服务器?

我刚刚创建了一个第 4 层 nginx 服务器,它用作 kubernetes 集群的负载均衡器。

我知道这是一个非常基本的问题(而且我可能会因此遭到很多反对),但是是否可以在同一台机器上安装和运行邮件服务器?邮件服务器流量是否只是在不同的端口上运行,因此不应该成为问题?

我的 nginx 配置如下:

user www-data;
worker_processes auto;
pid /run/nginx.pid;
include /etc/nginx/modules-enabled/*.conf;

events {
    worker_connections 768;
}

stream {
    upstream http {
        server 123.45.67.170:80;
        server 123.45.67.171:80;
        server 123.45.67.172:80;
    }
    upstream ssl {
        server 123.45.67.170:443;
        server 123.45.67.171:443;
        server 123.45.67.172:443;
    }
    server {
        listen 80;
        proxy_pass http;
    }
    server {
        listen 443;
        proxy_pass ssl;
    }
}

http {
    sendfile on;
    tcp_nopush on;
    types_hash_max_size 2048;

    include /etc/nginx/mime.types;
    default_type application/octet-stream;

    ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3;
    ssl_prefer_server_ciphers on;

    access_log /var/log/nginx/access.log;
    error_log /var/log/nginx/error.log;

    gzip on;

    include /etc/nginx/conf.d/*.conf;
}

我想我必须添加这样的内容:

mail {
    server_name mail.test.com;
    auth_http   http://127.0.0.1:8000;
    xclient off;
    server {
        listen     3333;
        protocol   smtp;
        smtp_auth  none;
    }
}

但如果这是正确的,我应该在这台机器上安装邮件服务器还是应该使用在 k8s 集群中运行的邮件服务器?

答案1

您的假设是正确的,只要这些端口未被使用,您就可以同时运行任何内容。这是否是明智之举又是另一个问题,但绝对是可能的。

出于各种原因,我强烈建议在不同的机器/实例上运行邮件服务器,并且出于生产目的,您可能需要考虑在不同的 IP 上运行它,以便更容易处理黑名单问题。

不用担心,这个平台是用来学习的,而这正是那种无法通过谷歌简单搜索到的问题。版主可能会不同意 :)

相关内容