Mass-sender-script/script.sh

52 lines
1.6 KiB
Bash
Raw Permalink Normal View History

2026-06-15 14:30:43 +03:00
#!/bin/bash
2026-06-15 14:43:38 +03:00
OVPN_DIR="/path/to/config/files"
EMAIL_LIST="/path/to/text/file/with/emails.txt"
2026-06-15 14:30:43 +03:00
SUBJECT="Ваш OpenVPN конфиг"
# Проверяем, что файл со списком существует
if [[ ! -f "$EMAIL_LIST" ]]; then
echo "Ошибка: файл $EMAIL_LIST не найден"
exit 1
fi
# Читаем список
while read -r filename email; do
# Пропускаем пустые строки и комментарии
[[ -z "$filename" || "$filename" =~ ^# ]] && continue
OVPN_FILE="$OVPN_DIR/$filename"
if [[ ! -f "$OVPN_FILE" ]]; then
echo "Предупреждение: файл $OVPN_FILE не найден, пропускаем $email"
continue
fi
# Отправляем письмо с вложением
(
echo "Subject: $SUBJECT"
echo "To: $email"
echo "MIME-Version: 1.0"
echo "Content-Type: multipart/mixed; boundary=FILEBOUND"
echo ""
echo "--FILEBOUND"
echo "Content-Type: text/plain; charset=utf-8"
echo ""
echo "Здравствуйте!"
echo "Ваш OpenVPN конфигурационный файл прикреплён к этому письму."
echo ""
echo "--FILEBOUND"
echo "Content-Type: application/x-openvpn-profile; name=\"$filename\""
echo "Content-Disposition: attachment; filename=\"$filename\""
echo "Content-Transfer-Encoding: base64"
echo ""
base64 "$OVPN_FILE"
echo ""
echo "--FILEBOUND--"
) | sendmail -t
echo "Отправлено $filename -> $email"
done < "$EMAIL_LIST"
echo "Готово."