iRedmail安装参考官方文档

https://ywnz.com/linuxyffq/4563.html

准备工作

更新操作系统

yum update -y

安装必要组件

yum install perl perl-core ntpl nmap sudo libidn gmp libaio libstdc++ unzip sysstat wget nc -y

停止任何安装在该Centos7 Server上面的 MTA服务

systemctl stop postfix
systemctl disable postfix
systemctl stop sendmail
systemctl disable sendmail

修改主机名vi /etc/hostname 改成mail.abc.net

还有/etc/hosts 和,/etc/sysconfig/network 两个地方都要改成IP 主机名形式

127.0.0.1       mail.abc.net localhost

接着开始安装

bash iReadmail.sh

注册数据库的选择,还有要两次输入密码,第一次是数据库,第二次是管理密码

安装完成后reboot。

进行ssl证书申请

yum install certbot
certbot certonly --webroot --agree-tos --email abc.net -d mail.abc.net -w /var/www/html/

装好iRedmail之后,用Let's Encrypt生成证书并修改相关位置,使webmail以及SMTP/IMAP都开启ssl。

再根据生成的iRedMail.tips文件,修改mysql(mariadb)的root用户名密码和权限(有需要的话)。

给nginx添加虚拟主机,修改/etc/nginx/sites-enabled里面的两个文件,一个ssl,一个非ssl

新建的虚拟主机要开ssl的话,一样的操作

 certbot certonly -d abc.com -d www.abc.com

出来的选项,选第3个,然后输入绑定的webroot目录,如

/var/www/hosts/abc.com
会生成相应的证书文件。

然后打开非ssl配置文件00-default.conf,在后面添加,因为我要让非ssl的直接跳转到https

server {
if ($host = abc.com) {
return 301 https://www.abc.com$request_uri;
}

if ($host = www.abc.com) {
return 301 https://www.abc.com$request_uri;
}

ssl配置文件中,修改原来的server_name _为server_name mail.abc.net在后面添加,做了修改,以支持PHP

server {
listen 443 ssl;
# listen [::]:443 ssl;
server_name abc.com www.abc.com;

ssl_certificate /etc/letsencrypt/live/abc.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/abc.com/privkey.pem;

location / {
root /var/www/hosts/abc.com;
index index.php index.html index.htm;
}
location ~ \.php$ {
root /var/www/hosts/abc.com;
fastcgi_pass 127.0.0.1:9999;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}

重启nginx即可

 systemctl restart nginx.service

mysql 远程连接时注意修改防火墙

# 查询端口是否开放
firewall-cmd --query-port=/tcp
# 开放3306端口
firewall-cmd --permanent --add-port=/tcp
# 移除端口
firewall-cmd --permanent --remove-port=/tcp #重启防火墙(修改配置后要重启防火墙)
firewall-cmd --reload

php的配置文件在/etc/php.ini,需要修改上传文件大小的限制,max_execution_time,upload_max_filesize,post_max_size,还有/etc/nginx/conf-enabled/client_max_body_size.conf里的client_max_body_size一并修改

修改php设置(/etc/php.ini)

memory_limit = 512M;
upload_max_filesize = 512M;
post_max_size = 512M;

修改 /opt/www/roundcubemail/.htaccess

在末尾加上

php_value    memory_limit   512M
php_value upload_max_filesize 512M
php_value post_max_size 512M

重启服务service php-fpm restart

最后修改的地方

postconf -e message_size_limit='536870912'
postconf -e mailbox_size_limit='536870912'

/sbin/service postfix restart

如果用客户端发送,那关于附件大小的限量就只需要最后一步就行了。

修改后,要systemctl restart php-fpm 一下。

另外,注意将/etc/nginx/templates/roundcube.tmpl文件里的跳转到mail目录的代码注释掉,以防后面添加的虚拟主机访问时,会被跳转

# Redirect URI `/mail` to `/mail/`.
#location = /mail {
# return /mail/;
#}

如果更改了mysql的root密码,记得 vi /root/.my.cnf文件,修改一下,不然系统在自动备份邮件操作时会失败

另外,域名的自动续期要加一下,每隔60天凌晨4点自动续,证书有效期90天,所以,没有必要太频繁

  */ * * /bin/certbot renew --renew-hook "/sbin/service nginx reload"

另外,修改界面方面:

/opt/www/roundcubemail-1.4.2/config

里的$config['product_name']可以改一下

还可以使用别名,

参考:http://www.iredmail.org/docs/sql.create.mail.alias.html

https://bill.tt/2016/03/20/iRedMail%E8%AE%BE%E7%BD%AE%EF%BC%9A%E9%82%AE%E7%AE%B1%E5%88%AB%E5%90%8D%E3%80%81%E9%BB%98%E8%AE%A4%E6%8E%A5%E6%94%B6%E9%82%AE%E7%AE%B1%E7%AD%89/

centos7 安装 iRedmail 后 给nginx添加虚拟主机的更多相关文章

  1. nginx 添加虚拟主机 支持php 伪静态

    1添加虚拟主机 进入 /usr/local/nginx/conf/vhost 目录, 创建虚拟主机配置文件 demo.neoease.com.conf ({域名}.conf). 2. 打开配置文件, ...

  2. [转] linux学习第四十四篇:Nginx安装,Nginx默认虚拟主机,Nginx域名重定向

    Nginx安装 进入存放源码包的目录: cd /usr/local/src 下载源码包: wget http://nginx.org/download/nginx-1.12.1.tar.gz 解压: ...

  3. nginx的安装 、Nginx默认虚拟主机、nginx用户认证、nginx 域名重定向

    1.nginx:官网:www.nginx.org 下载:wget -c  http://nginx.org/download/nginx-1.14.0.tar.gz解压:tar -zxvf nginx ...

  4. Centos7安装成功后,网卡配置及更改镜像地址为国内镜像

    Centos7安装成功后,网卡配置及更改镜像地址为国内镜像 一.网卡配置 二.修改网络配置 踩坑一:IPADDR 踩坑二:网关,DNS与本地不一致 重启网络服务 三.镜像修改为aliyun 四.相关知 ...

  5. 烂泥:使用nginx利用虚拟主机搭建WordPress博客

    本文由秀依林枫提供友情赞助,首发于烂泥行天下. 最近开始打算学习nginx web服务器,既然是学习还是以实用为目的的.我们在此以搭建WordPress博客为例. 搭建WordPress博客,我们需要 ...

  6. Linux安装Nignx基于域名的多虚拟主机实战

    看这个文章之前,要保证你的Nginx已经安装成功! 如果没有,请移步到下面这个文章,看完后再回来看! https://www.cnblogs.com/apollo1616/p/10214531.htm ...

  7. 编译安装基于 fastcgi 模式的多虚拟主机的wordpress和discuz的LAMP架构

    目录 实现CentOS 7 编译安装基于 fastcgi 模式的多虚拟主机的wordpress和discuz的LAMP架构 准备环境: 准备软件版本: 主机名修改用以区分 数据库服务器 实现数据库二进 ...

  8. Nginx中虚拟主机配置

    一.Nginx中虚拟主机配置 1.基于域名的虚拟主机配置 1.修改宿主机的hosts文件(系统盘/windows/system32/driver/etc/HOSTS) linux : vim /etc ...

  9. LNMP一键安装包添加虚拟主机、删除虚拟主机及如何使用伪静态

    本文主要介绍LNMP一键安装包添加虚拟主机.删除虚拟主机及如何使用伪静态. 一.添加虚拟主机通俗点就是在VPS/服务商上添加一个网站(域名). 需要执行如下命令:/root/vhost.sh 执行后会 ...

随机推荐

  1. VS2019菜单栏没有团队选项解决方法

    新安装了Visual Studio 2019结果菜单栏没有“团队”菜单,导致没办法连接TFS服务器,查了下网上也并没有对应解决方法(甚至遇见这个问题的都没有/笑哭,所以这个方法写出来也大概没什么用) ...

  2. zm吃包子

    [题目背景]: zm 喜欢上了吃包子. [题面描述]: zm 每天都要去买包子,但是为了减肥,zm 设置了一系列规则来控制他每天买包子的数量. 他随机了 n 个特殊字符串,然后用 n 个字符串来衡量接 ...

  3. rabbitmq系列(二)几种常见模式的应用场景及实现

    一.简单模式 原理:生产者将消息交给默认的交换机,交换机获取消息后交给绑定这个生产者的队列(投递规则为队列名称和routing key 相同的队列),监听当前队列的消费者获取信息并执行消费逻辑. 场景 ...

  4. 从操作系统层面理解Linux下的网络IO模型

    I/O( INPUT OUTPUT),包括文件I/O.网络I/O. 计算机世界里的速度鄙视: 内存读数据:纳秒级别. 千兆网卡读数据:微妙级别.1微秒=1000纳秒,网卡比内存慢了千倍. 磁盘读数据: ...

  5. CVE-2019-0708远程桌面服务远程执行代码漏洞exp利用过程

    CVE-2019-0708远程桌面服务远程执行代码漏洞 上边这洞是啥我就不多说了,描述类的自行百度. 受影响系统版本范围: Windows Server 2008 R2 Windows Server ...

  6. Linux session(会话)

    笔者在前文<Linux job control>中介绍了进程组(job)的概念以及常见的 job control 操作,本文接着介绍 session 的概念.本文中演示部分使用的环境为 u ...

  7. LGV - 求多条不相交路径的方案数

    推荐博客 :https://blog.csdn.net/qq_25576697/article/details/81138213 链接:https://www.nowcoder.com/acm/con ...

  8. ubuntu系统搭建(jdk1.8+mysql5.7.28+Hadoop2.7.7+hive3.1.2)

    一不小心电脑没电关机之后虚拟机就挂了,然后下定决心重新搭一个虚拟机. 以下是几天安装过程的记录以及一些小提示,包括在ubuntu中安装jdk1.8+mysql5.7.28+Hadoop2.7.7+hi ...

  9. 60 个让程序员崩溃的瞬间,太TM真实了

    前方高能!笑死人不偿命系列~ 表演即将开始,吃东西的请停下来,不然你会后悔的 1. 公司实习生找 Bug 2. 在调试时,将断点设置在错误的位置 3. 当我有一个很棒的调试想法时 4. 偶然间看到自己 ...

  10. 「 神器 」在线PDF文件管理工具和图片编辑神器

    每天进步一丢丢,连接梦与想 在线PDF文件管理工具 完全免费的PDF文件在线管理工具,其功能包括:合并PDF文件.拆分PDF文件.压缩PDF文件.Office文件转换为PDF文件.PDF文件转换为JP ...