Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
C
Communications Challenge
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Package registry
Container registry
Model registry
Operate
Environments
Terraform modules
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
edugain
Communications Challenge
Commits
d2514f07
Commit
d2514f07
authored
9 months ago
by
Tobias Dussa
Browse files
Options
Downloads
Patches
Plain Diff
Added lots of example calls.
parent
e7f5f089
Branches
Branches containing commit
No related tags found
No related merge requests found
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
reaction-mailcreate/README.md
+122
-1
122 additions, 1 deletion
reaction-mailcreate/README.md
with
122 additions
and
1 deletion
reaction-mailcreate/README.md
+
122
−
1
View file @
d2514f07
...
...
@@ -176,4 +176,125 @@ DFN-CERT,Tobias,Dussa,dussa@dfn-cert.de
## Example Calls
###
Note: In all examples, the option `
--dry-run
` will be used if necessary, so
that copy-and-pasting the examples does not lead to e-mails being sent by
mistake.
The simplest invocation of the script is this:
```
./createMails.py
```
Assuming that the sample directory is present and containing the sample
mail template and input list, this call takes all the default values,
creates a mail for each entry in the default input list, and saves that.
Since no sender e-mail and webserver address is given, dry-mode is implied,
so no mails are actually sent, nor is any web call actually made.
The output should look something like this:
```
DRY RUN. Not actually sending e-mails or creating targets, just creating mail files and URLs.
Writing mail to Mails/Test/DFN-CERT/2024-08-16T10:23:43Z.eml
```
The minimal set of parameters that must be given is the sender e-mail and
the target webserver to be used. To send a mail without any webserver
reference, set the webserver to the empty string; an minimal example
invocation that would actually send e-mails (if `
--dry-run
` was not set) is
this:
```
./createMails.py --dry-run --from "Tobias Dussa <dussa@dfn-cert.de>" --webserver ""
```
Notice that since no target webserver is specified, the `
URL
` variable in
the default mail template does not make much sense, but you can still use
it -- it will just not contain any complete URL.
To be able to identify individual test runs, you can add an infix to the
invocation. This will (by default) insert the infix into several file
names, in particular, into the input file name; therefore, in order to run
the following command, you need to copy the sample input file to a new file
as well. Note that while the infix is just a positional argument, since it
begins with a dash in this example, we need to make sure that it is
interpreted as a positional argument, not as a usage of the `
-R
` (reply-to)
parameter by adding two dashes first.
```
cp Mails/Test/Input.lst Mails/Test/Input-Run_A.lst
./createMails.py --dry-run --from "Tobias Dussa <dussa@dfn-cert.de>" --webserver "" -- -Run_A
DRY RUN. Not actually sending e-mails or creating targets, just creating mail files and URLs.
Writing mail to Mails/Test/DFN-CERT/2024-08-16T10:34:11Z-Run_A.eml
```
Generally, you will likely want to specify the campaign name. This then
requires a proper directory with the right input files, so it will not work
with the sample files, but you can set the campaign name like this:
```
./createMails.py --campaign MyCampaign
```
The relevant files are then expected to be in `
Mails/MyCampaign/
`, and
mail files are written in that directory as well.
The following example modifies the mail subject:
```
./createMails.py --subject "This is just a simple mail subject"
```
Likewise, you can specify a reply-to address to be used with the
`
-R
`/`
--reply-to
` parameter.
To add additional mail recipients to the CC header, you can do this:
```
./createMails.py --cc mail@example.com
```
You can use the same mechanism for BCC recipients and for file attachments.
All these parameters can be used multiple times to specify multiple
additional recipients or attachments:
```
./createMails.py --bcc foo@example.com --bcc bar@example.com --cc baz@example.com --attach createMails.py
```
Cryptographic signatures can be added as well. At the moment, the only
supported backend is GPG. The following call will invoke GPG and sign the
mail with the default key.
```
./createMails.py --sign gpg
```
You can also specify a different key to be used by passing call options to
the signing command:
```
./createMails.py --sign gpg --sign-arg "keyid=0x1234567890ABCDEF"
```
By default, mails are sent to localhost on port 25 using plain SMTP. To
use a different mail server, you need to specify the server to be used:
```
./createMails.py --smtpserver smtp.example.com
```
If you need to log in to send a mail, you can do so as well. This will
imply TLS and set the port to 465. To override this, you need to set the
port yourself.
```
./createMails.py --smtpuser user --smtppass pass
```
If you do not want to specify the SMTP password on the command line for
security reasons, you can set the password to a dash, and you will be
prompted for the password interactively:
```
./createMails.py --smtpuser user --smtppass -
```
An actual invocation will obviously combine a lot of the above parameters:
`
``
./createMails.py --dry-run
\
--smtpserver smtp.example.com --smtpuser user --smtppass pass
\
--from "Sender Dude
<sender@example.com>
"
\
--cc "CC Recipient
<cc@example.com>
"
\
--bcc bcc@example.com
\
--reply-to reply@example.com
\
--sign gpg
--campaign SampleCommsChallenge2024
\
--webserver https://landing.example.com
```
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment