A complete, version-controlled NeoMutt setup: multi-account IMAP/SMTP, GPG encryption, sidebar and ergonomic key bindings for a self-hosted mail workflow.
- Shell 100%
- accounts/mail2news: real onion SMTP endpoint, ephemeral nobody@virebent.invalid From - scripts/m2n-prompt.sh: working interactive posting script (swaks + torsocks) - neomuttrc.tor: Tor profile sourcing mail2news account, F9 macro binding - neomuttrc.common: shared UI/GPG/sidebar base config - README: rewritten in English, documents actual setup and gateway address |
||
|---|---|---|
| accounts | ||
| scripts | ||
| .gitignore | ||
| colors.mutt | ||
| mailcap | ||
| neomuttrc | ||
| neomuttrc.common | ||
| neomuttrc.tor | ||
| README.md | ||
neomutt-config
Privacy-focused NeoMutt configuration with multi-account support and anonymous Usenet posting via a mail2news gateway over Tor.
Full write-up: Posting to Usenet Anonymously with NeoMutt and Mail2News over Tor
Features
- Multi-account IMAP/SMTP (STARTTLS, port 143/587)
- Mail2news via Tor — post to Usenet through a
.onionSMTP gateway, no IP exposed - F9 macro → interactive post script (newsgroup, subject, editor, review, send)
- Ephemeral
.invalidFrom address — not traceable, not replyable - No IMAP for the mail2news account — send-only
Requirements
| Package | Purpose |
|---|---|
neomutt |
MUA |
tor |
Tor daemon (127.0.0.1:9050) |
torsocks |
Tor proxy wrapper |
swaks |
SMTP test/send tool |
vim |
Message editor |
On Arch:
pacman -S neomutt tor torsocks swaks
On Debian/Ubuntu:
apt install neomutt tor torsocks swaks
Installation
git clone https://git.gabrielesalati.eu/gabrielesalati/neomutt-config
cd neomutt-config
mkdir -p ~/.config/neomutt/accounts
cp neomuttrc.common ~/.config/neomutt/neomuttrc.common
cp neomuttrc.tor ~/.config/neomutt/neomuttrc.tor
cp colors.mutt ~/.config/neomutt/colors.mutt
cp mailcap ~/.config/neomutt/mailcap
cp accounts/mail2news ~/.config/neomutt/accounts/mail2news
cp scripts/m2n-prompt.sh ~/.config/neomutt/m2n-prompt.sh
chmod +x ~/.config/neomutt/m2n-prompt.sh
Mail2news usage
Start Tor, then launch NeoMutt through the Tor profile:
torsocks neomutt -F ~/.config/neomutt/neomuttrc.tor
Press F9 from the index or pager. Answer the prompts:
Newsgroup(s): misc.test
Subject: test post
Write your message in the editor, review the draft, send.
The post goes to mail2news@xilb7y4kj6u6qfo45o3yk2kilfv54ffukzei3puonuqlncy7cn2afwyd.onion,
which forwards to Peanny NNTP and propagates from there.
Send directly from the shell (no NeoMutt)
torsocks swaks \
--server xilb7y4kj6u6qfo45o3yk2kilfv54ffukzei3puonuqlncy7cn2afwyd.onion:25 \
--from nobody@virebent.invalid \
--to mail2news@xilb7y4kj6u6qfo45o3yk2kilfv54ffukzei3puonuqlncy7cn2afwyd.onion \
--header "Newsgroups: misc.test" \
--header "Subject: test post" \
--body "This is a test."
File layout
~/.config/neomutt/
├── neomuttrc # main profile (clearnet accounts)
├── neomuttrc.common # shared UI/GPG/sidebar settings
├── neomuttrc.tor # Tor profile — sources mail2news account, F9 macro
├── colors.mutt # color theme
├── mailcap # MIME handlers
├── m2n-prompt.sh # mail2news posting script (called by F9)
└── accounts/
├── account1 # example IMAP/SMTP account
├── account2
├── account3
└── mail2news # send-only, onion SMTP, ephemeral From
Keybindings
| Key | Action |
|---|---|
| F2 | Switch to account 1 |
| F3 | Switch to account 2 |
| F4 | Switch to account 3 |
| F9 | Post to Usenet |
| B | Toggle sidebar |
Gateway address
The mail2news gateway on virebent.art accepts unauthenticated SMTP on port 25
and forwards to Peanny NNTP over Tor. No registration required.
SMTP/mail2news onion:
xilb7y4kj6u6qfo45o3yk2kilfv54ffukzei3puonuqlncy7cn2afwyd.onion