当前位置: 首页 > wzjs >正文

建筑公司网站被投诉违反广告法长沙网站推广智投未来

建筑公司网站被投诉违反广告法,长沙网站推广智投未来,wordpress公司网站,时代互联企业网站文章目录 终端的命令行发送邮件的方式mail命令MacOS版本Linux版本 sendmail命令(MacOS推荐)Curl命令ssmtpmsmtp 监视脚本所有白名单关键字都存在、且所有黑名单关键字都不存在时触发报警任意白名单关键字存在、或任意黑名单关键字不存在时触发报警 命令文…

文章目录

      • 终端的命令行发送邮件的方式
        • mail命令
          • MacOS版本
          • Linux版本
        • sendmail命令(MacOS推荐)
        • Curl命令
        • ssmtp
        • msmtp
      • 监视脚本
        • 所有白名单关键字都存在、且所有黑名单关键字都不存在时触发报警
        • 任意白名单关键字存在、或任意黑名单关键字不存在时触发报警
      • 命令文件的典型应用场景
        • 监视单个接口返回值
        • 多命令形式
        • 更复杂的处理逻辑
      • 更多细节

终端的命令行发送邮件的方式

mail命令
MacOS版本

需要先在MacOS系统的邮件应用配置默认账户。(在「启动台」中可以找到「邮件」应用)

然后执行命令:

echo "这是邮件的正文内容" | mail -s "邮件主题" xxxx@139.com
Linux版本

如果是Linux终端的版本,则使用要简单得多,直接配置好 ~/.mailrc (类似下文的服务器参数):

set smtp=smtps://smtp.gmail.com:465
set smtp-auth=login
set smtp-auth-user=your_email@gmail.com
set smtp-auth-password=your_app_password
set from=your_email@gmail.com

然后执行命令:

echo "这是邮件的正文内容" | mail -s "邮件主题" xxxx@139.com
sendmail命令(MacOS推荐)
  1. 编辑 Postfix 配置文件
    sudo vim /etc/postfix/main.cf
    
    添加以下内容(以163邮箱为例,参见:网易邮箱服务器参数):
    relayhost = [smtp.163.com]:465
    smtp_sasl_auth_enable = yes
    smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
    smtp_sasl_security_options = noanonymous
    smtp_tls_wrappermode = yes  # 163邮箱使用SSL加密的465端口
    smtp_tls_security_level = encrypt
    
  2. 创建认证文件
    sudo vim /etc/postfix/sasl_passwd
    
    写入账户和授权码。注意:your-code替换为你的客户端授权码,不是邮箱密码!!现在包括Gmail、163等主流邮箱都已经改为使用授权码了(还有效期限制,比如3个月),具体参见说明:如何新增授权码:
    [smtp.163.com]:465 your-name@163.com:your-code
    
    生成数据库并设置权限:
    sudo postmap /etc/postfix/sasl_passwd
    sudo chmod 600 /etc/postfix/sasl_passwd*
    
  3. 重启Postfix并测试
    sudo postfix stop && sudo postfix start
    echo "测试正文" | sendmail -f your-name@163.com xxxx@139.com
    
Curl命令

通过 SMTP 协议直接发送:

curl --url "smtps://smtp.163.com:465" \--ssl-reqd \--mail-from "your-name@163.com" \--mail-rcpt "xxxx@139.com" \--user "your-name@163.com:your-code" \-T <(echo -e "From: your-name@163.com\nTo: xxxx@139.com\nSubject:测试邮件\n\n这是邮件的正文内容")

参数说明
smtps:// 表示使用 SSL 加密(对应465端口)。
your-code 需替换为163邮箱的客户端授权码(非登录密码),参见上文说明。

ssmtp

安装ssmtp:

sudo apt-get update
sudo apt-get install ssmtp

编辑/etc/ssmtp/ssmtp.conf文件,按如下内容进行配置:

root=your_email@example.com
mailhub=smtp.example.com:587
AuthUser=your_email@example.com
AuthPass=your_email_password
UseTLS=YES
UseSTARTTLS=YES

发送邮件:

echo "这是邮件的正文内容" | ssmtp recipient@example.com
msmtp

安装msmtp:

# Debian 或 Ubuntu
sudo apt-get update
sudo apt-get install msmtp msmtp-mta# CentOS 或 RHEL
sudo yum install msmtp

msmtp 的配置文件通常位于 ~/.msmtprc(用户级配置)或 /etc/msmtprc(系统级配置):

# Set default values for all following accounts.
defaults
auth           on
tls            on
tls_trust_file /etc/ssl/certs/ca-certificates.crt
logfile        ~/.msmtp.log# Gmail account
account        gmail
host           smtp.gmail.com
port           587
from           your_email@gmail.com
user           your_email@gmail.com
password       your_app_password# Set a default account
account default : gmail

发送邮件:

echo "这是邮件的正文内容" | msmtp recipient@example.com{echo "From: your_email@gmail.com"echo "To: recipient@example.com"echo "Subject: 邮件主题"echo ""echo "这是邮件的正文内容"
} | msmtp recipient@example.com

监视脚本

所有白名单关键字都存在、且所有黑名单关键字都不存在时触发报警

编辑 vi monitor_and_version.sh 并输入以下内容,添加可执行属性 chmod +x monitor_and_version.sh 后,修改配置区的内容为自己需求后即可执行该脚本:

#!/bin/bash
# 配置区(按需修改以下参数)
INTERVAL=10               # 循环间隔时间(秒)
COMMAND_FILE="./commands"  # 待执行的命令文件路径
WHITE_KEYWORDS_FILE="./white_keywords"  # 白名单关键字文件路径
BLACK_KEYWORDS_FILE="./black_keywords"  # 黑名单关键字文件路径
MAIL_TO="your-name@139.com"             # 通知邮件接收地址
MAIL_FROM="your-name@163.com"          # 发件人地址
LOG_LEVEL=2                             # 日志级别: 1-调试, 2-信息, 3-警告, 4-错误# 日志函数(带颜色分级)
log() {local level=$1local message=$2local timestamp=$(date '+%Y-%m-%d %H:%M:%S')local color_code=""case $level in"DEBUG") [[ $LOG_LEVEL -ge 2 ]] && return ;;  # 当LOG_LEVEL≥1时跳过DEBUG"INFO")  [[ $LOG_LEVEL -ge 3 ]] && return ;;"WARN")  [[ $LOG_LEVEL -ge 4 ]] && return ;;"ERROR") : ;;  # ERROR始终输出esacif [[ $LOG_COLOR == true ]]; thenecho -e "${color_code}[${timestamp}] [${level}] ${message}\033[0m"elseecho "[${timestamp}] [${level}] ${message}"fi
}# 邮件发送函数(中文标题和内容)
send_alert() {local subject=$1local body=$2(echo "Subject: =?UTF-8?B?$(echo "$subject" | base64)?="  # 编码处理echo "MIME-Version: 1.0"echo "Content-Type: text/plain; charset=utf-8"echoecho "$body"
) | /usr/sbin/sendmail -t -f $MAIL_FROM $MAIL_TO}# 主程序
log "INFO" "启动监控脚本,命令文件: $COMMAND_FILE"while true; do# 检查命令文件if [ ! -f "$COMMAND_FILE" ]; thenlog "ERROR" "命令文件不存在: $COMMAND_FILE"send_alert "[紧急] 命令文件缺失" "检测到命令文件不存在!\n路径: $COMMAND_FILE"exit 1fi# 执行命令文件log "INFO" "开始执行命令文件"output=$(bash "$COMMAND_FILE" 2>&1)exit_code=$?# 处理执行结果if [[ $exit_code -ne 0 ]]; thenlog "ERROR" "命令执行失败,退出码: $exit_code"send_alert "[故障] 命令执行异常" "错误代码: $exit_code\n错误详情:\n$output"elselog "INFO" "命令执行成功,输出长度: ${#output} 字符"log "DEBUG" "命令执行成功,输出内容: ${output} "# 初始化触发标志white_trigger=falseblack_trigger=false# 白名单文件存在性判断white_file_exists=falseif [ -f "$WHITE_KEYWORDS_FILE" ]; thenwhite_file_exists=truelog "DEBUG" "检测到白名单文件,开始校验"elselog "WARN" "白名单文件未找到,忽略白名单检查"fi# 白名单检测(仅当文件存在时)if $white_file_exists; thenwhite_trigger=true  # 预设为满足条件while IFS= read -r keyword; doif [[ -n "$keyword" ]]; thenif ! grep -iqF "$keyword" <<< "$output"; thenwhite_trigger=falselog "DEBUG" "白名单关键字缺失: $keyword"fifidone < <(grep -v '^#' "$WHITE_KEYWORDS_FILE")fi# 黑名单文件存在性判断black_file_exists=falseif [ -f "$BLACK_KEYWORDS_FILE" ]; thenblack_file_exists=truelog "DEBUG" "检测到黑名单文件,开始校验"elselog "WARN" "黑名单文件未找到,忽略黑名单检查"fi# 黑名单检测(仅当文件存在时)if $black_file_exists; thenblack_trigger=true  # 预设为满足条件while IFS= read -r keyword; doif [[ -n "$keyword" ]] && grep -iqF "$keyword" <<< "$output"; thenblack_trigger=falselog "DEBUG" "黑名单关键字存在: $keyword"fidone < <(grep -v '^#' "$BLACK_KEYWORDS_FILE")fi# 组合触发条件if ($white_file_exists && $white_trigger) || ! $white_file_exists; thenif ($black_file_exists && $black_trigger) || ! $black_file_exists; thenlog "WARN" "触发报警条件:白名单全匹配且黑名单全不匹配"send_alert "[复合告警] 关键字规则触发" \"触发条件满足:\n白名单全存在: $white_trigger\n黑名单全不存在: $black_trigger\n完整输出:\n$output"fififi# 睡眠日志记录log "INFO" "等待下次执行,间隔: ${INTERVAL}秒"sleep $INTERVAL
done
任意白名单关键字存在、或任意黑名单关键字不存在时触发报警

编辑 vi monitor_or_version.sh 并输入以下内容,添加可执行属性 chmod +x monitor_or_version.sh 后,修改配置区的内容为自己需求后即可执行该脚本:

#!/bin/bash
# 配置区(按需修改以下参数)
INTERVAL=10               # 循环间隔时间(秒)
COMMAND_FILE="./commands"  # 待执行的命令文件路径
WHITE_KEYWORDS_FILE="./white_keywords"  # 白名单关键字文件路径
BLACK_KEYWORDS_FILE="./black_keywords"  # 黑名单关键字文件路径
MAIL_TO="your-name@139.com"             # 通知邮件接收地址
MAIL_FROM="your-name@163.com"          # 发件人地址
LOG_LEVEL=2                             # 日志级别: 1-调试, 2-信息, 3-警告, 4-错误# 日志函数(带颜色分级)
log() {local level=$1local message=$2local timestamp=$(date '+%Y-%m-%d %H:%M:%S')local color_code=""case $level in"DEBUG") [[ $LOG_LEVEL -ge 2 ]] && return ;;  # 当LOG_LEVEL≥1时跳过DEBUG"INFO")  [[ $LOG_LEVEL -ge 3 ]] && return ;;"WARN")  [[ $LOG_LEVEL -ge 4 ]] && return ;;"ERROR") : ;;  # ERROR始终输出esacif [[ $LOG_COLOR == true ]]; thenecho -e "${color_code}[${timestamp}] [${level}] ${message}\033[0m"elseecho "[${timestamp}] [${level}] ${message}"fi
}# 邮件发送函数(中文标题和内容)
send_alert() {local subject=$1local body=$2(echo "Subject: =?UTF-8?B?$(echo "$subject" | base64)?="  # 编码处理echo "MIME-Version: 1.0"echo "Content-Type: text/plain; charset=utf-8"echoecho "$body"
) | /usr/sbin/sendmail -t -f $MAIL_FROM $MAIL_TO}# 主程序
log "INFO" "启动监控脚本,命令文件: $COMMAND_FILE"while true; do# 检查命令文件if [ ! -f "$COMMAND_FILE" ]; thenlog "ERROR" "命令文件不存在: $COMMAND_FILE"send_alert "[紧急] 命令文件缺失" "检测到命令文件不存在!\n路径: $COMMAND_FILE"exit 1fi# 执行命令文件log "INFO" "开始执行命令文件"output=$(bash "$COMMAND_FILE" 2>&1)exit_code=$?# 处理执行结果if [[ $exit_code -ne 0 ]]; thenlog "ERROR" "命令执行失败,退出码: $exit_code"send_alert "[故障] 命令执行异常" "错误代码: $exit_code\n错误详情:\n$output"elselog "INFO" "命令执行成功,输出长度: ${#output} 字符"log "DEBUG" "命令执行成功,输出内容: ${output} "# 白名单检测if [ -f "$WHITE_KEYWORDS_FILE" ]; thenlog "DEBUG" "启动白名单关键字扫描"while IFS= read -r keyword; doif [[ -n "$keyword" ]] && grep -iqF "$keyword" <<< "$output"; thenlog "WARN" "检测到白名单关键字: $keyword"send_alert "[预警] 白名单关键字触发" "匹配关键字: $keyword\n完整输出:\n$output"breakfidone < <(grep -v '^#' "$WHITE_KEYWORDS_FILE")fi# 黑名单检测if [ -f "$BLACK_KEYWORDS_FILE" ]; thenlog "DEBUG" "启动黑名单关键字扫描"missing_black=falsewhile IFS= read -r keyword; doif [[ -n "$keyword" ]] && ! grep -iqF "$keyword" <<< "$output"; thenmissing_black=truebreakfidone < <(grep -v '^#' "$BLACK_KEYWORDS_FILE")if $missing_black; thenlog "WARN" "缺少黑名单关键字"send_alert "[异常] 黑名单关键字缺失" "未检测到以下必需关键字:\n$(grep -v '^#' "$BLACK_KEYWORDS_FILE")\n完整输出:\n$output"fififi# 睡眠日志记录log "INFO" "等待下次执行,间隔: ${INTERVAL}秒"sleep $INTERVAL
done

命令文件的典型应用场景

监视单个接口返回值
  1. 打开 Chrome 浏览器,访问包含目标接口请求的网页。
  2. 按下键盘快捷键 F12 或者 Ctrl + Shift + I(适用于 Windows/Linux 系统),也可以使用 Cmd + Opt + I(适用于 Mac 系统),以此调出开发者工具。
  3. 在开发者工具顶部的标签页里,选择 Network 标签。
  4. 若有需要,点击 Preserve log(保留日志)按钮,从而保证刷新页面后请求不会被清空。
  5. 刷新当前页面,或者执行页面操作,比如点击按钮、提交表单等,让目标接口的请求显示在 Network 列表中。
  6. 在左侧的 Name 列找到目标请求,还能通过筛选 TypeXHR/Fetch 或者依据 URL 关键词进行过滤查找。
  7. 右键点击目标请求,接着选择 Copy,再从下拉菜单中选择 Copy as cURL
  8. 把复制的 curl 命令粘贴到 commands 文件中即可。
多命令形式

简单的获取多个接口的请求Curl命令。并每个一行放入 commands 文件中即可。

更复杂的处理逻辑

直接在 commands 文件中调用Python脚本进行处理,注意:处理结果需要显示打印到控制台输出

# 调用Python脚本
python myscript.py

更多细节

  1. 使用Windows或MacOS执行脚本时,可以将系统设置为充电状态下不休眠,以可以长时间不间断保持运行监视脚本。
  2. 139邮箱可以在收到新邮件时发送短信通知。但默认只是在8点-22点才会通知,如有需要,在139邮箱的配置中可修改为24小时通知。
  3. 如果需要脚本打印日志到本地文件,可以使用 ./monitor_and_version.sh | tee -a ./monitor.log 命令执行。
  4. 如果需要静默执行,可以执行命令:nohup ./monitor_and_version.sh > monitor.log 2>&1 &
http://www.dtcms.com/wzjs/212145.html

相关文章:

  • 网上做广告宣传seo查询seo
  • 都江堰城乡建设局网站网址提交百度收录
  • 日本做爰漫画网站网站广告调词软件
  • 外贸网站域名能用cn做后缀吗学推广网络营销去哪里
  • 在线美食网站开发论文推广手段有哪些
  • 襄阳购物网站开发设计深圳全网推广服务
  • 北京网站制作业务如何开展百度电脑网页版
  • 做团购网站的公司有没有免费的写文案的软件
  • 用电脑做服务器搭建php网站百度地图收录提交入口
  • 站长平台网站企业seo顾问服务
  • 建设工程信息网为官方网站推广app
  • 做网站的经验app拉新怎么做
  • wordpress标签页收藏信息流优化师是什么
  • 网站建设 学习什么百度权重怎么查询
  • 宁波网站建设设计制作爱站网站长工具
  • 什么网站做推广农产品比较好怎么去推广自己的店铺
  • 室内设计网站国外杭州网络整合营销公司
  • 做企业门户网站要准备哪些内容友情链接交换网址大全
  • 电商网站为什么要提高网站友好度微信推广加人
  • 网站页尾内容电商从零基础怎么学
  • 柳州哪里有网站建设关键词优化的最佳方法
  • 高校网站站群建设公司郑州seo外包阿亮
  • 做网站主页图片一般多少m苏州网站建设哪家靠谱
  • 职业装定制网站优化什么意思
  • 智冠宝企业网站管理系统百度怎么推广广告
  • 三合一网站建设哪个好广告资源对接平台
  • 驻马店营销型网站建设优化推广如何自己搭建一个网站
  • 网站网络推广优化哪家好厦门人才网唯一官网招聘
  • 建设交流网站win10优化工具
  • 出入库软件永久免费zac seo博客