Click here to Skip to main content
15,895,423 members
Articles / Programming Languages / C#
Article

SMTP and POP3 Mail Server

Rate me:
Please Sign up or sign in to vote.
4.88/5 (96 votes)
29 Sep 20031 min read 1M   18.9K   315   313
An SMTP and POP3 mail server written using the .NET Framework and C#.

Sample Image - smtppop3mailserver.jpg

Introduction

The MailServerComponent implements POP3 and SMTP (core) servers. It Handles lowlevel POP3 and SMTP commands and raises events according to it. The MailServer service just handles MailServerComponent events and does mail retrieving and storing job.

Features

General:

  • SMTP/POP3/IMAP4/WebMail
  • IP access filtering
  • User mailbox size limit
  • Supports XML or MSSQL databases
  • Nice GUI for administation
  • Well commented source code included

SMTP:

  • All basic SMTP features  
  • Supports multiple domains  
  • Supports multiple e-address for one mailbox  
  • Supports aliases(Mailing lists). Supports public and private(needs authentication) lists.
  • Supports email routing. eg *ivar* pattern routes all addresses containing ivar to specified mailbox or remote address  
  • SMTP AUTH (LOGIN CRAM-MD5) (supported authentication types)  
  • SMTP SIZE, PIPELINING, 8BITMIME, CHUNCKING support  
  • SMTP custom message filters  
  • Relay can be controlled by IP access or authentication

POP3:

  • All basic POP3 features
  • APOP command for secure authentication
  • POP3 AUTH (LOGIN CRAM-MD5) (supported authentication types)
  • POP3 remote accounts

WebMail (ASP.NET):

  • Standalone webmail, can be used any with IMAP based mailserver
  • Supports XML or MSSQL databases
  • Multiple UI languages (ENG,EST,RUS)

Notes

License

This article has no explicit license attached to it but may contain usage terms in the article text or the download files themselves. If in doubt please contact the author via the discussion board below.

A list of licenses authors might use can be found here


Written By
Estonia Estonia
This member has not yet provided a Biography. Assume it's interesting and varied, and probably something to do with programming.

Comments and Discussions

 
QuestionStore messages in SQL db? Pin
so_codeproject20-Oct-03 7:06
so_codeproject20-Oct-03 7:06 
AnswerRe: Store messages in SQL db? Pin
Anonymous21-Oct-03 7:09
Anonymous21-Oct-03 7:09 
Questionhow can i open your solution file(*.sln)? Pin
pcs7315-Oct-03 15:32
pcs7315-Oct-03 15:32 
AnswerRe: how can i open your solution file(*.sln)? Pin
Ivar Lumi15-Oct-03 21:13
Ivar Lumi15-Oct-03 21:13 
GeneralRe: how can i open your solution file(*.sln)? Pin
pcs7316-Oct-03 14:22
pcs7316-Oct-03 14:22 
GeneralIMAP error Pin
Bill Seddon1-Oct-03 2:05
Bill Seddon1-Oct-03 2:05 
GeneralRe: IMAP error Pin
Ivar Lumi1-Oct-03 2:35
Ivar Lumi1-Oct-03 2:35 
GeneralRe: IMAP error Pin
Bill Seddon1-Oct-03 4:01
Bill Seddon1-Oct-03 4:01 
Thanks, that was the solution. I chose not to use the default folder offered and had not ended the path with a "\".

Changing topic, I'm looking for a mail server I can use at home. I'm keen that my kids are able to send and receive e-mail but I'd like to see what they are sending and, more importantly, who they are receiving mail from. Our firewall restricts access to web-based e-mail services like Hotmail and while it sounds a bit like "Big Brother", I think it's better to be safe than sorry. When they are old enough they'll find a way to send e-mail privately anyway.

So I'm keen to learn whether the filtering mechanism in the mail server could be used to implement the functionality I want. For example, can I intercept mail inbound to, or outbound from, a specific address and have a copy of it sent to another person (me or my wife)?

Finally, have you given any consideration to the support of non-mail folders under IMAP to support Outlook folder types such as Calendars, Tasks, etc. or to act as a public folder store? Are you aware of any documentation covering the functions the server needs to support to be able to store Outlook information. Of course I could setup Exchange but it is so difficult to install and maintain!

Regards

Bill Seddon
GeneralRe: IMAP error Pin
Ivar Lumi1-Oct-03 4:14
Ivar Lumi1-Oct-03 4:14 
GeneralRe: IMAP error Pin
jfos22-Jun-04 4:04
jfos22-Jun-04 4:04 
GeneralRe: IMAP error Pin
Ivar Lumi1-Oct-03 2:35
Ivar Lumi1-Oct-03 2:35 
GeneralWebMail added Pin
Ivar Lumi24-Sep-03 19:34
Ivar Lumi24-Sep-03 19:34 
GeneralRe: WebMail added Pin
khmerkidnow12-May-04 14:09
khmerkidnow12-May-04 14:09 
GeneralRe: WebMail added Pin
Anonymous12-May-04 20:10
Anonymous12-May-04 20:10 
GeneralRe: WebMail added Pin
Anonymous15-May-04 11:29
Anonymous15-May-04 11:29 
GeneralRe: WebMail added Pin
Anonymous16-May-04 6:48
Anonymous16-May-04 6:48 
GeneralRe: WebMail added Pin
Anonymous17-May-04 0:07
Anonymous17-May-04 0:07 
GeneralMax Clients Pin
Jeff Circeo24-Sep-03 10:02
Jeff Circeo24-Sep-03 10:02 
GeneralRe: Max Clients Pin
Ivar Lumi24-Sep-03 19:33
Ivar Lumi24-Sep-03 19:33 
GeneralQuestion Pin
vor16-Sep-03 3:48
vor16-Sep-03 3:48 
GeneralRe: Question Pin
Ivar Lumi16-Sep-03 4:05
Ivar Lumi16-Sep-03 4:05 
GeneralRe: Question Pin
Frog's Brain19-Jan-04 17:42
Frog's Brain19-Jan-04 17:42 
GeneralIMAP Pin
Ivar Lumi24-Jul-03 5:54
Ivar Lumi24-Jul-03 5:54 
GeneralSMTP AUTH Pin
emmet20-Jun-03 15:23
emmet20-Jun-03 15:23 
GeneralRe: SMTP AUTH Pin
Ivar Lumi23-Jun-03 22:49
Ivar Lumi23-Jun-03 22:49 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.