Email utopia: cross-platform (inc mobile), encryption, signing, threading, account aggregation. Is it possible? If so, how?

1

2

I'd like to achieve the following:

  1. Be able to aggregate my email accounts such that I can receive an email sent to one of my email accounts and reply to it from any other email account of mine, without having to switch email clients, and without breaking conversation threading.
  2. Be able to send signed and/or encrypted emails using either PGP/GPG or S/MIME from any email client I use.
  3. Be able to access my emails securely on my computer (e.g. via a Web-based email client using HTTPS, or via an email client program installed in an encrypted partition on my computer).
  4. Be able to access my emails securely on other people's computers (e.g. via a Web-based email client using HTTPS, or via an email client program carried on an encrypted USB key).
  5. Be able to access my emails securely on an Android mobile phone, using an email client that allows me to read and write messages when not connected to the internet.
  6. Be able to search on the subject, message, sender, to, cc and bcc fields of my emails from any email client I use.
  7. Be able to a graphical email client in all cases.

Currently, Gmail partially provides 1 (only via the Gmail interface on the Web: not via mobile or via local clients, AFAIK), and fully provides 3, 4, 5, 6 and 7. It may also be able to partially provide 2 (again, only via the Gmail interface on the Web, and only when using Firefox to access it) with the addition of the Gmail S/MIME Firefox add-on, but it's possible this would impact on 6.

Is there a solution that fully provides all seven? It needn't be based on Gmail. If so, what is it?

By a "solution", I mean some combination of:

  • email host,
  • email client to use on my my computer,
  • email client to use when the only internet-connected device available is someone else's laptop/desktop,
  • email client to use on Android,
  • and any configuration details that might be necessary.

sampablokuper

Posted 2011-04-21T19:09:15.950

Reputation: 2 389

Please keep it civil. Calling names and insulting users will get you nowhere. – Sathyajith Bhat – 2011-04-22T14:38:08.857

1@Sathya: I figured linking to, and quoting from, a GNU Project page would be acceptable. Apparently not; apologies. – sampablokuper – 2011-04-22T14:42:08.783

Answers

2

I don't like to use graphical mail clients, and the best I've come up with is to ssh to my own server where I run mutt locally. I pull mail from all my accounts to this server with fetchmail.

This does not satisfy your Android condition.

The only problem I have with this set-up is that there's a single point of failure. I would like to have my e-mail database distributed somehow.

Tom Ellis

Posted 2011-04-21T19:09:15.950

Reputation: 21

You want the email database distributed somehow. You could have each of your PCs get all the emails (eg: offlineimap), and have mutt read emails from there. That helps keep distributed copies, use mutt, and keep everything is sync. Some sample dotfiles on how to do this are here if you're interested: https://github.com/hobarrera/dotfiles#mutt--offlineimap--notmuch--opensmtpd--vdirsyncer

– WhyNotHugo – 2015-01-20T20:30:36.073

+1 for alerting me to the fact I hadn't specified my preference for GUI email clients! – sampablokuper – 2011-04-24T14:53:17.153

0

The closest thing to an answer I've been able to come up with so far is the following:

  • Firefox + Gmail S/MIME on my computer
  • Firefox + Gmail S/MIME on an encrypted USB key for use on others' computers
  • Fennec + Gmail S/MIME, if it can be adapted for Fennec, on Android.

Can anyone do better, or provide any tips on the easiest way to implement this suggestion?

sampablokuper

Posted 2011-04-21T19:09:15.950

Reputation: 2 389

0

Thunderbird + IMAP + (S/MIME | (GnuPG + Enigmail)).

On Android, K-9 + IMAP + APG.

Gmail supports secure IMAP and SMTP (and you can send mail from any address linked to your account).

user1686

Posted 2011-04-21T19:09:15.950

Reputation: 283 655

If I use Thunderbird to send an email from an account other than a Gmail account, it won't show up in "Sent" items as viewed from the Gmail web interface, though, which would break threading in some cases. Or are you suggesting I never use the Gmail web interface, but just take Thunderbird with me on a USB key/etc when I'm away from my computer? – sampablokuper – 2011-04-22T14:45:21.260

Perhaps there's a fix for the "Sent" threading problem, but if so, I'm not aware of it; feel free to elucidate if you know of one! – sampablokuper – 2011-04-22T14:52:47.150

1@sampablokuper: 1) Just tell Thunderbird to store sent messages to the proper folder. The latest version even does it automatically. 2) Yes. – user1686 – 2011-04-22T14:57:58.457

@sampablokuper, if the other account is known to Gmail (like grawity assumes), then Send mail from another address without "on behalf of" should work? You can then use the Gmail SMTP server, which automatically copies sent messages and labels them as "Sent".

– Arjan – 2011-04-22T14:59:14.213

(Oh, might actually be unrelated!) – Arjan – 2011-04-22T15:01:19.530

@grawity, if your suggestion is basically just to restrict myself to two email clients (K9 on Android, portable Thunderbird everywhere else), then I'm unsure what role Gmail plays, other than being a generic email provider with IMAP support. Is there anything special about Gmail that made you include it in your answer? Thanks, and my apologies if I'm being a bit slow in understanding. – sampablokuper – 2011-04-22T15:47:55.323

1@sampablokuper: No, any IMAP supporting provider will work the same way. – user1686 – 2011-04-22T16:00:05.330

0

My take on your goals:

  1. Aggregate mail accounts: Multiple clients provide multi-account access. This is something to look into for a given client.

  2. Send/receive signed/encrypted PGP / S/MIME mail: again, configure on a per-client basis.

  3. Access emails securely on your own host: IMAPS will give you the option to use a secured, authenticated channel to access a central server (or servers).

  4. Access emails securely on an arbitrary third-party host: trickier. I generally don't trust other people's systems to be secure on a software basis, and occasionally HW. A bootable USB key with a preconfigured IMAP client would cover the first case. My preference would be to have my own system (phone, tablet, laptop) with me.

  5. Secure Android mobile access: K9 mail offers IMAPS, multiple account access, and PGP / S/MIME. Threading is weak on any mobile client I've seen, but will be maintained in other clients. Search has been limited, but will hopefully improve.

  6. Search on multiple fields: again, a client-specific implementation issue.

  7. Have access to a graphical client: if that's "in addition to a non-graphical client", do I have a deal for you!

Basic solution:

  1. Host your accounts on a service/services offering IMAPS (SSL/TLS secured IMAP) access. You can then access your account(s) from multiple clients.

  2. "offlineimap" is an IMAP synching utility which can keep local and remote stores of your IMAP account(s) synchronized. Including between multiple client hosts (each is synchronizing itself to the appropriate IMAP server for the account(s) in question).

  3. A bootable Linux distro on USB would cover the mobile use case. KMail/Kontact, Thunderbird, Evolution, and other full-GUI clients should work, several of those are also multi-platform and will run on MS Windows and Mac systems as well. My preference is the console-mode "mutt" mail client. It's particularly powerful at threading, search, and filtering. Though you've specified GUI, I'd recommend you at least look over mutt's features. Recent forks include support for GMail-like tagging.

Depending on your specific use case, you might want to use a locally synchronized IMAP tool (such as offlineimap), or a client which connects directly to and operates on the remote IMAP server. Mutt, again, can operate in either mode. It can also be accessed locally, or as Tom Ellis noted, remotely via SSH.

Proper message threading requires appropriate header support -- creating, observing, and interpreting the "References" or "In-Reply-To" headers. See: http://www.jwz.org/doc/threading.html

Once again, mutt does this correctly.

dredmorbius

Posted 2011-04-21T19:09:15.950

Reputation: 433