存档2021

Zimbra 邮箱服务器




Zimbra 邮箱服务器


zimbra 搭建

    # df -h                                            \\ 程序会 安装到 /opt 下面 看是否有足够空间
    # echo 'mail.syk.my' > /etc/hostname
    # hostnamectl set-hostname mail.syk.my           \\ 主机名一定要对上 否则要hosts文件 报错 
    # ifconfig                                            \\ 一定要核对ip地址
    # echo '47.91.219.64 mail.syk.my ' >> /etc/hosts   \\ 必须是网卡上的ip地址 否则会在安装的时候 报ldap错误
    # systemctl stop sendmail
    # systemctl disable sendmail
    # systemctl stop postfix
    # systemctl disable postfix
    # yum install perl perl-core ntpl nmap sudo libidn gmp libaio libstdc++ unzip sysstat sqlite nc
    # wget https://files.zimbra.com/downloads/8.6.0_GA/zcs-8.6.0_GA_1153.RHEL7_64.20141215151110.tgz
    # tar -zxvf zcs-8.6.0_GA_1153.RHEL7_64.20141215151110.tgz
    # mv zcs-8.6.0_GA_1153.RHEL7_64.20141215151110 zimbra
    # cd zimbra
    # ./install.sh --platform-override                              \\ 有特殊地方下面已经标明 其他地方 都是 y 或 yes
        Do you agree with the terms of the software license agreement? [N] y   \\ 同意 继续安装
        Change domain name? [Yes] no                                            \\ 这回报个 error 可选择no 跳过即可

        Address unconfigured (**) items (? - help) 7                         \\ 选择 7
        Select, or 'r' for previous menu [r] 4                                \\ 选择 4 更改管理员密码
        Password for admin@hongxue.com (min 6 characters): [1ewBUZwGo] 123456  \\ 设置管理员密码 123456
        Select, or 'r' for previous menu [r] r                                  \\ 按r 返回上一级
        Select from menu, or press 'a' to apply config (? - help) a              \\ 按 a

        Notify Zimbra of your installation? [Yes] no             \\  跳过zimbra通知

    # vim /etc/sysconfig/iptables                                  \\ 防火墙 需要开通的端口
        -A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT
        -A INPUT -p tcp -m state --state NEW -m tcp --dport 443 -j ACCEPT
        -A INPUT -p tcp -m state --state NEW -m tcp --dport 25 -j ACCEPT
        -A INPUT -p tcp -m state --state NEW -m tcp --dport 110 -j ACCEPT
        -A INPUT -p tcp -m state --state NEW -m tcp --dport 143 -j ACCEPT
        -A INPUT -p tcp -m state --state NEW -m tcp --dport 465 -j ACCEPT
        -A INPUT -p tcp -m state --state NEW -m tcp --dport 995 -j ACCEPT
        -A INPUT -p tcp -m state --state NEW -m tcp --dport 993 -j ACCEPT
        -A INPUT -p tcp -m state --state NEW -m tcp --dport 587 -j ACCEPT
        -A INPUT -p tcp -m state --state NEW -m tcp --dport 7025 -j ACCEPT
        -A INPUT -p tcp -m state --state NEW -m tcp --dport 8443 -j ACCEPT
        -A INPUT -p tcp -m state --state NEW -m tcp --dport 7071 -j ACCEPT
    # systemctl restart iptables

    # su - zimbra             \\ 切换到 zimbra 账号  对于zimbra 操作 需要 切换到 zimbra 用户
    $ zmcontrol status         \\ 可查看服务运行状态
    $ zmcontrol restart         \\ 重启 zimbra 服务
    $ zmcontrol stop             \\ 停止 zimbra 服务

    邮箱页面  https://mail.syk.my    \\ 默认是不支持 80端口访问的 需要加 https
        管理用户: admin
        密码: 123456                       \\ 密码 为上面 设置的密码

    管理后台  https://mail.syk.my:7071
        管理用户: admin
        密码: 123456


    注:
        1. 如果在安装的时候报 ldap的错误 是由于删除了 /opt 下的文件 而系统里面包还存在 要删除系统里的包后 重新安装
            # rpm -ql | grep zimbra*
            # yum remove zimbra*

            # /opt/zimbra/libexec/zmsetup.pl      \\ 如有中途报错 待修复错误  此命令 可以继续安装

        2. 关于解析:  mail.syk.my 解析到服务器  另外还需要添加   MX     @     mail.syk.my
        3. 这个四个文件不能修改 会报错
            slapd.crt     slapd.key     smtpd.crt     smtpd.key


关于 更换证书                \\ 如果 使用certab 申请证书 可直接申请 或 把开启80端口的配置文件 注释掉试试  未测试
    # cd /opt/zimbra/conf                       \\ 更换以下 两个 文件即可
    # cp -a nginx.crt nginx_2021.5.14.crt        \\ 记得备份 原有的 证书文件 
    # cp -a nginx.key nginx_2021.5.14.key         \\ 导入 相关证书
    # chown zimbra.zimbra nginx.crt                \\ 不要给多了 不能使用 ./* 赋予权限  启动时候会报其他权限错误
    # chown zimbra.zimbra nginx.key
    # su - zimbra
    $ zmcontrol restart


关于 启用 80 端口 强制跳转 https

    # cd /opt/zimbra/conf/nginx/includes/
    # vim nginx.conf.web                            \\ 修改配置文件
        include /opt/zimbra/conf/nginx/includes/mail.syk.my.conf;
    # vim mail.syk.my.conf                         \\ 创建配置文件
        server{
            listen 80;
            server_name mail.syk.my;
            rewrite ^(/.*)$ https://$host$1 permanent;
        }
    # chown zimbra.zimbra mail.ym8.tv.conf
    # su - zimbra             \\ 切换到 zimbra 账号  对于zimbra 操作 需要 切换到 zimbra 用户
    $ zmcontrol restart        \\ 重启 zimbra 服务


关于 zimbra jira  confluence 的备份

zimbra 备份
 
    备份目录  /home/bak/mail_192.168.10.10/
    备份脚本 /home/bak/mail_192.168.10.10/zimbra_bak.sh

        #!/bin/bash
        # 更新备份整个zimbra
        rsync -avzP --port=63873 root@192.168.10.10::zimbra /home/bak/mail_192.168.10.10/zimbra  >> /home/bak/mail_192.168.10.10/log_bak/zimbra_bakup_log.`date +%Y%m%d`.log
        sleep 10
        tar zcf /home/bak/mail_192.168.10.10/tar_bak/zimbra_bak_`date +%Y_%m_%d`.tar.gz /home/bak/mail_192.168.10.10/zimbra &>/dev/null
        ##清除超过3天的备份
        find /home/bak/mail_192.168.10.10/tar_bak/ -type f -mtime +7 -exec rm -f {} \;
        ##清除超过7天的日志
        find /home/bak/mail_192.168.10.10/log_bak/ -type f -mtime +7 -exec rm -f {} \;


jira 备份
     
    数据备份目录  /home/bak/jira_192.168.10.11/jira_data/
    附件备份目录  /home/bak/jira_192.168.10.11/jira_attachments_tar_bak/
     
     
    备份脚本 /home/bak/jira_192.168.10.11/zimbra_bak.sh

        #!/bin/bash
        # 备份jira 数据库及附件
        rsync -avzP --port=63873 root@192.168.10.11::jira_data /home/bak/jira_192.168.10.11/jira_data/  >> /home/bak/jira_192.168.10.11/log_bak/jira_data_back_log.`date +%Y%m%d`.log
        sleep 10
        ##清除超过30天jara_data的备份
        find /home/bak/jira_192.168.10.11/jira_data/ -type f -mtime +30 -exec rm -f {} \;
        sleep 2
        rsync -avzP --port=63873 root@192.168.10.11::jira_attachments /home/bak/jira_192.168.10.11/jira_attachments/  >> /home/bak/jira_192.168.10.11/log_bak/jira_attachments_back_log.`date +%Y%m%d`.log
        tar zcf /home/bak/jira_192.168.10.11/jira_attachments_tar_bak/jira_attachments_bak_`date +%Y_%m_%d`.tar.gz /home/bak/jira_192.168.10.11/jira_attachments &>/dev/null
        ##清除超过7天jara_attachments的备份
        find /home/bak/jira_192.168.10.11/jira_attachments_tar_bak/ -type f -mtime +7 -exec rm -f {} \;
        ##清除超过7天的日志
        find /home/bak/jira_192.168.10.11/log_bak/ -type f -mtime +7 -exec rm -f {} \;


confluence 备份
 
    数据备份目录  /home/bak/confluence_192.168.10.11/confluence_data/
    附件备份目录  /home/bak/confluence_192.168.10.11/confluence_attachments_tar_bak/
     
     
    备份脚本 /home/bak/confluence_192.168.10.11/confluence_bak.sh
         
        #!/bin/bash
        # 备份confluence 数据库及附件
        rsync -avzP --port=63873 root@192.168.10.11::confluence_data /home/bak/confluence_192.168.10.11/confluence_data/  >> /home/bak/confluence_192.168.10.11/log_bak/confluence_data_back_log.`date +%Y%m%d`.log
        sleep 10
        ##清除超过30天jara_data的备份
        find /home/bak/confluence_192.168.10.11/confluence_data/ -type f -mtime +30 -exec rm -f {} \;
        sleep 2
        rsync -avzP --port=63873 root@192.168.10.11::confluence_attachments /home/bak/confluence_192.168.10.11/confluence_attachments/  >> /home/bak/confluence_192.168.10.11/log_bak/confluence_attachments_back_log.`date +%Y%m%d`.log
        tar zcf /home/bak/confluence_192.168.10.11/confluence_attachments_tar_bak/confluence_attachments_bak_`date +%Y_%m_%d`.tar.gz /home/bak/confluence_192.168.10.11/confluence_attachments &>/dev/null
        ##清除超过7天jara_attachments的备份
        find /home/bak/confluence_192.168.10.11/confluence_attachments_tar_bak/ -type f -mtime +7 -exec rm -f {} \;
        ##清除超过7天的日志
        find /home/bak/confluence_192.168.10.11/log_bak/ -type f -mtime +7 -exec rm -f {} \;







Samba 文件共享




Samba 文件共享



Samba 安装

    # yum install samba samba-client.x86_64 samba-common
    # vim /etc/samba/smb.conf
        [global]
            workgroup = WORKGROUP
            server string = Samba Server Version %v
            netbios name = teo
            map to guest = bad user
            log file = /var/log/samba/log.%m
            max log size = 50
            security = user
            passdb backend = tdbsam

        [share]                    \\ 无帐号密码即可访问
           comment = share
           path = /data/share
           browseable= yes
           create mask = 0644
           directory mask = 0755
           writable = yes        \\ 是否可写入  不开启则不可写入 即使 777权限
           guest ok = yes         \\ 指定该共享是否允许guest账户访问即匿名访问 默认是no

        [share1]                    \\ 需要帐号密码才能访问  不需要验证 不需加入此代码
            comment = share1
            path = /data/share1
            valid users = teo          \\ 白名单用户或组 samba为创建的teo用户
            write list = teo            \\ 可写用户或组列表
            create mask = 0755
            directory mask = 0755

    # mkdir -p /data/share
    # chmod 777 /data/share           \\ 如果允许修改 需要目录有 写权限
    # systemctl start smb              \\ 445   139 被监听     一定要关闭 selinux

    验证:                                \\ 如果不开启验证 则不需要 以下命令
        # useradd teo -s /sbin/nologin    \\ 在系统中创建teo用户
        # pdbedit -a -u teo                \\ 在samba中创建的teo用户 此用户必须是系统中的用户
        # pdbedit -L                        \\ 查看 samba 用户
        # smbpasswd -x teo                   \\ 在samba中 删除 teo用户


Windows 客户端 访问
    运行 --> \\172.21.34.204      或      file://172.21.34.204/share     或   加到映射


Linux 客户端 访问
    # yum install samba-client
    # smbclient -L 172.21.34.204      \\ 查看共享的目录 会提示密码 直接回车 因为没有密码
    # smbclient //172.21.34.204/share
        smb: \> ls
        smb: \> get a.txt                \\ 下载 a.txt   会下载到当前文件夹
        smb: \> put aa.txt                \\ 上传 aa.txt 会把当前文件夹上传 需要写权限 并 目录有写权限


    # yum install cifs-utils                \\ linux访问 方法二 可使用此工具 挂载 进行操作 如有需要 可查看