Portál AbcLinuxu, 6. května 2025 09:13

Dotaz: mutt + gpg - neinteraktivně

30.8.2017 23:35 vlanav | skóre: 24 | blog: Dlouhý den
mutt + gpg - neinteraktivně
Přečteno: 401×
Odpovědět | Admin
Na Archu mám neomutt a a nastavil jsem šifrování, ale v neinteraktivním módu se mail odešle nepodepsaný a nezašifrovaný. Jak odešlu neinteraktivně zašifrovaný a podepsaný mail.

Toto odejde

sudo smartctl -a /dev/sda >sda.txt

mutt -s "Test Email 2" -i sda.txt cokoliv@seznam.cz < /dev/null

nezašifrované.

Toto odejde

sudo smartctl -a /dev/sda >sda.txt

mutt -s "Test Email 2" -i sda.txt cokoliv@seznam.cz

následuje násobné odentrování, zašifrované.

V muttrc mám autosign a autoencrypt nastavené.
Nástroje: Začni sledovat (1) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

4.9.2017 21:59 vlanav | skóre: 24 | blog: Dlouhý den
Rozbalit Rozbalit vše Re: mutt + gpg - neinteraktivně
Odpovědět | | Sbalit | Link | Blokovat | Admin
Toto funguje, ale je to velmi kostrbaté
# single instance only
killall thunderbird

sleep 5

#start X
vncserver :51 -geometry 640x480 -depth 16 -noxstartup

sleep 5

#compose
sudo smartctl -a /dev/sda | DISPLAY=:51 thunderbird -compose "to='cokoliv@seznam.cz',subject='SMART sda',format=2,message=/dev/stdin" &

sleep 10

#send
vncdotool -s localhost:51 -p mypassword key ctrl-enter

sleep 30

#kill X
vncserver -kill :51
4.9.2017 22:36 BzF
Rozbalit Rozbalit vše Re: mutt + gpg - neinteraktivně

Pokud je problém jen v tom chybějícím Enteru, tak něco takového:

echo -e '\n' | mutt -s ...

by mohlo pomoci.

6.9.2017 20:35 vlanav | skóre: 24 | blog: Dlouhý den
Rozbalit Rozbalit vše Re: mutt + gpg - neinteraktivně
Odpovědět | | Sbalit | Link | Blokovat | Admin
Kostrbatá verze pro mutt
#!/bin/bash

#create and save tmp vnc password
TMPPASS=$(cat /dev/urandom | tr -cd 0-9a-zA-Z | head -c8)
echo $TMPPASS | vncpasswd -f > $HOME/.vnc/tmppass

#prepare desktop
vncserver :51 -geometry 640x480 -depth 16 -noxstartup -rfbauth $HOME/.vnc/tmppass

#prepare mail body
sudo smartctl -a /dev/sda > sda.txt

#prepare mutt with mail
DISPLAY=:51 xterm -e "mutt -s 'SMART sda' cokoliv@seznam.cz -i sda.txt" &

sleep 2

#send mail
vncdotool -s localhost:51 -p $TMPPASS --delay=500 move 320 240 key enter key enter type ':w' key enter type ':q' key enter key y

sleep 5

#kill X
vncserver -kill :51

#delete passwd
rm -f $HOME/.vnc/tmppass
6.9.2017 21:10 NN
Rozbalit Rozbalit vše Re: mutt + gpg - neinteraktivně
To je snad jeste horsi nez to pred tim.. to tam fakt mus byt to vnc? Fakt? Nebylo by jednoduzsi zjisti jak to podepsat? Tohle fakt je hnus.. sry.
7.9.2017 08:06 rastos | skóre: 63 | blog: rastos
Rozbalit Rozbalit vše Re: mutt + gpg - neinteraktivně
Musí to PGP robiť mutt?
smartctl -a /dev/sda  | \
  gpg --sign --encrypt --armor --recipient cokoliv@seznam.cz --output - | \
  mutt ...
7.9.2017 09:24 vlanav | skóre: 24 | blog: Dlouhý den
Rozbalit Rozbalit vše Re: mutt + gpg - neinteraktivně
Nemusí, ale nenašel jsem lepší řešení, ani google nic nenajde. Vaše (rastosovo) částečně funguje - mutt to ale nedokáže trasparentně dekódovat, thunderbird to dokáže (ale kodóvání je špatně).

Problém je ve struktuře toho mailu. Takhle to vypadá správně.
Content-Type: multipart/encrypted; protocol="application/pgp-encrypted";
	boundary="7gn3mocrmkzbvarr"
Content-Disposition: inline
User-Agent: NeoMutt/20170714 (1.8.3)


--7gn3mocrmkzbvarr
Content-Type: application/pgp-encrypted
Content-Disposition: attachment


--7gn3mocrmkzbvarr
Content-Type: application/octet-stream
Content-Disposition: attachment; filename="msg.asc"


--7gn3mocrmkzbvarr--
7.9.2017 09:54 rastos | skóre: 63 | blog: rastos
Rozbalit Rozbalit vše Re: mutt + gpg - neinteraktivně
Tomu by mohlo pomôcť to, že výsledok toho GPG nepošleš cez pípu na stdin, ale ho uložíš do súboru (napr. s koncovkou .gpg.asc) a do mailu ho attachneš pomocou -a. Možno to bude ešte potrebovať úpravu ~/.mime.types, aby pre .gpg.asc použil správny MIME type.
7.9.2017 20:47 vlanav | skóre: 24 | blog: Dlouhý den
Rozbalit Rozbalit vše Re: mutt + gpg - neinteraktivně
Zkusil jsem to takhle, ale pořád to není ono. Thunderbird si s tím poradí, ale mutt to vidí jako přílohy.
#!/bin/bash

sudo smartctl -a /dev/sda | gpg --sign --encrypt --armor \
  --default-key cokoliv@seznam.cz --recipient cokoliv@seznam.cz --output - > msg.asc

mailsend -smtp smtp.seznam.cz -port 465 -ssl -ehlo \
  -auth -user seratom@seznam.cz -pass 'cokoliv123' \
  -enc-type none -content-type multipart/encrypted -disposition inline -cs none \
  -f cokoliv@seznam.cz -t cokoliv@seznam.cz \
  -sub 'mailsend test' -show-attach \
  -attach gpg.id,application/pgp-encrypted,i \
  -attach msg.asc,application/octet-stream,a
Mail pak vypadá takto
X-Mailer: @(#) mailsend v1.20b (Unix)
X-Copyright: BSD. It is illegal to use this software for Spamming
Mime-version: 1.0
Content-type: multipart/encrypted; boundary="NWyG/VsALry1Ny0u"

--NWyG/VsALry1Ny0u
Content-Type: application/pgp-encrypted; name="gpg.id"
Content-Disposition: inline


--NWyG/VsALry1Ny0u
Content-Type: application/octet-stream; name="msg.asc"
Content-Disposition: attachment; filename="msg.asc"


--NWyG/VsALry1Ny0u--
8.9.2017 08:10 rastos | skóre: 63 | blog: rastos
Rozbalit Rozbalit vše Re: mutt + gpg - neinteraktivně
Ty si mu nanútil msg.asc ako application/octet-stream, ale v predtým si písal, že mutt tam chce "application/pgp-encrypted" (a o gpg.id si predtým nepísal nič). Ja mutt nepoužívam, ale ak si dosť zdatný, aby si dal dohromady ten mailsend command, tak si myslím, že si dosť zdatný aj na to, aby si to dotiahol do úspešného konca ;-) Myslím, že už tomu chýba len správne nastavenie MIME typu.
8.9.2017 10:17 vlanav | skóre: 24 | blog: Dlouhý den
Rozbalit Rozbalit vše Re: mutt + gpg - neinteraktivně
Ty mime typy mám stejně. Jsou tam tři, jeden u celého multipartu a po jednom u každého souboru. To gpg.id obsahuje text Version 1. V tom odeslaném z muttu je celý multipart jako inline a gpg.id je tam bez názvu jako attachment (to jsem taky zkoušel).

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.