Торификация mutt
Решил перейти на "православные" способы юзания электропочты, т.е. консольные.
Возникает вопрос, как торифицировать Mutt? Точнее, не сам мутт, конешна, а отправку почты с него.
Ибо, как я понимаю, для того, чтобы отправлять почту через Mutt, его так и так надо натравливать на локальный sendmail/exim etc.
В данном случае, меня интересует exim как дефолтный почтовый сервер в моем дистрибьютиве. Сейчас он настроен, что доставляет почту только на локалхосте между юзерами.
Как я понимаю, мне нет необходимости приобретать специальный dns-name и настривать его как типа публичный. Тем более, что тогда об анонимности можно будет забыть :)
То есть, его надо настраивать, чтобы он коннектился с соответствующим публично доступным мыло-сервером, хоть с гмылом, хоть со своим на удаленном серваке, для использования почтового аккаунта на этом последнем.
Как настроить – вроде бы куча инструкцией, если погуглить.
Вопрос: как правильно заторить? Можно ли средствами exim прописать заворачивание в socks4a проксю?
Или, если прозрачно торифицировать весь внешний трафик пользователя exim – будет ли это работать?!
Хотелось бы еще узнать, легко ли настроить Mutt, чтобы он скрывал версию ОС и версию почтового клиента?
Кстати, наверное, можно вообще слать почту со своего сервера, на котором крутиться свой публичный почтовый сервер? Просто поставить туда mutt, коннектиться по ssh, и фигачить через удаленный терминал, чтобы ip клиента определялся как ip почтового сервера.
А с сервером коннектиться по ssh из-под прозрачно торифицированного юзера?
Единственное неудобство – на сервера нельзя баловаться с gpg,придется шифровать/подписывать текст на локалхосте и вставлять в сообщение через буфер, а прикрепляемые зашифрованные/подписанные файло также подписывать/шифровать на локалхосте и в таком виде по ssh загонять на сервак.
Опцию mutt hostname на всякий случай лучше оставить.
И для apt-get DNS-резолвинг он тоже делает.
Да, но дело не в DNS-утечках, а в том, через что они резволят и как.
ОК. По моим представлениям, msmtp должен её перезаписывать теми настройками, какие указаны в его конфиге (опция host), нет?
Выше уже написал, что proxychains4 (proxychains-ng) и torsocks (v1.3) по дефолту резолвят через SOCKS. У меня нет проблем с доступом к onion-сайтам через wget.
Не знаю, как там в некроверсиях (мне это не особо интересно), но даже в proxychains-3.1 нет принудительного разрешения через стронний DNS.
Для этого есть скрипт proxyresolv
Можно вообще без скриптов обходиться если определить переменную окружения
или
Ранее написал как в идеале должно быть, но пока этого нет и лучше определить переменную mutt hostname.
Да, через SOCKS, но через какой DNS-сервер-то? Всё, что я делаю через Tor, в норме резолится на экситах через те DNS-сервера, которые указаны локально в настройках этих экситов. Если это не так, это профилирование и лишняя утечка. Когда я использую proxychains, это не так, да.
Взаимоисключающие параграфы? Если я не горожу дополнительные костыли, хаки и переменные, при запуске proxychains (т.е., по умолчанию) весь резолвинг идёт через 4.2.2.2 — это профилирует по полной.
Да, в версии 3.1 скорей всего есть, библиотека-so видимо вызывает скрипт proxyresolv, который использует 4.2.2.2, поэтому onion-сайты наверное не открываются (это верно?). Но в новых версиях это не так, скрипт proxyresolv отсутствует, как и proxychains, вместо которого теперь бинарный файл proxychains4.
Даже если бы было так, то соединение с 4.2.2.2 всё-равно через Tor. Кроме этого, при использовании username-авторизации для разных приложений запросы идут по разным цепочкам, т.е. выходят с разных экситов. Так что не стоит драматизировать. А в новых версиях dig через 4.2.2.2 вообще нет, всё на экситах Tor разрешается.
Правда ваша:
По-моему, для некоторых доменов это работает, иначе я такие чудеса никак не могу объяснить.
Я для себя решил авторизацией не заморачиваться, а вместо этого всё разрулить по разным SocksPort'ам Tor'а — это намного проще.
Кстати, эти предупреждения пишутся и писались всегда. Неужели каждый раз, когда я скачиваю почту, fetchmail пытается сделать DNS-резволинг моего локального hostname через внешний DNS-сервер? И что не так с моим hostname? Прописал удобное слово в качестве него (естественно, резолвится по DNS оно не будет, но это и не нужно). В /etc/hosts закомментировал всё, что касается IPv6, оставил только это:
В стандартном pkgsrc его нет, но он есть в wip'е. В принципе, можно рискнуть поставить...
Добавить произвольную строку на место user/pass в proxychains.conf или torsocks.conf проще чем создавать под каждое приложение свой SocksPort и помнить соответствие между ними. В torsocks авторизация добавляется путём изменения двух строк в глобальном /etc/torsocks.conf (можно изменить при конфигурации ./configure опцией conf-file FILE)
Вместо имени пользователя автоматически будет подставляться системный пользователь, от имени которого запускается приложение. Но надёжней указывать пользователя в командной строке
По умолчанию 5 минут, меняется опцией socket-timeout. Есть ещё keep-alive-timeout и default-server-timeout, но они по-видимому для обычных HTTP-запросов, а не TCP-туннеля через CONNECT.
Да, Tor их не проверяет. Главное чтобы они отличались, тогда работает флаг IsolateSOCKSAuth и используются разные цепочки.
в одном конфиге нашел строку:
Эта информация присутствует в хедере и получивший письмо может её прочитать. Однако, судя по смыслу текста, эта информация предназначена не получателю, а митму. Вопрос: какими средствами митм (да что там митм, просто админ сети, в которой пересылается сообщение) может прочитать этот хедер? Речь идет о линуксах или freebsd.