Jsem uživatel Mutt. Rád si prohlížím a píšu e-maily v pohodlí svého linuxového terminálu. S lehkým a minimálním klientem, jako je Mutt, vím, že mohu mít svůj e-mail dostupný bez ohledu na systémové specifikace nebo přístup k internetu. A protože mám linuxový terminál otevřený častěji než ne, můj e-mailový klient v podstatě nemá žádnou stopu na mé ploše. Je skrytá v záložce terminálu nebo podokně multiplexeru, takže ji mohu ignorovat, když ji nepotřebuji, ale rychle se k ní dostanu, když ji potřebuji.
Běžně vnímaný problém s Mutt je, že většina z nás dnes používá hostované e-mailové účty a komunikuje se skutečnými e-mailovými protokoly pouze povrchně. Mutt (a před ním ELM) byl vytvořen v jednodušších dobách, kdy kontrola e-mailu byla voláním uucp
a pohled na /var/mail
. Je však dobře přizpůsoben vývojovým technologiím a funguje dobře se všemi druhy moderních protokolů, jako je POP, IMAP a dokonce i LDAP, takže můžete Mutt používat, i když jako hostitele e-mailů používáte Gmail.
Protože je dnes relativně vzácné provozovat vlastní e-mailový server a protože Gmail je velmi běžný, předpokládá tento tutoriál, že používáte Mutt s Gmailem. Pokud máte obavy o soukromí e-mailů, zvažte otevření účtu u ProtonMail nebo Tutanota, které oba poskytují plně šifrovaný e-mail. Tutanota má mnoho komponent s otevřeným zdrojovým kódem a ProtonMail poskytuje placeným uživatelům most IMAP, takže nemusíte pracovat s přístupem k e-mailu mimo prohlížeč. Mnoho společností, škol a organizací však neprovozuje své vlastní e-mailové služby a používá pouze Gmail, takže můžete mít účet Gmail, ať už ho chcete nebo ne.
Pokud provozujete svůj vlastní e-mailový server, je nastavení Mutt ještě jednodušší než to, co předvádím v tomto článku, takže se do toho rovnou ponořte.
Instalovat Mutt
V systému Linux můžete nainstalovat Mutt ze softwarového úložiště vaší distribuce a poté vytvořit .mutt
adresář pro uložení jeho konfiguračních souborů:
$ sudo dnf install mutt
$ mkdir ~/.mutt
V systému macOS použijte MacPorts nebo Homebrew. V systému Windows použijte Chocolatey.
Další zdroje pro Linux
- Cheat pro příkazy Linuxu
- Cheat sheet pro pokročilé příkazy systému Linux
- Bezplatný online kurz:Technický přehled RHEL
- Síťový cheat pro Linux
- Cheat sheet SELinux
- Cheat pro běžné příkazy pro Linux
- Co jsou kontejnery systému Linux?
- Naše nejnovější články o Linuxu
Mutt je poštovní uživatelský agent (MUA), což znamená, že jeho úkolem je číst, psát a odesílat e-maily do odchozí pošty. Úkolem nějaké jiné aplikace nebo služby je skutečně přenést zprávu na nebo z poštovního serveru (ačkoli je zde mnoho integrace s Mutt, takže se zdá, že dělá veškerou práci, i když tomu tak není.) Pochopení tohoto oddělení úkolů může pomoci konfiguraci dát trochu větší smysl.
Vysvětluje také, proč musíte mít pomocné aplikace (kromě Mutt) podle toho, s jakou službou potřebujete komunikovat. V tomto článku používám protokol IMAP, aby moje místní kopie e-mailu a vzdálená kopie pošty mého poskytovatele e-mailu zůstaly synchronizovány. Pokud se místo toho rozhodnete použít POP, je konfigurace ještě jednodušší a lze ji provést bez jakýchkoli externích nástrojů. Integrace IMAP však vyžaduje OfflineIMAP, aplikaci Python dostupnou z jejího úložiště GitHub.
Nakonec jej budete moci nainstalovat pomocí python3 -m pip
příkaz, ale v době psaní tohoto článku musíte OfflineIMAP nainstalovat ručně, protože se stále přenáší z Pythonu 2 do Pythonu 3.
OfflineIMAP vyžaduje imaplib2
, který je také ve velkém vývoji, takže preferuji ruční instalaci i toho. Proces je stejný:naklonujte úložiště zdrojového kódu pomocí Git, přejděte do adresáře a nainstalujte pomocí pip
.
Nejprve nainstalujte rfc6555
závislost:
$ python3 -m pip install --user rfc6555
Dále nainstalujte imaplib2
ze zdroje:
$ git klon [email protected]:jazzband/imaplib2.git
$ pushd imaplib2.git
$ python3 -m pip install --upgrade --user .
$ popdNakonec nainstalujte OfflineIMAP ze zdroje:
$ git klon [email protected]:OfflineIMAP/offlineimap3.git
$ pushd offlineimap3.git
$ python3 -m pip install --upgrade --user .
$ popdPokud používáte Cygwin ve Windows, musíte si také nainstalovat Portalocker.
Konfigurace OfflineIMAP
OfflineIMAP čte konfigurační soubor
~/.offlineimaprc
ve výchozím stavu. Šablona pro tento soubor s názvemofflineimap.conf
, je součástí úložiště Git, které jste naklonovali pro instalaci OfflineIMAP. Přesuňte ukázkový soubor do svého domovského adresáře:$ mv offlineimap3.git/offlineimap.conf ~/.offlineimaprc
Otevřete soubor ve svém oblíbeném textovém editoru a přečtěte si jej. Je to dobře okomentovaný soubor a je dobré se seznámit s dostupnými možnostmi.
Zde je můj
.offlineimaprc
například s odstraněnými komentáři pro stručnost. Některé hodnoty se pro vás mohou mírně lišit, ale díky tomu získáte rozumnou představu o tom, jak by měl váš konečný produkt vypadat:[obecné]
ui =ttyui
účty =%vaše uživatelské jméno-gmailu%
pythonfile =~/.mutt/password_prompt.py
fsync =False
[Účet %your-gmail-username%]
místní úložiště =%vaše-uživatelské-jméno-gmailu%-Local
vzdálené úložiště =%vaše-uživatelské jméno-gmailu%-Vzdálené
stavový_základ =sqlite
postsynchook =nic moc nového
[Úložiště %your-gmail-username%-Local]
type =Maildir
localfolders =~/.mail/%your -gmail-username%-gmail.com
nametrans =složka lambda:{'koncepty': '[Gmail]/Drafts',
'sent',< '[Gmail]/Sent Mail' /> 'označeno':'[Gmail]/Označeno hvězdičkou',
'odpad', < ] '[Gmail] br'/Koš: '[Gmail] /> , Všechny> }.get(složka, složka)
[Repository %your-gmail-username%-Remote]
maxconnections =1
type =Gmail
remoteuser =% your-gmail-username%@gmail.com
remotep asseval ='%vaše-gmail-API-heslo%'
## remotepasseval =get_api_pass()
sslcacertfile =/etc/ssl/certs/ca-bundle.crt
realdelete =no
nametrans =složka lambda:{'[Gmail]/Drafts': 'koncepty',
'[Gmail]/Sent Mail':'sent',
' ] "označené",
"[gmail] / odpadky":"odpadky",
"[gmail] / all pošty":"Archiv",
} .get (složka, složka)
FolderFilter =Lambda Složka:Složka není v ['[Gmail] / Trash',
'[gmail] / Důležité',
'[gmail] / spam',
]V tomto souboru jsou dvě nahraditelné hodnoty:
%your-gmail-username%
a%your-gmail-API-password%
. První nahraďte svým uživatelským jménem Gmailu. To je část vaší e-mailové adresy vlevo od@gmail.com
část. Druhou hodnotu musíte získat od společnosti Google prostřednictvím procesu nastavení dvoufaktorové autentizace (2FA) (i když ke kontrole e-mailů nemusíte používat 2FA).Nastavit 2FA pro Gmail
Google očekává, že jeho uživatelé budou používat web Gmail pro e-mail, takže když se pokusíte získat přístup k e-mailu mimo rozhraní Gmailu, děláte tak v podstatě jako vývojář (i když se za vývojáře nepovažujete). Jinými slovy, vytváříte to, co Google považuje za „aplikaci“. Chcete-li získat heslo aplikace na úrovni vývojáře , musíte nastavit 2FA; tímto procesem získáte heslo aplikace, které může Mutt použít k přihlášení mimo obvyklé rozhraní prohlížeče.
Pro jistotu můžete přidat i sekundární e-mailovou adresu. Chcete-li to provést, přejděte na stránku Zabezpečení účtu Google a přejděte dolů na E-mail pro obnovení .
Chcete-li nastavit 2FA, vraťte se na stránku Zabezpečení účtu a klikněte na Dvoufázové ověření pro jeho aktivaci a konfiguraci. Nastavení vyžaduje mobilní telefon.
Po aktivaci 2FA získáte novou možnost zabezpečení účtu Google:Hesla aplikací . Kliknutím na něj vytvoříte nové heslo aplikace pro Mutt. Google vygeneruje heslo za vás, takže ho zkopírujte a vložte do souboru
.offlineimaprc
soubor na místě%your-gmail-API-password%
hodnotu.Umístění hesla API do vašeho
.offlineimaprc
soubor jej ukládá jako prostý text, což může být nebezpečné. Dlouho jsem to dělal a cítil jsem se v tom dobře, protože můj domovský adresář je šifrovaný. V zájmu lepšího zabezpečení však nyní své heslo API šifruji pomocí GnuPG. To je poněkud nad rámec tohoto článku, ale napsal jsem článek demonstrující, jak nastavit integraci hesla GPG.Povolení protokolu IMAP v Gmailu
Než se budete moci navždy rozloučit s webovým rozhraním Gmailu, zbývá ještě jedna věc:Ke svému účtu Gmail musíte povolit přístup IMAP.
Chcete-li to provést, přejděte do webového rozhraní Gmailu, klikněte na ikonu ozubeného kolečka v pravém horním rohu a vyberte možnost Zobrazit všechna nastavení . V Nastavení Gmailu , klikněte na POP/IMAP a aktivujte přepínač vedle možnosti Povolit protokol IMAP . Uložte nastavení.
Nyní je Gmail nakonfigurován tak, aby vám umožnil přístup k e-mailu mimo webový prohlížeč.
Konfigurovat Mutt
Nyní, když jste vše nastavili pro Mutt, budete rádi, když zjistíte, že konfigurace Mutt je ta snadná část. Stejně jako u souborů .bashrc, .zshrc a .emacs existuje na internetu mnoho příkladů velmi dobrých souborů .muttrc. Pro svůj konfigurační soubor jsem si vypůjčil možnosti a nápady od Kylea Rankina, Paula Frieldse a mnoha dalších, takže jsem v zájmu jednoduchosti zkrátil svůj soubor .muttrc jen na to nejpodstatnější:
set ssl_starttls=yes
set ssl_force_tls=yes
set from='[email protected]'
set realname='Tux Example'
nastavit složku =imaps://imap.gmail.com/
nastavit spoolfile =imaps://imap.gmail.com/INBOX
nastavit odloženo="imaps://imap.gmail.com /[Gmail]/Drafts"
set smtp_url="smtp://smtp.gmail.com:25"
nastavit přesun =ne
nastavit imap_keepalive =900
nastavit záznam="imaps://imap.gmail.com/[Gmail]/Sent Mail"
# Cesty
nastavit složku =~/.mail
nastavit alias_file =~/.mutt /alias
set header_cache ="~/.mutt/cache/headers"
set message_cachedir ="~/.mutt/cache/bodies"
set certificate_file =~/.mutt/certificates
nastavit cestu_mailcap =~/.mutt/mailcap
nastavit tmpdir =~/.mutt/temp
nastavit podpis =~/.mutt/sig
nastavit sig_on_top =ano
# Basic Options
set wait_key =no
set mbox_type =Maildir
nenastavený přesun # gmail to dělá
# Oprava postranního panelu
s et sidebar_visible =yes
nastavit sidebar_width =16
barva sidebar_new color221 color233
## Nastavení účtu
# Výchozí doručená pošta
nastavit spoolfile ="+příklad. com/INBOX"
# Poštovní schránky, které se mají zobrazit na postranním panelu.
poštovní schránky +PŘÍJEMNÁ \
+odeslané \
+koncepty
# Jiná speciální složka
set odložená ="+example.com/koncepty"
# navigace
index makra gi "=example.com/INBOX " "Přejít do doručené pošty"
index makra gt "=example.com/sent" "Zobrazit odesláno" Nic v tomto souboru nevyžaduje změnu, ale zvažte nahrazení falešného názvu
Tux Example
a falešnou adresuexample.com
s něčím, co se vás týká. Zkopírujte a vložte tento text do souboru a uložte jej jako~/.mutt/muttrc
.Spustit Mutt
Před spuštěním Mutt spusťte
offlineimap
z terminálu pro synchronizaci počítače se vzdáleným serverem. První spuštění tohoto trvá dlouho , takže jej nechte běžet přes noc.Jakmile se váš účet synchronizuje, můžete spustit Mutt:
$ mutt
Mutt vás požádá o povolení k vytvoření adresářů, které potřebuje k uspořádání vaší e-mailové aktivity, a poté zobrazí pohled na vaši doručenou poštu.
Naučte se Mutt
Learning Mutt je směsí prozkoumávání aplikace a hledání oblíbených hacků pro vaši konfiguraci .muttrc. Například můj konfigurační soubor integruje Emacs pro vytváření zpráv, LDAP, abych mohl prohledávat kontakty, GnuPG, abych mohl šifrovat a dešifrovat zprávy, sklízení odkazů, zobrazení HTML a mnoho dalšího. Mutt si můžete vytvořit cokoli chcete (pokud chcete, aby to byl e-mailový klient), a čím více budete experimentovat, tím více objevíte.
Nástroje a tipy s otevřeným zdrojovým kódem pro zlepšení výkonu počítače se systémem Linux Upravujte soubory PDF na příkazovém řádku systému LinuxLinux