65 lines
1.2 KiB
Plaintext
65 lines
1.2 KiB
Plaintext
|
#!/usr/bin/expect
|
||
|
|
||
|
package require base64
|
||
|
|
||
|
|
||
|
# SMTP-Server und Port definieren
|
||
|
set smtp_server "localhost"
|
||
|
set smtp_port "25"
|
||
|
set timeout 25
|
||
|
|
||
|
# Absender, Empfänger und Nachricht
|
||
|
set sender $env(SMTP_SENDER)
|
||
|
set recipient "test@hottis.de"
|
||
|
set message "Subject: Test Email\r\n\r\nThis is a test email sent via an expect script."
|
||
|
|
||
|
set smtp_user $env(SMTP_USER)
|
||
|
set smtp_pass $env(SMTP_PASS)
|
||
|
|
||
|
set smtp_user_64 [base64::encode $smtp_user]
|
||
|
set smtp_pass_64 [base64::encode $smtp_pass]
|
||
|
|
||
|
|
||
|
# Verbindung herstellen
|
||
|
spawn nc -C $smtp_server $smtp_port
|
||
|
|
||
|
# Begrüßung vom Server erwarten
|
||
|
expect "220 *"
|
||
|
|
||
|
# HELO/EHLO senden
|
||
|
send "EHLO de01rdsi01.krohnegroup.com\n"
|
||
|
expect "250 *"
|
||
|
|
||
|
send "AUTH LOGIN\n"
|
||
|
expect "334 VXNlcm5hbWU6"
|
||
|
|
||
|
send "$smtp_user_64\n"
|
||
|
expect "334 UGFzc3dvcmQ6"
|
||
|
|
||
|
send "$smtp_pass_64\n"
|
||
|
expect "235 2.7.0 Authentication successful"
|
||
|
|
||
|
# Absender definieren
|
||
|
send "MAIL FROM:<$sender>\n"
|
||
|
expect "250 *"
|
||
|
|
||
|
# Empfänger definieren
|
||
|
send "RCPT TO:<$recipient>\n"
|
||
|
expect "250 *"
|
||
|
|
||
|
# Datenübertragung starten
|
||
|
send "DATA\n"
|
||
|
expect "354 *"
|
||
|
|
||
|
# Nachricht senden und Übertragung abschließen
|
||
|
send "$message\n.\n"
|
||
|
expect "250 *"
|
||
|
|
||
|
# Verbindung schließen
|
||
|
send "QUIT\n"
|
||
|
expect "221 *"
|
||
|
|
||
|
# Beenden
|
||
|
interact
|
||
|
|