Skip to main content

Messing mail server terms

Rất nhiều thuật ngữ liên quan đến mail server khiến mn messing. What's the different between POSTFIX and SSMTP ? What DoveCot does ?

Key point:
Typical deployment[Wiki]

As an SMTP server, Postfix implements a first layer of defense against spambots and malware. Administrators can combine Postfix with other software that provides spam/virus filtering (e.g., Amavisd-new), message-store access (e.g., Dovecot), or complex SMTP-level access-policies (e.g., postfwd, policyd-weight or greylisting).

From http://www.dovecot.org/

Dovecot is an open source IMAP and POP3 email server for Linux/UNIX-like systems, written with security primarily in mind. Dovecot is an excellent choice for both small and large installations. It's fast, simple to set up, requires no special administration and it uses very little memory.

Some of the most notable features of Dovecot include:

Dovecot is among the highest performing IMAP servers while still supporting the standard mbox and Maildir formats. The mailboxes are transparently indexed, which gives Dovecot its good performance while still providing full compatibility with existing mailbox handling tools.
Dovecot is standards compliant. Dovecot v1.1 passes all IMAP server standard compliancy tests while most other servers fail many of them.
Dovecot's indexes are self-optimizing. They contain exactly what the user's client commonly needs, no more and no less.
Dovecot is self-healing. It tries to fix most of the problems it notices by itself, such as broken index files. The problems are however logged so the administrator can later try to figure out what caused them.
...

So what are IMAP n POP3 ?

http://serverfault.com/questions/626803/why-use-dovecot-and-postfix-sendmail

MTA is the service that route messages from one region to another. You drop the letter in the public submission box and MTA pass it to the city where recipient live. Then local delivery agent (LDA) delivers letter to the recipient's residence. And then recipient fetch the letter from his personal POP/IMAP mailbox and read it with MUA.
Email simply resembles old good classic mail service. When you get the similarity, you'll get the meaning of each service.
May be that helps
MTA: MTA
MDA:enter image description here
POP/IMAP:enter image description here



Còn rất nhiều thuật ngữ liên quan đến server mail linux tốn thời gian mới hiểu rõ được. 
Khi config, install các mail software khác nhau chúng ta sẽ có cơ hội tìm hiểu sự khác biệt giữa chúng.

As an SMTP client, Postfix implements a high-performance parallelized mail-delivery engine. Postfix is often combined with mailing-list software (such as Mailman).

Như ở trên nói khi deploy Postfix như là 1 SMTP server. Còn đây là khía cạnh SMTP client.
What's the SMTP server ?

Thông thường nếu muốn hiểu sâu 1 khái niệm chg ta nên tìm hiểu nó như 1 người ngoại đạo ko biết gì như thế tránh được hiểu 1 cách mơ hồ hoặc ngại RTFM "read the fucking manual".

Để rõ hơn  về POSTFIX chúng ta thử coi Architecture của nó:

Postfix consists of a combination of server programs that run in the background, and client programs that are invoked by user programs or by system administrators.


(Ảnh nét hơn cb coi wiki postfix)
Đây có thề là key tại sao chúng ta hay bị mess với các trình/thao tác mail: VD cài postfix, test sendmail bằng "lệnh" sendmail hay "lệnh" mail, send = code... "Lệnh" ở đây có đồng nghĩa với software, program hay mail client ?

The Postfix core consists of several dozen server programs that run in the background, each handling one specific aspect of email delivery. Examples are the SMTP server, the scheduler, the address rewriter, and the local delivery server. For damage-control purposes, most server programs run with fixed reduced privileges, and terminate voluntarily after processing a limited number of requests. To conserve system resources, most server programs terminate when they become idle.

Client programs run outside the Postfix core. They interact with Postfix server programs through mail delivery instructions in the user's ~/.forward file, and through small "gate" programs to submit mail or to request queue status information.

Other programs provide administrative support to start or stop Postfix, query status information, manipulate the queue, or to examine or update its configuration files.

Yellow ellipses
One of Postfix' many daemons serving exactly one purpose. This split-up into many smaller pieces of software is considered one of the reasons why Postfix is secure and stable.
Blue boxes
The blue boxes represent so-called lookup tables. A lookup table consists of two columns (key and value) containing information used for access control, e-mail routing etc.
Yellow boxes
The yellow boxes are either mail queues or files. In either case, e-mails are stored on persistent media (e.g., a hard disk).
White clouds
The clouds stand for points at which e-mails enter or leave Postfix. For example, smtpd receives mail from other mail servers or users whereas smtp relays mail to other MTAs.

Quest: DoveCot fit như thế nào vô hình vẽ postfix trên ?

Further reading: (For Expert)
Ai muốn nghiên cứu sâu hơn như về bảo mật, tối ưu tốc độ thì coi tiếp document.

Implementation
The Postfix implementation uses safe subsets of the C language and of the POSIX system API. These subsets are buried under an abstraction layer that contains about 50% of all Postfix source code, and that provides the foundation on which all Postfix programs are built. For example, the "vstring" primitive makes Postfix code resistant to buffer overflow[5] attacks, and the "safe open" primitive makes Postfix code resistant to race condition attacks on systems that implement the POSIX file system API. This abstraction layer does not affect the attack resistance of non-Postfix code, such as code in system libraries or in third-party libraries.



Comments

Popular posts from this blog

AWS Elasticache Memcached connection

https://docs.aws.amazon.com/AmazonElastiCache/latest/mem-ug/accessing-elasticache.html#access-from-outside-aws http://hourlyapps.blogspot.com/2010/06/examples-of-memcached-commands.html Access memcached https://docs.aws.amazon.com/AmazonElastiCache/latest/mem-ug/GettingStarted.AuthorizeAccess.html Zip include hidden file https://stackoverflow.com/questions/12493206/zip-including-hidden-files phpmemcachedadmin ~ phpMyAdmin or phpPgAdmin ... telnet mycachecluster.eaogs8.0001.usw2.cache.amazonaws.com 11211 stats items stats cachedump 27 100 https://docs.aws.amazon.com/AmazonElastiCache/latest/mem-ug/VPCs.EC.html https://lzone.de/cheat-sheet/memcached VPC ID Security Group ID (sg-...) Cluster: The identifier for the cluster memcached1 Creation Time: The time (UTC) when the cluster was created January 9, 2019 at 11:47:16 AM UTC+7 Configuration Endpoint: The configuration endpoint of the cluster memcached1.ahgofe.cfg.usw1.cache.amazonaws.com:11211 St...

Notes Windows 10 Virtualbox config, PHP Storm Japanese, custom PHP, Apache build, Postgresql

 cmd => Ctrl + Shift + Enter mklink "C:\Users\HauNT\Videos\host3" "C:\Windows\System32\drivers\etc\hosts" https://www.quora.com/How-to-create-a-router-in-php https://serverfault.com/questions/225155/virtualbox-how-to-set-up-networking-so-both-host-and-guest-can-access-internet 1 NAT + 1 host only config https://unix.stackexchange.com/questions/115464/how-to-properly-set-up-2-network-interfaces-in-centos-running-in-virtualbox DEVICE=eth0 TYPE=Ethernet #BOOTPROTO=dhcp BOOTPROTO=none #IPADDR=10.9.11.246 #PREFIX=24 #GATEWAY=10.9.11.1 #IPV4_FAILURE_FATAL=yes #HWADDR=08:00:27:CC:AC:AC ONBOOT=yes NAME="System eth0" [root@localhost www]# cat /etc/sysconfig/network-scripts/ifcfg-eth1 # Advanced Micro Devices, Inc. [AMD] 79c970 [PCnet32 LANCE] DEVICE=eth1 IPADDR=192.168.56.28 <= no eff => auto like DHCP #GATEWAY=192.168.56.1 #BOOTPROTO=dhcp BOOTPROTO=static <= no eff ONBOOT=yes HWADDR=08:00:27:b4:20:10 [root@localhost www]# ...

Rocket.Chat DB schema

_raix_push_notifications avatars.chunks avatars.files instances meteor_accounts_loginServiceConfiguration meteor_oauth_pendingCredentials meteor_oauth_pendingRequestTokens migrations rocketchat__trash rocketchat_cron_history rocketchat_custom_emoji rocketchat_custom_sounds rocketchat_import rocketchat_integration_history rocketchat_integrations rocketchat_livechat_custom_field rocketchat_livechat_department rocketchat_livechat_department_agents rocketchat_livechat_external_message rocketchat_livechat_inquiry rocketchat_livechat_office_hour rocketchat_livechat_page_visited rocketchat_livechat_trigger rocketchat_message rocketchat_oauth_apps rocketchat_oembed_cache rocketchat_permissions rocketchat_raw_imports rocketchat_reports rocketchat_roles rocketchat_room rocketchat_settings rocketchat_smarsh_history rocketchat_statistics rocketchat_subscription rocketchat_uploads system.indexes users usersSessions https://rocket.chat/docs/developer-guides/sc...