#!/bin/bash
# 2024-12

#用户检测
if [ $USER != "root" ]; then
  echo "请用root用户操作！"
  exit
fi

#获取脚本根目录，并设为只读
readonly INITDIR=$(cd $(dirname $0); dirname "$PWD")
STAMP=`date -d today +"%Y%m%d%H%M%S"`
source $INITDIR/conf/init.conf

yum -y install nc mailx
nc -z 127.0.0.1 22 || echo -e  "\033[31mnc验证失败，注意检查！\033[0m"

mailx -V &> /dev/null || echo -e  "\033[31mmailx验证失败，注意检查！\033[0m"
[ -e /home/common ] && mv /home/common /home/common_$STAMP
mkdir -p /home/common/{etc,bin,log}  && \cp -f $INITDIR/file/daemon/zwlbs_daemon /home/common/bin/ && touch /home/common/log/zwlbs.log 
sed -i "s/monitor@zwlbs.com/$EMAIL/g" /home/common/bin/zwlbs_daemon
sed -i "s/ddtoken/$DING_TOKEN/g" /home/common/bin/zwlbs_daemon
sed -i "s/warnenable/$WARN_ENABLE/g" /home/common/bin/zwlbs_daemon
sed -i "s/AmbariPassword/$AMBARI_PASSWORD/g" /home/common/bin/zwlbs_daemon
sed -i "s/ZwlbsWeb/$WEB_IP/g" /home/common/bin/zwlbs_daemon
touch /home/common/etc/zwlbs.conf
echo  "平台:$F3NAME，Web端IP:$WEB_Internet_IP，版本:$VERSION" > /home/common/etc/zwlbs.conf

touch /home/common/etc/hosts.conf
echo "$ALLHOST" | sed -n '/开始标志/,/结束标志/{/请勿删除/b;p}' > /home/common/etc/hosts.conf
#echo "$WEB_IP $WEBHOST" >> /home/common/etc/hosts.conf
echo "$WEB_Internet_IP $WEBHOST" >> /home/common/etc/hosts.conf

\cp -f $INITDIR/file/daemon/mail.rc /etc/mail.rc
#sed -i "s/service@zwlbs.com/$EMAIL_SERVER/g" /etc/mail.rc
#sed -i "s/smtp.ym.163.com/$EMAIL_SMTP/g" /etc/mail.rc
#sed -i "s/PASSWORD/$EMAIL_PW/g" /etc/mail.rc

#邮件ssl配置
ping -c 1 -W 1 smtp.ym.163.com &> /dev/null
if [[ "$?" == "0" ]];then
  if [ ! -d "/root/.certs/" ]; then
    echo "检测无/root/.certs/目录"
  else
    mv /root/.certs /root/certs_$STAMP
    echo "检测已存在/root/.certs目录，并已重命名备份"
  fi
  mkdir -p /root/.certs/
  cd /root/.certs
  echo -n | openssl s_client -connect smtp.ym.163.com:465| sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > ~/.certs/163.com.crt
  certutil -A -n "GeoTrust Global CA" -t "C,," -d ~/.certs -i ~/.certs/163.com.crt
  certutil -A -n "GeoTrust SSL CA - G3" -t "Pu,Pu,Pu"  -d ./ -i 163.com.crt
  certutil -L -d /root/.certs
  echo "邮件服务部署完成，并已成功配置ssl模式"
else
  echo -e "\033[31m连接smtp.ym.163.com异常，跳过邮件服务ssl模式配置！请注意检查！\033[0m"
fi

#回收站
$INITDIR/sh/rm.sh
