部分 VPS/服务器厂商为了防止滥用,通常会屏蔽 SMTP 发信端口,尤其是 25 端口。下面的脚本可以一键检测 VPS/服务器的 SMTP 发信端口是否已启用。
#!/bin/bash
# 定义要测试的端口列表
ports=("25" "465" "587" "2525")
# 定义要连接的主机
host="in-v3.mailjet.com"
# 定义超时时间(单位:秒)
timeout_duration=3
# 初始化结果数组
results=()
# 循环测试每个端口
for port in "${ports[@]}"; do
echo "正在测试端口 $port..."
if timeout $timeout_duration bash -c "</dev/tcp/$host/$port" >/dev/null 2>&1; then
results+=("端口 $port 已开启")
else
results+=("端口 $port 未开启")
fi
echo
done
# 输出结果
echo -e "Results:\n${results[*]}"
原创文章,作者:inli,如若转载,请注明出处:https://inli.app/smtp-check.html