Clients getting mail from servers
- Software used for getting mail to clients
- [#emailmra]: Mail Retrieval Agent (“MRA”)
Basically an MRA is designed to transfer E-Mail from a server to a client computer. Many programs which are a mail user agent will also provide this functionality. (More information, about various E-Mail roles, is available.)
- MRA software for Unix
- [#fdmemlra]: fdm (“fetch and deliver mail”)
- [#emailmua]: Mail programs
A program that interacts with a user to be displaying and creating E-Mail messages may be known as a “Mail User Agent” (“MUA”). An MUA can either access E-Mail directory (using common methods of mailbox file formats) and/or obtaining information from other software (using an MRA to access an E-Mail server, or perhaps having MRA functionality just built in).
- Text-mode programs
For further details, see the dedicated section about The
- Alpine (and earlier software)
- [#alpine]: Alpine
A successor to PINE
- Be counted
ALPINE 2.20 GREETING TEXT No Messages
<<<This message will appear only once>>>
Welcome to Alpine version 2.20!
Your Alpine configuration file indicates that you may not have used this
version of Alpine before. This version's significant changes are documented
in the Release Notes, which may be viewed by pressing "R" now or while in
the MAIN MENU.
SPECIAL REQUEST: This software was originally created and maintained as a
public service by the University of Washington until 2009; updates are made
available as a public service of the Alpine community. It is always helpful
to have an idea of how many users are using Alpine. Are you willing to be
counted as an Alpine user? Pressing Return will send an anonymous (meaning,
your real email address will not be revealed) message to the Alpine
developers for purposes of tallying.
[ALL of greeting text]
? Help E Exit this greeting - PrevPage % Print R RelNotes
O OTHER CMDS Ret [Be Counted!] Spc NextPage
If you press Enter, you will be thanked for being counted. (However, that will show up on the status line just above the help lines, and that status line could quickly be overwritten by a message about permissions, and/or a prompt about moving mail.)
- [#alpinmta]: Compatibility with SMTP servers
As a general rule, this should probably be done by the system administrator who has Alpine installed. This is especially true if SendMail is not the MTA software being actively used.
Unless the SendMail program is being used, some configuration may be needed. This configuration will probably be significantly harmful on most computers that do have SendMail operational, so the overall impact may very well be that this will probably fix more than it is likely to break. If in doubt, perhaps try Alpine without performing this work. If such a test is inconvenient (even if it would simply be considered to be too time consuming), go ahead and make this change unless Alpine is confirmed to work without it.
- Actions to perform
The SMTP server may be customized as desired, if desired. However, the default shown here (
) may work in many cases.
Presumably, only one of those files are needed: documentation suggests /usr/local/pine.conf but /usr/local/lib/pine.conf seems potentially right.
For UNIX Alpine, if neither smtp-server or sendmail-path is set, the default sendmail program is invoked with the "
-bs -odb -oem" flags, and the message is sent using the
This is probably unacceptable, or at least not preferred, for alternate
SMTPservers such as OpenSMTPd.
Note that the “sendmail-path” options seem to override the corresponding “smtp-server” options at each location that Alpine checks for configuration on which MTA software to use. However, Alpine does check certain configuration locations before others, so a “sendmail-path” option in the user's .pinerc will override /usr/local/lib/pine.conf file, but not command line options. The list of locatinos checked is listed by UW Alpine documentation: technical notes: background: section on “SMTP and Sendmail”.
The default color scheme may be to not support colors, but if colors are enabled then to use a white background. To adjust these settings, press M (from locations other than typing E-Mail) to access the Main Menu, and then S for Setup, and K for color configuration. Change the “Color Style” from no-color to another option (use-termdef will probably work best in most scenarios, but if it does not have the desired impact and another option does work, then go ahead and use another option). Then choose a foreground color other than whatever is the desired background color (perhaps most commonly black), and adjust the Background color. Then, if still needed, adjust the foreground color (white and yellow are probably the most normal-looking options, but feel free to choose whatever color you prefer most). Then press E to exit changing that one color option. Fortunately, all other colors probably have okay defaults. Press E again to exit changing all the color options, and choose Y to commit changes.
- Challenges with sending mail
Alpine may (in reversed colors) say: “
[Sending mail | |]” which may quickly update to: “
[Sending mail | 0% |]” and then seem to lock up for quite a while. The program may eventually move on to showing an error message, although that might not happen until after a long period of time (quite possibly slightly exceeding 15 minutes).
Check if a system administrator has the same problem. If so, view the section on checking permissions. If not, then check the section about checking SMTP settings.
- Checking permissions
This may be a permissions issue: Linux setup 120: Pine email problems (which starts by talking about the name Alpine, but keeps calling the program “pine” throughout the article) discusses multiple possibilities.
- [#alpinsmt]: Not working with MTA
- If not using SendMail
currently seemsthe result will be locking up on “0%” for a long time, but then eventually stating, “[Error sending: SMTP greeting failure: 421 SMTP connection broken (reply)]”
- Fixing by using settings specific to this end user
- Fast ways
To be safe, have the user exit all copies of Alpine. (Also, have the user exit all copies of the older
program, if applicable.)
Find a line that says “
” and repalce that with “
” (or some other SMTP server that the client can access and has permission to use).
Alternatively, try just putting the line at the end of the file. Placing the customizations at the end, to override the beginning of the file, may be a bit more misleading/challenging for someone who later sees the ineffective settings earlier in the file. On the plus side, this may be faster to perform. Note that this example command line does not need to be done if the file was already adjusted manually.
If this works, then the recommended way to ultimately resolve the issue is to fix this for all users. First, undo any user-specific customizations (so that future system-wide changes don't fail to apply to this user). To do that, have the user exit all copies of Alpine/
. Then, either restore the configuration file to its earlier state by using the manually-created backup, or manually perform the appropriate steps to reverse changes. Then follow the instructions for getting this fixed for all users.
- The way to adjust this from within Alpine
When logged in as the end user, the following may be doable in Alpine: press
Mto go to the Main Menu (if
defaults to view the Inbox by default). From the Main Menu, press
Sfor Setup, and then
Cfor general Configuration. Press the down arrow twice, which will likely find the option that says “
”. With that option highlighted, press
SMTPServer (for sending)
Cor the [Enter] key to “
”. Then, backspace enough to delete any pre-existing value (if there is one, which there probably is not), and type in
(or whatever other system name you wish to use to specify a working SMTP server). (After typing the server name, press Enter an odd number of times. Pressing Enter an even number of times will re-allow the user to be changing the value.) Once the value is accepted by this configuring screen, press “
E” to exit the settings editor, and press “
Y” to commit changes. Then press “
C” to compose a new message, and test the change.
The impact of this is that the .pinerc file will be modified.
If this works, then the recommended way to ultimately resolve the issue is to fix this for all users. First, undo any user-specific customizations (so that future system-wide changes don't fail to apply to this user). To do that, either restore the configuration file to its earlier state by using the manually-created backup, or manually perform the appropriate steps to reverse changes. To do that from within Alpine, go back to the Setup screen, and the general Config screen. Highlight the “
” option. When that option is highlighted, press
SMTPServer (for sending)
Cto “Delete Val”.
Then follow the instructions for getting this fixed for all users.
- Fixing this for all users
Fixing this for a single user may be a sensible approach to verify whether this is likely to work.
If this seems to be working well, then see: compatibility with SMTP servers.
(which is probably the preferred program to specify), then set smtp-server.
UW Alpine documentation: technical notes: background: section on “SMTP and Sendmail” states that Alpine “does not know how to interact with other computers on the Internet to deliver or receive email.” This probably does not mean that Alpine cannot contact a remote MSA, but rather just means that that Alpine doesn't perform the functionality of an MDA. That is, Alpine doesn't perform any sort of mail routing, including even distinguishing between whether a recipient is part of a local system or a remote system. Instead, Alpine just relays the mail to other E-Mail routing software to take care of these tasks.
- Reversing support for the mbox file
- Overview of issue
Apparently some programs, including Alpine, tend to move data from /var/spool/username to a
~/mbox file. The user may notice a message saying that this move has occurred. The user may not notice much impact, because the user's Inbox will effectively be a combination of the mail's initial location (in /var/spool/) and the user's mbox file.
This probably has some theoretical benefit of helping with quota management, but the real big downside is that this probably is not supported by all software. Quite notably, servers supporting remote E-Mail protocols may often lack support for this feature. Users may find that their E-Mail seems to be gone except for when they are using software that both has support for the mbox file, and is able to access that data.
Presumably this can probably be done by copying the contents of one file to another, using text-based file operations. These instructions show how to do much of the work from within Alpine. At the time of this writing, this method hasn't been fully explored to make sure that there are no impacts, such as adjusting the status of a message that has been marked as “Deleted” but which has not actually been “eXpunged”. This should typically get the vast majority of messages back to where the user can see them.
Alpine will not write files back to the /var/mail/ directory unless it has the sticky bit. (The permissions should show as drwxr??r?t.) The default permissions might be drwxr--r-- with the file owned by root, which would effectively prevent other users from being able to write to the directory. Fix both of these issues:
Exit any (MUA) software which may be accessing the mbox file.
From a command prompt, run:
This effectively does two things. First, it makes the messages visible as a different folder. Second, it is removing the
~/mbox file, which apparently disables this behavior from re-occurring (for this user).
Go back into
mM to go to the Main Menu (if
defaults to view the Inbox by default). From the main menu, choose
Lto view the List of folders. Hopefully this newly created filename will now show up in the list of folders. Otherwise, double-check permissions. If the user can access the file, then from Alpine's folder list, press
Ato create a text file, and then quit Alpine and move the contents of the E-Mail to that created text file.
By this point, Alpine should be able to view the messages. View the folder's contents. Then, in Alpine, press semi-colon (“
;”) to start selecting messages. Press
Ato specify that all messages should be selected. Press
Aagain, this time to apply the next command to all selected messages. Press
Sto save messages to another location. Then press
Ctrl-Xto list the folders. Highlight the desired folder and then press
S(as documented on the bottom of the screen). The desired folder name (presumably “INBOX”) should now be showing. Press Enter (which is documented as “Ret” which presumably stands for “Return”). Verify that the messages were successfully copied.
Optionally, if the messages have been successfully copied, go back to the folder where the messages were copied from. They should all be marked as “Deleted” (by having a “D” show up in the message status column, which is the third column on the screen). Press
xto “eXpunge” the old copy of the messages. The reason this is optional is because there's probably fairly little point considering the next step.
From within Alpine, view the List of folders, and then select the extra folder, and D to delete the folder.
Of course, simply preventing the problem may be nicer than trying to recover from the problem. Here are a few tips for that.
Thread about mbox indicates that supporting this feature requires “EXTRADRIVERS=mbox” to be used, and that this feature is then supported by “a program linked with c-client (like imapd, ipop3d, alpine)”. Eduardo Chappa's pine tips (archived at the Wayback Machine @ Archive.org) tip #84, also quoted by some other sites, notes: “If Pine is using your local mbox file to move messages from /var/spool/mail to it, you can stop this behavior by adding
disable-these-drivers=mboxto your .pinerc. In case you are having problems with the old maildir patch and you do not use maildir, simply add
maildirthere too.” The web page also noted, “These tips were originally posted for Pine, but they are also useful in Alpine.”
- Some other options
press M (from locations other than typing E-Mail) to access the Main Menu, and then S for Setup, and C for configuration of general items.
Here are some options which are believed to probably be worth double-checking, and very often changing from the defaults. After finding one of these, feel free to use Ctrl-W (“WhereIs”) to help quickly find the next item.
Make sure “
” is checked. (That might default to being checked.)
Allow Changing From
If desired, check “
Spell Check Before Sending
” if the end user is likely to remove unnecessary attachments.
Include Attachments in Reply
Use Sender Instead of X-X-Sender
Check the “
” checkbox unless it cuases problems?
Enable Background Sending
Delivery Status Notification
” if that is the case.
Prefer Plain Text
”. Normally, users may be able to contact other users on the system using a program such as
the “talk” protocol. This probably isn't done very often these days, but apparently alpine will disable the support for such programs. The downside to such a program is that other users can overwrite what is on the screen. However, such a message should be clearly identified, and can be overwritten using a standard screen redraw (by pressing Ctrl-L), so being able to see such messages may be preferred.
Enable Dot Files
Enable Mouse in Xterm
Expose Hidden Config
Scramble the Message-ID When Sending
Termdef Takes Precedence
Use Current Directory
” defaults to “
” (For more details, see: MIME: Reading a Message.)
<No Value Set>
Pack rats may like to select “
”. This will reduce the number of prompts to try to actually delete mail.
Expunge Only Manually
(Perhaps only if the above is checked), then “
” may be good.)
Quit Without Confirming
- [#pinemail]: Pine
The general recommendation is to not bother using Pine. Instead, use Alpine, the software which was released more recently by the same organization, and which is generally viewed as having less concerns about legal requirements/restrictions. Particularly since the successor Alpine has been released, the future fate of E-Mail software called Pine is basically to serve as a footnote of history.
Enjoyed by users for an easy interface, but shunned by those who couldn't tolerate the strict legal restrictions of free software with available source code, this software has eventually been effectively replaced by alpine. The issue was that although the University of Washington (State), which was the organization that released the software, stated that “permission to copy, distribute and modify” was not intended to allow distribution of modified code. Apparently this means that the University of Washington (State) was viewing the permissions of “distribute” and “modify” rather separately. This viewpoint and surrounding quarrels had some substantial repercussions, such as the univeristy threatening a lawsuit over the creation of an E-Mail program (called MANA) which hadn't yet been released, incompatibilities with Debian's Free Software Guidelines, and possibly was instramental in UW essentially ceasing development of Pine (although later Alpine was used).
The software seemed to integrate with pico, a text editor with similar licensing concerns. (Because of these same licensing concerns, the text editor named pico lost popularity to a similar text editor, the text editor named nano.)
- [#mailana]: MANA (“Mail And News Agent”)
- [#alpinere]: re-alpine
Wikipedia's article on Alpine E-Mail client: section labelled “Future”, from July 2014 has a blurb on Re-Alpine.
- [#pcalpine]: PC-Alpine
PC-Alpine is for Microsoft Windows, and provides standard GUI elements (e.g., a title bar, and a minimize button). For normal usage, most of the program's window shows text, looking like a standard text console program. However, it does run in another window, rather than running in a command prompt window. Another window may also appear for initial configuration.
For those who want to run Alpine in a console window, there may be hope. Alpine for Cygwin compiling directions exist. StackOverflow question about pine in a command prompt recommended using alternative software, like Mutt.
See: PC-Alpine. Get the unpatched copy, as it contains a necessary DLL file. The patched version contains just an executable file, and needs the DLL file.
Or, an older Acquire PC-Alpine from UW is also available.
- [#muttmail]: Mutt
The home page has the following quote near the top: “All mail clients suck. This one just sucks less.”
(Note: Wikiepdia's page on Mutt states, “New messages are composed with an external text editor by default”. Is that an option that can be changed from default?)
For Microsoft Windows versions, the Mutt download page refers to two options: Win32Mutt, and UnixMail for Win32.
- The Win32Mutt site
This has a Cygwin version, and a version that requires less DLL files. Still, that's probably less filse than a full Cygwin port. Win32Mutt's Win32 executables page provides DLL files, and an executable requiring fewer DLL files. (Otherwise, Shreevasta page on Mutt notes libiconv2.dll can be renamed to libiconv.dll)
- UnixMail for Win32
- Includes Mutt and requires CygWin and PERL.
- [#ltrdtmlt]: LTR Data mail tools
LTR Data: .Net Applications requires .NET (so this is for Microsoft Windows), and supports SMTP, POP3, and some variations (TLS). Requires .NET Framework 3.5 or 4.x. For retrieving mail using POP3 without encryption (SSL/TLS), there is also popdump and popman available from the same site, which are designed for Microsoft Windows (but may not need .NET framework).
- [#elmmail]: Elm (a sort of abbreviation using the first letter(s) of the words “electronic mail”
- Used “as an inspiration” (according to Wikipedia's article on Elm) by other software including pine (and, so, its successor alpine) and mutt. Wikipedia's article on Elm notes, “From about 1995 elm slipped in popularity and functionality, and it now sees relatively little use.”
- [#mailcmd]: The
- Mail programs that use a GUI
- Icedove, IceApe, SeaMonkey, Mozilla Thunderbird
- Evolution, Wikipedia's article on Evolution
- [#kmail]: KMail
- Wikipedia's article for KMail redirects to Wikipedia's article for Kontact: “E-Mail” section.
- Wikipedia's page for GNUMail
- [#msoutlk]: Microsoft Outlook series of software
There are several programs that may include the word “Outlook” in their name, including Microsoft's Outlook Express, Outlook Web Access, and Microsoft Outlook (which has sometimes been known as “Microsoft Office Outlook”).
- [#outlkexp]: Outlook Express
Outlook Express has often been treated as a component bundled with the Microsoft Internet Explorer web browser. Prior to being released with Internet Explorer, older versions of the software were named “Microsoft Internet Mail and News”, according to Wikipedia's article on “Microsoft Internet Mail and News” and Wikipedia's article on Outlook Express. Also, Wikipedia's article on the software called “Windows Messaging” states that the software has been called “Windows Messaging” and “Microsoft Exchange” (before the server software called Microsoft Exchange was released). Information on client named “Microsoft Exchange” says this “version of Exchange that shipped with the first release of Windows 95 was later renamed Windows Messaging on Windows 95 OSR2.” The same web page notes, “Versions of the Exchange client exist for Windows 95, Windows 3.1, Windows NT, and the Macintosh.”
- Microsoft Outlook
(Is this basically a hybrid successor to other E-Mail programs and also “Microsoft Schedule+”? The latter program was mentioned by a web page with Information on client named “Microsoft Exchange”.)
- Software that may be bundled with an operating system
This may include several of the above options.
- Apple Mail
A successor to NeXTMail, this is bundled with Mac OS X. For other platforms, perhaps check out another successor to NeXTMail, GNUMail.
- Microsoft/Windows Mail
Working with Windows Mail in Windows Vista notes the name in Vista is Windows Mail, and the name of the similar software meant for use in Windows 7 is called Windows Live Mail. Wikipedia's page on Windows Mail states about both pieces of software (Vista's “Windows Mail” and 7's “Live Mail7rdquo;) that this software is the successor/replacement to/for Outlook Express. (To clarify: Working with Windows Mail in Windows Vista says that users of Windows 7 will “need to install a new program.” Windows Live Mail does not come with the operating system, but is downloadable.) This newer software is probably not related to any software code which was part of “Microsoft Mail” for earlier versions of Windows.
Some older software for Windows had been released by Microsoft. Wikipedia's page for “Windows for Workgroups Mail” now redirects to Wikipedia's page for Microsoft Mail. An example of a reference is Microsoft Q94178: PC WFW: Differences Between Win For Workgroups Mail & PC Mail. Software called “Microsoft Internet Mail and News” became known as Outlook Express.
- Other options
- Wikipedia's Comparison of E-Mail clients
- Handling mailto:
- [#mswmalto]: Microsoft Windows
Note: This is not necessarily what action will be taken by a web browser like Firefox. Changing the information described here might not affect a web browser's behavior. In the case of Microsoft Internet Explorer, though, this change will affect that browser. So the proper approach to take for a web browser an certainly be browser-specific.
This is for the operating system. For example, this section talkes about what will happen if a person runs:
- Windows 7 (and older?)
If using Windows 7 (and perhaps earlier, back to about WinXP, but probably not Windows 8), the following example may be helpful. This example shows using 32-bit Firefox on a 64-bit version of Microsoft Windows:
REGQUERY HKCU\mailto\shell\open\command /ve
REGQUERY HKCR\Software\Classes\mailto\shell\open\command /ve
REGADD HKCU\Software\Classes\mailto\shell\open\command /ve /t REG_SZ /d
C:\Program Files (x86)\Mozilla Firefox\firefox.exe
REGQUERY HKCU\mailto\shell\open\command /ve
Note: There might be multiple E-Mail handlers. The above shows how to create a single E-Mail handler on a system that doesn't have any pre-configured ones. Further details about other scenarios may be documented at: MSDN: Default handlers.
Note: If the mailto: program is being used with virtual keyboard codes, then only the executable file will be used. Parameters get chopped/ignored. One way around that is have the registry value point to a batch file, and then the batch file can specify any desired parameters to the E-Mail program. The E-Mail address will be passed if the registry value refers to “%1”.
REGADD HKCU\Software\Classes\mailto\shell\open\command /ve /t REG_SZ /d
REGQUERY HKCU\mailto\shell\open\command /ve
(The registry entry only needs a single percent. That command line shows two percents because the example was written for a command line shell that converts
will turn into a “%1”.)
- Windows 8
Warning: This is untested. References here are provided for convenience, but not because the author of this text recommends any of these as verified, working solutions. At the time of this writing, they aren't (verified by the author of this text).
See: Motes's answer to shellscape's StackOverflow.com question on Win8 protocol handling. Computers that are part of an Active Directory domain may have settings chosen by following the process at Marco Nunes's Blog on TechNet: Behind Windows Setup & Deployment: Windows 8: Associate a file Type or protocol with a specific app using GPO (e.g:default mail client for MailTo protocol)
Perhaps see also: Jerry Nixon blog>: Windows 8 Custom Protocol Activation
Squirrelmail info on Mailto refers to a Win9x.reg which implies that the process may be different than the process used by newer operating systems. (No further details are available here, yet.)
- [#webmail]: Web mail options
- Locally hosted E-Mail
- [#otlkwbac]: “Outlook Web Access”
Many organizations use Microsoft Exchange. For such organizations, an end user may be able to access E-Mail by trying one of the following addresses: https://mail.example.com/owa or https://mail.example.com/exchange
- Open WebMail / @pen Webmail
twig Group Ware guide/tutorial says “Since the writing of this guide, OpenBSD has gradually included some webmail client pieces into the ports tree. Two in particular are Horde/IMP and OpenWebmail. Please review these if they meet your needs.” (Hyperlink added to the quoted text.)
Uses perl. Documention's table of contents mentioned Spam Assassin support. "We highly recommend using SpeedyCGI with Open WebMail. Open WebMail gets almost 5x to 10x speedup when running with SpeedyCGI. (See increasing CGI speed for details.)
IMP (“Internet Messaging
(Random notes: Perhaps quoted, perhaps were typed by webmaster of this site:) Uses php. apropos php showed nothing on my system, but apropos perl did. I am under some impression that perl may be more previlent, or constant (not needing to deal with choosing which of multiple mutually exclusive, due to incompatibility, versions to use) than php. Hence I looked first at Open WebMail. twig Group Ware guide/tutorial says "Since the writing of this guide, OpenBSD has gradually included some webmail client pieces into the ports tree. Two in particular are Horde/IMP and OpenWebmail. Please review these if they meet your needs."
Motto: “webmail for nuts”
- twig Group Ware guide/tutorial says "Since the writing of this guide, OpenBSD has gradually included some webmail client pieces into the ports tree. Two in particular are Horde/IMP and OpenWebmail. Please review these if they meet your needs."
- Remote Web-based E-Mail (with standard protocols)
A danger with some of these solutions is a potential lack of security when a third party is involved. Even if a person doesn't reveal credentials by using HTTP, perhaps because HTTPS is being used, the credentials get used behind the scenes, and this could result in a security compromise.
mail2web.com supports HTTPS and has been used by many people without problems, at least if directions are followed: Visit https://mail2web.com and ensure the web site says “You are now using a secure connection” before logging in.
- Public webmail
Note: these sites are often used without a decent amount of consideration given to security. United States Vice President candidate Sarah Palin's “Yahoo!” Mail account was hacked: Wikipedia's article on “Sarah Palin E-Mail hack.
Options may include:
Providing large amounts of space when freebie competitors often imposed limiting space restrictions, GMail has become a favorite of many people who appreciate technnology.
- “Yahoo! Mail”
- Outblaze? Rocketmail?
- Details of E-Mail traffic
There have been multiple protocols used for clients to be able to check their E-Mail. If the MUA being used is actually a web interface, the protocols being used may be HTTPS. For more detail about web traffic, see: web traffic.
Some people might use a VPN to connect to an internal network. Once a VPN is established, from the end user's perspective, access is essentially the same as internal E-Mail checking. The traffic goes over the public Internet is encrypted VPN traffic and then the traffic uses other standard mail protocols for the communications over the protected internal (presumably more private) LAN. For more details about using a VPN, see: tunneling traffic.