Wie Sie SWAKS mit SparkPost verwenden

Wie Sie SWAKS mit SparkPost verwenden

Wie Sie SWAKS mit SparkPost verwenden

Jun 24, 2021

Herausgegeben von

Herausgegeben von

Bird

Bird

-

Kategorie:

Kategorie:

E-Mail

E-Mail

Ready to see Bird
in action?

Ready to see Bird
in action?

How to Use SWAKS with SparkPost

Letztes Jahr haben wir einen Blog-Artikel veröffentlicht, der zeigt, wie man das allgegenwärtige und sehr nützliche Telnet-Tool verwendet, um eine SMTP-Verbindung zu überprüfen.

Die next step is to simplify the manual process by using an awesome “next level” tool (it refers to itself as the Swiss Army Knife of email) called SWAKS. This is a command line tool that can send emails via SMTP. It’s not only easy to use but also simultaneously provides a myriad of Optionen when needed.

At first, I was intimidated by the amount of options, but it is perfectly usable with the most basic options. If you have any issues, just bookmark diese page, copy and paste the examples, and modify it to your liking. At the end of this blog, once you have gained some familiarity and don’t have a lot of variance/dynamics to your SWAKS commands, I will show you how to create a configuration file that Voreinstellungen all your defaults parameters. This makes running SWAKS literally a button (OK, “key”) away! 

Für diese Übung werden wir die Befehle auf einem CentOS 7-Server ausführen, aber die Befehle sind auf allen unterstützten Plattformen ähnlich. Wie bereits erwähnt, können Sie, wenn Sie nicht weiterkommen, die Befehle einfach kopieren und direkt in Ihr System einfügen und nach Bedarf ändern. Hier sind die Grundlagen:


Installieren Sie

sudo yum install epel-release -y && sudo yum install swaks -y

Nach der Installation folgt die grundlegende Syntax zum Senden einer Nachricht. In diesem Beispiel verwenden wir die lokale Adresse des Servers:

swaks -s 127.0.0.1 -f sender@from.com -t recipient@recipient.com

Senden Sie eine Nachricht mit einer "Betreff"-Zeile und anderen Kopfzeilen und fügen Sie dann einen "Hello World!"-Text in den Textkörper ein:

swaks -s 127.0.0.1 -f me@from.com -t them@recipient.com --header "Betreff: Hallo! Dies ist der Betreff header\Second_header:123\nThird_Header:XYZ" --body "Hallo Welt!"

Hier sehen Sie, wie Sie einen Anhang hinzufügen können, wobei SWAKS die base64-Konvertierung für Sie vornimmt, was sich hervorragend zum Testen von Größenbeschränkungen für Nachrichten eignet:

swaks -s 127.0.0.1 -f me@from.com -t them@recipient.com --attach /path/to/file.tgz

Damit haben Sie die Grundlagen geschaffen! Jetzt wollen wir sehen, wie Sie Ihr Setup noch verbessern können. Hier sind einige Ideen:

  • Use a scheduler like chron to do basic ‘does it work’ tests which can work as a foundation  or even augment your monitoring system.

  • Messung der Latenzzeit beim Herstellen und Schließen einer Verbindung zu einem Mailserver.

  • Testen Sie verschiedene TLS-Versionen und -Chiffren

Sie werden hier nicht allein gelassen, ich werde Ihnen zeigen, wie Sie all das tun können. Dieses Mal werden wir in unsere SparkPost-Server injizieren.


Send a message to our SparkPost servers (How to Erstellen Sie hier den API-Schlüssel, and the SMTP options).Once you get your authentication key, paste it into the command (make sure to keep the key safe and secure!) :

swaks -server smtp.sparkpostmail.com:587 -tls --auth-user SMTP_Injection --auth-password [Ihr Auth-Schlüssel] -f me@from.com -t them@recipient.com

If you’re looking for guidance on how to troubleshoot sending via SMTP to our servers check out this article.

Echoing best security practices, SparkPost has deprecated alle älteren TLS-Versionen außer v1.2 und höher. If you want to see if your system is compatible, SWAKS allows you to test specific TLS versions and ciphers.

swaks -s smtp.sparkpostmail.com -tls  -p 587 -f me@from.com -t them@recipient.com -tlsp tlsv1_2 --tls-cipher ECDHE-RSA-AES128-GCM-SHA256

In diesem Beispiel verwenden wir "tlsv1_2", aber ändern Sie das in "tlsv1_1" und verwenden Sie es auf anderen Domänen, um deren Kompatibilität zu beobachten.

What if you want to Zeit how fast a mail server responds? SWAKS can go through the SMTP cycle and disengage at some points without sending a message, and you can time it using the “time” command which shows at end of output:

$ time swaks -s 127.0.0.1 -f sender@from.com -t them@recipient.com test--quit-after RCPT === Trying 127.0.0.1:25... === Connected to 127.0.0.1. …  -> RCPT TO:<them@recipient.com> <-  250 2.1.5 <them@recipient.com> ok  -> QUIT <-  221 2.0.0 v1pmta5.jasdevism.com says goodbye === Connection closed with remote host. real 0m0.049s user 0m0.038s sys 0m0.009s


Wie versprochen, wenn Sie es bis hierher geschafft haben, ist die Belohnung eine einfache Konfigurationsdatei, um die Standardparameter festzulegen:


$ Cd $HOME $ vim .swaksrc  # Copy and paste this into the file into the .swaksrc file --from swakstest@jasdevism.com h-From: "Jas Swaks" <swakstest@jasdevism.com> -s 127.0.0.1  --body "This is a test!" --to jsingh@sparkpost.com

Sobald Sie es gespeichert haben, geben Sie einfach "swaks" ein, und es füllt alles aus und schickt es auf seinen fröhlichen Weg! Noch besser ist, dass Sie die Angaben in der Befehlszeile überschreiben können, wenn Sie z. B. einen anderen Empfänger wünschen:


swaks -t recipient@somewherelse.com

Your new standard in Marketing, Pay & Sales. It's Bird

Die right message -> zum right person -> am right time.

Your new standard in Marketing, Pay & Sales. It's Bird

The right message -> zum right person -> am right time.