gpt4 book ai didi

ubuntu - 在 Ubuntu 12.04 上的 Nginx 中设置 iRedMail 管理站点

转载 作者:太空宇宙 更新时间:2023-11-03 12:56:38 26 4
gpt4 key购买 nike

我费了好大劲才让它发挥作用,但在任何地方都找不到可靠的答案,所以我想我会把我的解决方案发布到 SO,这样其他人可能会觉得它有用。

我想在我的 MX 服务器的一个单独的虚拟盒子上运行我所有的 SSL 站点,而 iRedMail 默认情况下不是这样。让 phpMyAdmin 和 roundcube 在带有 nginx 的新服务器上运行很容易,这里不会介绍,但不容易的是让管理面板在带有 uwsgi 的 nginx 下运行。

这样的最终结果是一台服务器只作为邮件服务器,一台运行 nginx 的服务器用于 Web 管理。

最佳答案

我从全新的 Ubuntu 12.04.2 LTS 安装开始,使用默认选项设置 2 个服务器,仅在安装服务器时添加 OpenSSL 以进行远程访问。一台服务器是邮件服务器,一台是 SSL 网络服务器。

在邮件服务器上,我下载了最新版本的 iRedMail(本文发布时为 0.8.4)并运行安装以设置邮件服务器组件。我使用 mySQL 作为我的后端,所以我选中了该选项,输入了我的域信息和密码的其余部分,在最后一页上只选中了 DKIM、iRedAdmin 和 Fail2Ban。

在 web nginx SSL 服务器上...再次默认安装,仅添加 OpenSSL。

以下是以 root 身份运行的命令,用于安装运行管理面板所需的组件:

apt-get update
apt-get install nginx uwsgi uwsgi-plugin-python python-pip python-mysqldb
pip install jinja2
pip install web.py

然后我创建了我希望放置和设置 iRedAdmin 的位置

mkdir /var/www/iredadmin
mkdir /var/www/iredadmin/static
mkdir /var/www/iredadmin/python-home

并复制直接从邮件服务器安装的 iredadmin 并将其放入新服务器的目录中。

scp -r user@mail-server:/usr/share/apache2/iredadmin/* /var/www/iredadmin/

创建位于以下位置的 uwsgi 应用程序配置 ini 文件:/etc/uwsgi/apps-available/iredadmin.ini

[uwsgi]
plugins=python
vhost=true
socket=/var/run/uwsgi/app/iredadmin/iredadmin.socket

创建软链接(soft link)以启用应用程序:

ln -s /etc/uwsgi/apps-available/iredadmin.ini /etc/uwsgi/apps-enabled/iredadmin.ini

为位于/etc/nginx/sites-available/iredadmin 的 nginx 创建虚拟主机配置

server {
listen 443 ssl; ## listen for ipv4; this line is default and implied
access_log /var/log/nginx/iredadmin.access.log;
error_log /var/log/nginx/iredadmin.error.log;

ssl_certificate /etc/nginx/ssl/star.crt;
ssl_certificate_key /etc/nginx/ssl/server.key;
ssl_session_timeout 5m;
ssl_protocols SSLv3 TLSv1;
ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv3:+EXP;
ssl_prefer_server_ciphers on;

server_name iredadmin.server.com;

location / {
root /var/www/iredadmin/;
uwsgi_pass unix:///var/run/uwsgi/app/iredadmin/iredadmin.socket;
uwsgi_param UWSGI_PYHOME /var/www/iredadmin/python-home;
uwsgi_param UWSGI_CHDIR /var/www/iredadmin;
uwsgi_param UWSGI_SCRIPT iredadmin;
include uwsgi_params;
}

location /static {
alias /var/www/iredadmin/static/;
}

location ~ /\.ht {
deny all;
}
}

并创建了一个软链接(soft link)以启用 nginx 站点:

ln -s /etc/nginx/sites-available/iredadmin /etc/nginx/sites-enabled/iredadmin

最后,重新启动服务并从浏览器转到您的服务器名称:

/etc/init.d/uwsgi restart
/etc/init.d/nginx restart

关于ubuntu - 在 Ubuntu 12.04 上的 Nginx 中设置 iRedMail 管理站点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15974056/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com