-- Leo's gemini proxy

-- Connecting to tilde.team:1965...

-- Connected

-- Sending request

-- Meta line: 20 text/gemini; lang=en

Настройка почтового клиента mutt для gmail и yandex


установка mutt

sudo apt install mutt

установка w3m

для просмотра html сообщений надо поставить пакет w3m

sudo apt install w3m

создаем каталог для mutt и другие необходимые подкаталоги и файлы

mkdir -p ~/.mutt
mkdir -p ~/.mutt/gmail.com/cache/{bodies,headers}
mkdir -p ~/.mutt/yandex.ru/cache/{bodies,headers}
touch aliases

переходим в каталог ~/.mutt

cd ~/.mutt

Тонкости авторизации mutt с yandex и gmail

Чтоб залогиниться с помощью mutt к yandex.ru не достаточно пароля, который вводится в браузере или в таком почтовом клиенте, как thunderbird, например. Для mutt надо получить дополнительно пароль от yandex.


Делается это так:

Открываем в браузере yandex.ru, логинимся.

Щелкаем в правом верхнем углу по иконке или по имени пользователя и выбираем в меню пункт "Управление аккаунтом".

Листаем вниз до раздела "Пароли и авторизация", заходим туда.

Находим подраздел "Пароли приложений", кликаем.

Нажимаем "Создать новый пароль", выбираем тип приложения "почта", вводим название, например "mutt", и создаем.

В появившемся окне копируем пароль и сохраняем его во временное место или прямо в файл accounts (см. раздел ниже)

Возможно, еще придется зайти в настройки почты на yandex.ru, найти там раздел "Почтовые программы", "Разрешить доступ к почтовому ящику с помощью почтовых клиентов" и поставить там галочки: "С сервера imap.yandex.ru по протоколу IMAP" и "Пароли приложений и OAuth-токены"



Похожая история и с gmail:

( т.к. у меня в google акаунте отображается английский язык, то укажу названия пунктов на английском, а скобках, как я предполагаю, они должны быть на русском, но это не точно:) )


Заходим в настройки своего аккаунта google.

Входим в раздел "Security" (Безопасность).

Прокручиваем до раздела "Signing in to Google" (не знаю, как это по-русски у них называется).

Находим пункт "App passwords" (наверное по нашему "Пароли приложений"), щелкаем.

Выбираем приложение "Mail" ("Почта").

Выбираем Device ("Устройство") custom, и пишем, например mutt.

Нажимаем Generate.

В появившемся окне копируем пароль и сохраняем его во временное место или прямо в файл accounts (см. раздел ниже)


создаем файл 'accounts' со следующим содержимым, заполняя имена и пароли своими значениями

set my_name = 'Your Name'
set my_gmail_user = 'your_login@gmail.com'
set my_gmail_pass = 'your_password_here'
set my_yandex_user = 'your_login@yandex.ru'
set my_yandex_pass = 'your_password_here'

шифруем файл 'accounts', чтоб не светить пароли

создаем ключи, если их еще нет:

gpg --gen-key

шифруем файл accounts:

gpg -e -r 'Your Name' accounts

затираем содержимое исходного файла accounts и удаляем его:

shred accounts && rm -f accounts

В результате должен остаться файл accounts.gpg, файл accounts удалиться.


посмотреть содержимое файла accounts.gpg можно командой:

gpg -dq accounts.gpg

создаем файл 'muttrc' со следующим содержимым

source "gpg -dq $HOME/.mutt/accounts.gpg |"

folder-hook 'gmail.com' 'source ~/.mutt/gmail'
folder-hook 'yandex.ru' 'source ~/.mutt/yandex'

source '~/.mutt/gmail'

account-hook gmail.com 'set imap_user=$my_gmail_user imap_pass=$my_gmail_pass'
account-hook yandex.ru 'set imap_user=$my_yandex_user imap_pass=$my_yandex_pass'

macro index <f2> '<change-folder>imaps://imap.gmail.com<enter>'
macro index <f3> '<change-folder>imaps://imap.yandex.ru<enter>'

set sort = reverse-date
set alias_file    = ~/.mutt/aliases
set sort_alias    = alias
set reverse_alias = yes
source $alias_file
set mailcap_path  = ~/.mutt/mailcap
auto_view text/html

создаем файл 'gmail' со следующим содержимым

# GENERAL OPTIONS
set header_cache     = ~/.mutt/gmail.com/cache/headers
set message_cachedir = ~/.mutt/gmail.com/cache/bodies
unset record

# RECEIVE OPTIONS
set imap_check_subscribed
unset imap_passive
set imap_keepalive = 900
set mail_check     = 1800

# REMOTE GMAIL FOLDERS
set folder    = 'imaps://imap.gmail.com:993'
set spoolfile = '+INBOX'
set postponed = '+[Gmail]/Черновики'

# SEND OPTIONS
set realname  = $my_name
set from      = $my_gmail_user
set smtp_url  = 'smtp://'$my_gmail_user'@smtp.gmail.com:587/'
set smtp_pass = $my_gmail_pass

создаем файл 'yandex' со следующим содержимым

# GENERAL OPTIONS
set header_cache     = ~/.mutt/yandex.ru/cache/headers
set message_cachedir = ~/.mutt/yandex.ru/cache/bodies

# RECEIVE OPTIONS
set imap_check_subscribed
unset imap_passive
set imap_keepalive = 900
set mail_check     = 1800

# REMOTE YANDEX FOLDERS
set folder    = 'imaps://imap.yandex.ru:993'
set spoolfile = '+INBOX'
set postponed = '+Черновики'
set record    = '+Отправленные'

# SEND OPTIONS
set ssl_starttls  = yes
set ssl_force_tls = yes
set realname      = $my_name
set from          = $my_yandex_user
set smtp_url      = 'smtps://'$my_yandex_user'@smtp.yandex.ru:465/'
set smtp_pass     = $my_yandex_pass

создаем файл 'mailcap' со следующим содержимым

text/html; w3m -I %{charset} -T text/html; copiousoutput;


вроде, все.

запускаем mutt.

при запуске он спросит пароль от хранилища ключей gpg.


Переключение между gmail и yandex - F2 и F3 соответственно.


--------------------------------------------------------------------------------

Используемые материалы:

https://gist.github.com/lazyfrost/ca4807e185d5e6816bf1

https://www.dmosk.ru/miniinstruktions.php?mini=mutt

https://techviewleo.com/configure-mutt-as-gmail-client-on-linux/

-- Response ended

-- Page fetched on Sat Jun 1 06:40:36 2024