рдореИрдВ рдкреЛрд╕реНрдЯрдлрд╝рд┐рдХреНрд╕ рдФрд░ рдбрд╡рдХреЛрдЯ рдХреЗ рд╕рд╛рде рдЕрдкрдиреЗ рдореЗрд▓ рд╕рд░реНрд╡рд░ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░реВрдВрдЧрд╛

рдЫрд╡рд┐

рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЗ рд╣рд┐рд╕реНрд╕реЗ рдХреЗ рд░реВрдк рдореЗрдВ рд╕реНрдерд╛рдкрд┐рдд рд╕рд░реНрд╡рд░ рд╕рд┐рд╕реНрдЯрдо рдХреЛ рдПрдХрдЬреБрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдХрд╛рд░реНрдп рдореЗрд▓ рд╕рд░реНрд╡рд░ рдХреЛ рд░рд┐рд╡рд╛рдЗрдЬ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣реБрдЖред рдирд┐рдпрдорд╛рд╡рд▓реА рдФрд░ рдирд┐рдпрдорд╛рд╡рд▓реА рдХреЗ рд╡рд┐рдЪрд╛рд░рдкреВрд░реНрдг рдЕрдзреНрдпрдпрди рдиреЗ рдПрдХ рдЬрд┐рдЬреНрдЮрд╛рд╕реБ рддрдереНрдп рджрд┐рдЦрд╛рдпрд╛ - рдПрдХ рдореЗрд▓рд░ рдХреЛ рддреИрдирд╛рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣реАрдВ рднреА рдПрдХ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рдЕрднреНрдпрд╛рд╕ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрд╕рдорд╛рди рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рдЧрд╛рдЗрдб рдпрд╛ рд╕рдорд╛рдирддрд╛ рдереАред

рдХрдВрдкрдиреА рдХреЗ рдЖрдВрддрд░рд┐рдХ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдореИрдиреБрдЕрд▓ рдЪрд░рдг-рджрд░-рдЪрд░рдг рд╣реИ, рдФрд░ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕реНрдкрд╖реНрдЯ рдореБрджреНрджреЛрдВ рдХреЛ рд╕рдВрдмреЛрдзрд┐рдд рдХрд░рддрд╛ рд╣реИред рдЧреБрд░реБ рд╕рдордп рдмрд░реНрдмрд╛рдж рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдпрд╣рд╛рдВ рдХреЛрдИ рдкрддрд╛ рдирд╣реАрдВ рд╣реИ - рдореИрдиреБрдЕрд▓ рдПрдХ рд╣реЙрдЬрдкреЙрдЬ рд╣реИ рдФрд░ рдХреЗрд╡рд▓ рдЗрд╕рд▓рд┐рдП рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдореЗрд▓рд░ рдХреЛ рддреИрдирд╛рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд╛рдП рдЧрдП рд╕рднреА рдореИрдиреБрдЕрд▓ рдПрдХ рдЙрд▓реНрд▓реВ рдХреЛ рдХреИрд╕реЗ рдЖрдХрд░реНрд╖рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдП рдХреА рдПрдХ рддрд╕реНрд╡реАрд░ рдЬреИрд╕рд╛ рджрд┐рдЦрддрд╛ рд╣реИред

рдЬреЛ рд▓реЛрдЧ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рд╕рдм рдХреБрдЫ рдЗрдХрдЯреНрдард╛ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рдЙрдирдХреЗ рд▓рд┐рдП iRedMail рдкреИрдХреЗрдЬ рд╢рд╛рдпрдж рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд╡рд┐рдХрд▓реНрдк рд╣реИред рдкреЛрд╕реНрдЯрдлрд┐рдХреНрд╕, рдбрд╡рдХреЛрдЯ, рдЕрдкрд╛рдЪреЗ, MySQL / PostgreSQL, Policyd, Amavis, Fail2ban, Roundcube рдФрд░ рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ Awstats рдХреЗ рдорд╣рд╛рди рдмрд┐рд▓реНрдбред рдпрд╣ рдЖрд╕рд╛рдиреА рд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдпрд╣ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рдПрдХ рд╕реБрдВрджрд░ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рдкреИрдирд▓ (рдирд┐: рд╢реБрд▓реНрдХ) рдФрд░ рдПрдХ рдмрд╣реБрдд рд╣реА рд╕реБрдВрджрд░ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рдкреИрдирд▓ (рднреБрдЧрддрд╛рди рдХрд┐рдпрд╛ рдЧрдпрд╛) рд╣реИ рдЬрд┐рд╕рдХреА рддреБрд▓рдирд╛ рджрдпрдиреАрдп рдкреЛрд╕реНрдЯрдлрд┐рдХреНрд╕ рдПрдбрдо рд╕реЗ рдирд╣реАрдВ рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИред рдореИрдиреБрдЕрд▓ рд╢реНрд░рдо рдХреЗ рдкреНрд░рд╢рдВрд╕рдХ рдкрдврд╝рдирд╛ рдЬрд╛рд░реА рд░рдЦ рд╕рдХрддреЗ рд╣реИрдВред

рдкреБрд░рд╛рдиреЗ рд╕рд░реНрд╡рд░ рдиреЗ рдЧреЗрдВрдЯреВ рдХреЗ рддрд╣рдд рдХрд╛рдо рдХрд┐рдпрд╛ рдФрд░ рдкреЛрд╕реНрдЯрдлрд╝рд┐рдХреНрд╕ + рд╡реАрдбреАрдП рд╕реЗ рдХреВрд░рд┐рдпрд░ рдФрд░ рдПрдХ рдЫреЛрдЯреА рдЧрд╛рдбрд╝реА рдПрд╕рдПрдПрд╕рдПрд▓ рдХреЗ рд╕рд╛рде рдерд░реНрдореЛрдиреНрдпреВрдХреНрд▓рд┐рдпрд░ рдЪрд╛рд░реНрдЬ рдХрд┐рдпрд╛, рдЬрд┐рд╕рдиреЗ рдкрд╣рд▓реЗ рдкреНрд░рдорд╛рдгреАрдХрд░рдг рдХреЗ рджреМрд░рд╛рди рдХреЗрд╡рд▓ mysql рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ред рд░реВрдкрд╛рдВрддрд░рдг рдпреЛрдЬрдирд╛ рдХреЛ рд╣рдорд╛рд░реЗ рдЖрдВрддрд░рд┐рдХ рдорд╛рдирдХ, CentOS рдореЗрдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдирд╛ рдерд╛ред рдПрдордЯреАрдП рдФрд░ рдПрдордбреАрдП рдХреА рднреВрдорд┐рдХрд╛ рдкреЛрд╕реНрдЯрдлрд┐рдХреНрд╕ рдФрд░ рдбреЛрд╡рдХреЛрдЯ рд╕рдВрдпреЛрдЬрди рдХреЛ рд╕реМрдВрдкреА рдЧрдИ рд╣реИ, рдФрд░ рд╕рд╣рд╛рдпрдХ рддреЛрдкрдЦрд╛рдиреЗ рдХреЗ рд░реВрдк рдореЗрдВ: рдЕрдорд╛рд╡рд┐рд╕ + рд╕реНрдкреИрдорд╕реИрд╕рд┐рди + рдХреНрд▓реИрдорд╛рд╡ + рдкреЛрд╕реНрдЯрдЧреНрд░реЗ + рдлреЗрд▓ 2 рдмрд╛рдиред рд╕рдВрджреЗрд╢ рдлрд╝рд╛рдЗрд▓реЛрдВ рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ, рдФрд░ рдЦрд╛рддреЗ рдФрд░ рдбреЛрдореЗрди MySQL рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред рдХрдИ рдореЗрд▓ рдбреЛрдореЗрди рд╕рд░реНрд╡рд░ рдкрд░ рд╕реНрдкрд┐рди рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рд╡рд░реНрдЪреБрдЕрд▓ рдХреЛрдЯрд╛ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рд╣реИред




рдЫрд╡рд┐

[*] рд╣рдо рдЕрддрд┐рд░рд┐рдХреНрдд рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреЛ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВред рдореЗрд░реЗ рдкрд╛рд╕ epel, rpmforge, centalt рдФрд░ remi рдерд╛ ред рдЙрди рд╕рднреА рдХреЛ рд╣рдореЗрд╢рд╛ рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛрддреА рд╣реИ, рдФрд░ рдЖрдк yum-рдкреНрд░рд╛рдердорд┐рдХрддрд╛рдПрдВ рдкреНрд▓рдЧрдЗрди рд╕реНрдерд╛рдкрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ; рдареАрдХ рд╣реИ, рдпрд╛ рдпрджрд┐ рдЖрдк рд╕рдордЭрдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдЖрд▓рд╕реА рд╣реИрдВ, рддреЛ рдЙрдиреНрд╣реЗрдВ рдЕрдкрдиреЗ рд╣рд╛рдереЛрдВ рд╕реЗ рдЪрд╛рд▓реВ рдФрд░ рдмрдВрдж рдХрд░реЗрдВред рдЖрдЧреЗ рдореИрдВ рдХрд╣реВрдВрдЧрд╛ рдХрд┐ рдХрд┐рд╕ рднрдВрдбрд╛рд░ рд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред

[*] SELinux рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛ рдПрдХ рдЕрд▓рдЧ рд╕рд╛рдордЧреНрд░реА рдХреЗ рдпреЛрдЧреНрдп рд╣реИ, рдЗрд╕рд▓рд┐рдП, рдЗрд╕ рд▓реЗрдЦ рдХреЗ рдврд╛рдВрдЪреЗ рдХреЗ рднреАрддрд░, рд╣рдо рдорд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рд╕реЗрд▓рд┐рдирдХреНрд╕ рдХреЛ рдПрдХ рд▓рд╛рдорд░ рддрд░реАрдХреЗ рд╕реЗ рдЕрдиреБрдордд рдпрд╛ рдЕрдХреНрд╖рдо рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред

[*] Ntp рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдордд рднреВрд▓рдирд╛:
yum install ntp ntpdate < ntp > chkconfig ntpd on && /etc/init.d/ntpd start 

рдЗрд╕рд╕реЗ рдбрд╡рдХреЛрдЯ рдХреА рд╕рдВрднрд╛рд╡рд┐рдд "рд╕рдордп рдЖрдЧреЗ рдкреАрдЫреЗ рд╣реЛ рдЧрдпрд╛" рд╕рдорд╕реНрдпрд╛ рд╕реЗ рдмрдЪ рдЬрд╛рдПрдЧрд╛ред рдЖрдк рд╕реНрд╡рд┐рдЪ рдХреЛ -L / etc / sysconfig / ntpd рдореЗрдВ рднреА рдмрджрд▓ рд╕рдХрддреЗ рд╣реИрдВ рддрд╛рдХрд┐ ntpd рдиреЗрдЯрд╡рд░реНрдХ рдкрд░ рди рд╕реБрдиреЗрдВред

[*] рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдЪрд░рдг рдХреЗ рдЕрдВрдд рдореЗрдВ, рд╣рдо рдЙрдкрдпреЛрдЧрд┐рддрд╛рдУрдВ рдХреА рд╕реБрд╡рд┐рдзрд╛ рджреЗрддреЗ рд╣реИрдВ рдЬреЛ рд╣рдорд╛рд░реЗ рд▓рд┐рдП рдкрд░реАрдХреНрд╖рдг рдФрд░ рдЖрдЧреЗ рдХреЗ рдХрд╛рдо рдХреЛ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдмрдирд╛рдПрдВрдЧреЗ:
 yum install wget mlocate bind-utils telnet mailx sharutils 




рдЫрд╡рд┐

рд╣рдорд╛рд░реЗ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЗ рд▓рд┐рдП рд╣рдо рд░реЗрдореА рд╕реЗ MySQL 5.5 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред рдЖрдк рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдорд░рд┐рдпрд╛рдбрдм рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЬрдм MySQL рдЕрднреА рднреА рдЬреАрд╡рд┐рдд рд╣реИ, рддреЛ рдЙрдкрд░реЛрдХреНрдд рдЕрд╕реЗрдВрдмрд▓реА рдореБрдЭреЗ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕реВрдЯ рдХрд░рддреА рд╣реИред рд╕рдВрд╕реНрдХрд░рдг рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдкреЛрд╕реНрдЯрдлрд╝рд┐рдХреНрд╕ рдХреЛ 2.10 рдореЗрдВ рдЕрдкрдЧреНрд░реЗрдб рдХрд░рддреЗ рд╕рдордп, рд╡рд╣ рдПрдХ рдирдпрд╛ рд╕рдВрд╕реНрдХрд░рдг рдЪрд╛рд╣рддрд╛ рд╣реИ рдФрд░ рдпрджрд┐ рдЖрдк рдЖрдзрд╛рд░ рд╕реЗ 5.1 рдбрд╛рд▓рддреЗ рд╣реИрдВ, рддреЛ CentALT рд╕реЗ рдкреЛрд╕реНрдЯрдлрд╝рд┐рдХреНрд╕ рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рдирд╛ MariaDB рдХреЛ рдЦреАрдВрдЪ рд▓реЗрдЧрд╛ред PgSQL рдХреЛ рдХреМрди рдЕрдзрд┐рдХ рдкрд╕рдВрдж рдХрд░рддрд╛ рд╣реИ - рдХреГрдкрдпрд╛ рдЗрд╕реЗ рдбрд╛рд▓реЗрдВред рдкрд░рд┐рдирд┐рдпреЛрдЬрди рдХреЛрдИ рднрд┐рдиреНрди рдирд╣реАрдВ рд╣реЛрдЧрд╛, рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдкреЛрд╕реНрдЯрдлрд╝рд┐рдХреНрд╕ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рднреА рдЕрдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдХреЗрд╡рд▓ postgresql рдХрд╛ рд╡рд┐рдиреНрдпрд╛рд╕ рдФрд░ рдбреЗрдЯрд╛рдмреЗрд╕ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдЕрд▓рдЧ рд╣реЛрдЧрд╛ред

рд╡рд┐рдХрд▓реНрдк "рдмреЙрдХреНрд╕ рд╕реЗ рдмрд╛рд╣рд░" рд▓реЙрдиреНрдЪ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреБрдХреНрдд рд╣реИ (рдереЛрдбрд╝рд╛ рд╡рд┐рд╕реНрддрд╛рд░рд┐рдд my.cnf рдиреАрдЪреЗ рднрдВрдбрд╛рд░ рдореЗрдВ рдкреНрд░рд╕реНрддреБрдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ)ред рд╣рдо рдПрдХ рд╣реА рдирд╛рдо рдХреЗ рдбреЗрдЯрд╛рдмреЗрд╕ рдФрд░ рдЙрд╕рдХреЗ рд╕рднреА рдЕрдзрд┐рдХрд╛рд░реЛрдВ рдХреЗ рд╕рд╛рде рдПрдХ рдЙрдкрд╕рд░реНрдЧ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдмрдирд╛рддреЗ рд╣реИрдВред
 CREATE USER postfix@localhost IDENTIFIED BY 'mypassword'; CREATE DATABASE postfix; GRANT ALL PRIVILEGES ON postfix.* TO postfix; 


ClamAV рдореЗрд░реЗ рд▓рд┐рдП рдПрдВрдЯреАрд╡рд╛рдпрд░рд╕ рдХрд╛ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рдпрд╣ рдзреНрдпрд╛рди рджреЗрдиреЗ рдпреЛрдЧреНрдп рд╣реИ рдХрд┐ рдирд╡реАрдирддрдо рд╕рдВрд╕реНрдХрд░рдг CentALT рдкрд░ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ 50 рдореЗрдЧрд╛рдмрд╛рдЗрдЯ рдХреНрд▓реИрдорд╡-рдбреАрдмреА рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдиреЗ рдХреЗ рдкреНрд░рдпрд╛рд╕ рдореЗрдВ рдорд░рддреЗ рд╣реБрдП, рдЗрд╕реЗ рдЦрд╛рд▓реА рдмрд┐рдВрджреБ рдбрд╛рдЙрдирд▓реЛрдб рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП, рд╣рдо рдИрдкреАрдИрдПрд▓ рд╕реЗ рдХрдо рдорд╛рдореВрд▓реА рд╕рдВрд╕реНрдХрд░рдг рдбрд╛рд▓рддреЗ рд╣реИрдВ, рдпрд╣ рдореМрд╕рдо рдирд╣реАрдВ рдХрд░реЗрдЧрд╛ред рдХреНрд▓реИрдо рд╕реЙрдХреЗрдЯ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╣рдорд╛рд░реЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░реЗрдЧрд╛, рдЗрд╕рд▓рд┐рдП /etc/clamd.conf рдореЗрдВ рд╣рдо рд▓рд╛рдЗрдиреЛрдВ рдкрд░ рдЯрд┐рдкреНрдкрдгреА рдХрд░рддреЗ рд╣реИрдВ:
 #TCPSocket 3310 #TCPAddr 127.0.0.1 

рдПрдВрдЯреА-рд╡рд╛рдпрд░рд╕ рдбреЗрдЯрд╛рдмреЗрд╕ рдЕрдкрдбреЗрдЯ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдЬреБрдбрд╝рд╛ рд╣реБрдЖ рд╣реИ, рдЗрд╕рдХреЗ рд▓рд┐рдП рдлреНрд░реЗрд╢рдХреНрд▓реЗрдо рдЙрдкрдпреЛрдЧрд┐рддрд╛ рдЬрд┐рдореНрдореЗрджрд╛рд░ рд╣реИред рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ рдХрд┐ рд╕рдВрдмрдВрдзрд┐рдд рдлрд╝рд╛рдЗрд▓ cron.daily рдореЗрдВ рд╣реИ рдФрд░ рдПрдВрдЯреАрд╡рд╛рдпрд░рд╕ рд╕реЗрд╡рд╛ рдЪрд▓рд╛рдПрдБ
 freshclam chkconfig clamd on && /etc/init.d/clamd start 




рдЫрд╡рд┐

рд╡реЗрдм рдЗрдВрдЯрд░рдлреЗрд╕ рдХреЛ рддреИрдирд╛рдд рдХрд░рдиреЗ рдпрд╛ рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рднреА рдХреЗ рд▓рд┐рдП рдПрдХ рд╡реНрдпрдХреНрддрд┐рдЧрдд рдорд╛рдорд▓рд╛ рд╣реИред рдкреНрд░рд╡рд╛рд╕рди рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдореБрдЭреЗ рдЗрд╕рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдереАред рдбреЗрдЯрд╛рдмреЗрд╕ рд╕рдВрд░рдЪрдирд╛ рдФрд░ рдбреЛрдореЗрди, рдореЗрд▓рдмреЙрдХреНрд╕, рдЙрдкрдирд╛рдо рдЖрджрд┐ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ рдЗрд╕рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИред рдирд╡реАрдирддрдо рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП, рдЕрдзрд┐рдХрд╛рдВрд╢ рдореИрдиреБрдЕрд▓ рд╕рдХреНрд░рд┐рдп рд░реВрдк рд╕реЗ PostfixAdmin рдХрд╛ рдкреНрд░рд╕реНрддрд╛рд╡ рдХрд░рддреЗ рд╣реИрдВ , рд▓реЗрдХрд┐рди рдореИрдВ рдЗрд╕реЗ рджреГрдврд╝рддрд╛ рд╕реЗ рдирд╛рдкрд╕рдВрдж рдХрд░рддрд╛ рд╣реВрдВред рд╕рд╛рде рд╣реА рдореИрдВ рдкреГрдердХреНрдХрд░рдг рдХреЗ рд╕рд┐рджреНрдзрд╛рдВрдд рдХрд╛ рдкрд╛рд▓рди рдХрд░рдиреЗ рдХреА рд╕рд▓рд╛рд╣ рджреВрдВрдЧрд╛, рдЬрд┐рд╕рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдореЗрд▓ рд╕рд░реНрд╡рд░ рдХреЛ рдореЗрд▓ рдкреНрд░реЛрд╕реЗрд╕рд┐рдВрдЧ рд╕реЗ рдирд┐рдкрдЯрдирд╛ рдЪрд╛рд╣рд┐рдП, рд╡реЗрдм рд╕рд░реНрд╡рд░ рдХреЛ рд╡реЗрдм рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд░рдЦрдиреЗ рдЪрд╛рд╣рд┐рдП, рдФрд░ рдбреАрдмреА рд╕рд░реНрд╡рд░ рдХреЛ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдЬреЛ рд▓реЛрдЧ рд╡реЗрдм рд╕рдмрд╕рд┐рд╕реНрдЯрдо рдХреЛ рддреИрдирд╛рдд рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рдЙрдирдХреЗ рд▓рд┐рдП рдореИрдВ рд╕рднреА рдЕрд╡рд╕рд░реЛрдВ рдХреЗ рд▓рд┐рдП рдореЗрд▓ рд╕рд░реНрд╡рд░ рдХреЗ рд▓рд┐рдП рдПрдХ SQL рдбреЗрдЯрд╛рдмреЗрд╕ рдбрдВрдк рд╕рдВрд▓рдЧреНрди рдХрд░ рд░рд╣рд╛ рд╣реВрдВред рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдХреБрдЫ рдЕрдкреНрд░рдпреБрдХреНрдд рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХреЗ рд╕рд╛рде: mysql_dump.sql рдЬреАрдердм рдкрд░ ред

рдпрджрд┐ рдЖрдкрдХреЛ PostfixAdmin рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ - nginx / apache + php рдФрд░ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ PostfixAdmin рдбрд╛рд▓ рджреЗрдВ ред рдФрд░ рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдЖрдк рдЗрд╕реЗ рдЙрдкрд░реЛрдХреНрдд рдбрдВрдк рдкрд░ рддреИрдирд╛рдд рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдирд╣реАрдВ рд╣реЛрдВрдЧреЗ - рд╕рдВрд░рдЪрдирд╛ рд╕реЗ рдХреБрдЫ "рдЕрддрд┐рд░рд┐рдХреНрдд" рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХреЛ рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред PostfixAdmin рдереЛрдбрд╝рд╛ рдмрд╛рд░реАрдХрд┐рдпреЛрдВ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ред рд╣рдо config.inc.php рдХреЛ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░рддреЗ рд╣реИрдВ, рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдорд╛рдкрджрдВрдбреЛрдВ рдкрд░ рдзреНрдпрд╛рди рджреЗрддреЗ рд╣реИрдВ:
 ##       ,   dovecot $CONF['encrypt'] = 'md5crypt'; $CONF['transport_default'] = 'virtual'; $CONF['emailcheck_resolve_domain']='NO'; ##    dovecot,   $CONF['create_mailbox_subdirs_prefix']=''; ##  ,        maildir,      dict $CONF['new_quota_table'] = 'yes'; 

рдЙрд╕рдХреЗ рдмрд╛рдж, рдЖрдк domain.tld / postfixadmin / setup.php рдкрд░ рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВ, рдПрдХ рдкрд╛рд╕рд╡рд░реНрдб рдЙрддреНрдкрдиреНрди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдПрдХ рд╕реБрдкрд░-рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рдЦрд╛рддрд╛ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВред рдЕрдм рдЙрддреНрдкрдиреНрди рд╣реИрд╢ рдХреЛ config.inc.php рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдЬреЛрдбрд╝рд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдФрд░ рдЗрд╕рдХреА рд╕реНрдерд┐рддрд┐ рдмрджрд▓ рдЧрдИ:
 $CONF['configured'] = true; $CONF['setup_password'] = 't8h9i9s2i7s7m2y4l9o8g9i4n:a0n9d5p2a5s2s9w5o4r7d'; 

[!] рдкреЛрд╕реНрдЯрдлрд┐рдХреНрд╕реИрдбрдорд┐рди рд╕реНрд╡рдпрдВ рд╣реА mysql рдФрд░ postgresql рджреЛрдиреЛрдВ рдореЗрдВ рдЖрдзрд╛рд░ рд╕рдВрд░рдЪрдирд╛ рдмрдирд╛рддрд╛ рд╣реИ рдЬрдм setup.php рдЪрд▓ рд░рд╣рд╛ рд╣реИред рдпрджрд┐ рдЖрдк рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдЗрд░рд╛рджрд╛ рд░рдЦрддреЗ рд╣реИрдВ, рддреЛ рд╕реНрдерд╛рдкрдирд╛ рдХреЛ рдЦрд╛рд▓реА рдЖрдзрд╛рд░ рдкрд░ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред




рдЫрд╡рд┐

рд╣рдо рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░реЗрдВрдЧреЗ рдХрд┐ рд╕рдВрдкреВрд░реНрдг рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╕рдВрд░рдЪрдирд╛ рдкреЛрд╕реНрдЯрдлрд╝рд┐рдХреНрд╕ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рдмрдирд╛рдИ рдЧрдИ рд╣реИ рдФрд░ рдПрдордЯреАрдП рдФрд░ рдПрдордбреАрдП рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдЧреЗ рдмрдврд╝рддреА рд╣реИред рдкреЛрд╕реНрдЯрдлрд╝рд┐рдХреНрд╕ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА CentOS рдХреЗ рд╕рд╛рде рдмрдВрдбрд▓ рд╣реИ, рд▓реЗрдХрд┐рди рдирд╡реАрдирддрдо рдирд╣реАрдВред рд╣рдо рдЗрд╕реЗ CentALT рд╕реЗ рдЕрдкрдбреЗрдЯ рдХрд░реЗрдВрдЧреЗ рдФрд░ рд╡рд╣рд╛рдВ рд╕реЗ рд╣рдо Dovecot рдбрд╛рд▓реЗрдВрдЧреЗ ред
 yum update postfix yum install dovecot dovecot-mysql 


рд╕рднреА рдкреНрд░рдореБрдЦ рд╢рд┐рдк рд╕рд┐рд╕реНрдЯрдо рдПрдХ рдЕрд▓рдЧ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рддрд╣рдд / var / vmail рдореЗрдВ рдлрд╛рдЗрд▓реЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░реЗрдВрдЧреЗ:
 groupadd -g 1000 vmail useradd -d /var/vmail/ -g 1000 -u 1000 vmail chown vmail:vmail /var/vmail 


рдЖрдЗрдП рд╕реНрд╡-рд╣рд╕реНрддрд╛рдХреНрд╖рд░рд┐рдд рдПрд╕рдПрд╕рдПрд▓ рдмрдирд╛рддреЗ рд╣реИрдВ
 mkdir /etc/postfix/certs openssl req -new -x509 -days 3650 -nodes -out /etc/postfix/certs/cert.pem -keyout /etc/postfix/certs/key.pem 


рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреЛрд╕реНрдЯрдлрд┐рдХреНрд╕ рдХреЛ рдордирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рдкреБрд░рд╛рдирд╛ рдирд┐рд░реНрдорд╛рдг рдХрджрдо рд╣реИ:
 mkdir /etc/postfix/mysql 

рдЗрд╕ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рд╣рдо рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕рд╛рдордЧреНрд░реА рдХреЗ рд╕рд╛рде рдлрд╛рдЗрд▓ рдмрдирд╛рддреЗ рд╣реИрдВ:
рдорд╛рдпрд┐рдХрд▓ рдкреЛрд╕реНрдЯрдлрд┐рдХреНрд╕ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди
relay_domains.cf
 hosts = localhost user = postfix password = mypassword dbname = postfix query = SELECT domain FROM domain WHERE domain='%s' and backupmx = '1' 


virtual_alias_domain_maps.cf
 hosts = localhost user = postfix password = mypassword dbname = postfix query = SELECT goto FROM alias,alias_domain WHERE alias_domain.alias_domain = '%d' and alias.address = CONCAT('%u', '@', alias_domain.target_domain) AND alias.active = 1 


virtual_alias_maps.cf
 hosts = localhost user = postfix password = mypassword dbname = postfix query = SELECT goto FROM alias WHERE address='%s' AND active = '1' 


virtual_mailbox_domains.cf
 hosts = localhost user = postfix password = mypassword dbname = postfix query = SELECT domain FROM domain WHERE domain='%s' AND backupmx = '0' AND active = '1' 


virtual_mailbox_maps.cf
 hosts = localhost user = postfix password = mypassword dbname = postfix query = SELECT maildir FROM mailbox WHERE username='%s' AND active = '1' 



рд╣рдо рдлрд╝рд╛рдЗрд▓ /etc/postfix/main.cf рдХреЛ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░рддреЗ рд╣реИрдВ, рдкреЛрд╕реНрдЯрдлрд╝рд┐рдХреНрд╕ рдХреЛ рдирдП рд╕рд┐рд░реЗ рд╕реЗ рдмрдирд╛рдИ рдЧрдИ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд┐рдЦрд╛рддреЗ рд╣реИрдВ:
 # ============================================================ # MySQL mappings # ============================================================ relay_domains = mysql:/etc/postfix/mysql/relay_domains.cf virtual_alias_maps = mysql:/etc/postfix/mysql/virtual_alias_maps.cf, mysql:/etc/postfix/mysql/virtual_alias_domain_maps.cf virtual_mailbox_domains = mysql:/etc/postfix/mysql/virtual_mailbox_domains.cf virtual_mailbox_maps = mysql:/etc/postfix/mysql/virtual_mailbox_maps.cf 


рдПрдХ рдЕрдЪреНрдЫрд╛ рдореЗрд▓ рд╕рд░реНрд╡рд░ рдЕрдкрдиреЗ рдЖрдк рдХреЛ рдЫреЛрдбрд╝ рджреЗрддрд╛ рд╣реИ рдФрд░ рдЕрдЬрдирдмрд┐рдпреЛрдВ рдХреЛ рдЕрдзрд┐рдХреГрдд рдХрд░рддрд╛ рд╣реИред рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░рдорд╛рдгреАрдХрд░рдг рдХреЗ рд▓рд┐рдП, рдкреЛрд░реНрдЯ 587 рдкрд░ SMTP рд╕реЗрд╡рд╛ рдХреЛ рдЕрддрд┐рд░рд┐рдХреНрдд рд░реВрдк рд╕реЗ рдмрдврд╝рд╛рдХрд░ рд╕рдмрдорд┐рд╢рди рдЪрд▓рд╛рдПрдВред рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдкреНрд░рд╕реНрддрд╛рд╡ 587 рдкреЛрд░реНрдЯ рджреНрд╡рд╛рд░рд╛ рдкреНрд░рдорд╛рдгреАрдХрд░рдг рдХреЗ рд╕рд╛рде smtp рд╕рд░реНрд╡рд░ рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рдХрд░рддреЗ рд╕рдордп рдирдП рдЦрд╛рддреЗ рдмрдирд╛рддреЗ рд╕рдордп рд╕реНрдорд╛рд░реНрдЯрдлреЛрди; рдЖрдк рдЧреНрд░рд╛рд╣рдХреЛрдВ рдХреЛ рдпрд╣ рд╕рдордЭрд╛рдирд╛ рдирд╣реАрдВ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдХрд┐ рдпрд╣ mail.domain.tld рджрд░реНрдЬ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рдирд╣реАрдВ рд╣реИ, рдФрд░ рдЖрдкрдХреЛ рдХреБрдЫ рдмрдВрджрд░рдЧрд╛рд╣реЛрдВ рдХреЛ рдкрдВрдЬреАрдХреГрдд рдХрд░рдиреЗ рдХреА рднреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, /etc/postfix/master.cf рдореЗрдВ рд╣рдо рд╕рдмрдорд┐рдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЬрд┐рдореНрдореЗрджрд╛рд░ рдЕрдиреБрднрд╛рдЧ рдХреЛ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░рддреЗ рд╣реИрдВ:
 submission inet n - n - - smtpd -o syslog_name=postfix/submission -o smtpd_tls_wrappermode=no -o smtpd_tls_security_level=encrypt -o smtpd_sasl_auth_enable=yes -o smtpd_recipient_restrictions=permit_mynetworks,permit_sasl_authenticated,reject -o smtpd_relay_restrictions=permit_mynetworks,permit_sasl_authenticated,defer_unauth_destination -o milter_macro_daemon_name=ORIGINATING 

[!] -рдУ рдХреБрдВрдЬрд┐рдпреЛрдВ рдХреЗ рд╕рд╛рдордиреЗ рд░рд┐рдХреНрдд рд╕реНрдерд╛рди рдкрд░ рдзреНрдпрд╛рди рджреЗрдирд╛ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ - рдЙрдирдХреЗ рдмрд┐рдирд╛ рд╡рд┐рдиреНрдпрд╛рд╕ рдорд╛рдиреНрдп рдирд╣реАрдВ рд╣реЛрдЧрд╛ред

рдЕрднреА рдХреЗ рд▓рд┐рдП, Master.cf рдХреЛ рдПрдХ рддрд░рдл рд░рдЦ рджреЗрдВ, рд╣рдо рдмрд╛рдж рдореЗрдВ рдЗрд╕реЗ рд╡рд╛рдкрд╕ рдХрд░ рджреЗрдВрдЧреЗ, рдФрд░ /etc/postfix/main.cf рдХреЗ рд╕рд╛рде рдЬрд╛рд░реА рд░рдЦреЗрдВрдЧреЗ
 soft_bounce = no myhostname = mail.domain.tld mydomain = domain.tld myorigin = $myhostname #  $myhostname  $mydomain    #    do not list domain in BOTH mydestination and virtual_mailbox_domains mydestination = localhost.$mydomain, localhost ##    ##         ##            mynetworks = 192.168.0.0/16, 127.0.0.0/8 ##  nis:/      ## dict_nis_init: NIS domain name not set - NIS lookups disabled alias_maps = hash:/etc/aliases smtpd_banner = $myhostname ESMTP $mail_name debug_peer_level = 2 debug_peer_list = 127.0.0.1 


рдпреЗ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдкрдВрдХреНрддрд┐ рдкрд░рд┐рд╡рд░реНрддрди рдереЗред рдЕрдм рд╣рдорд╛рд░реА рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЗ рдХреБрдЫ рд╕реЗрдХреНрд╢рди рдЬреЛрдбрд╝реЗрдВред рдбреБрдкреНрд▓рд┐рдХреЗрдЯ рдХреЗ рд▓рд┐рдП рдЬрд╛рдВрдЪреЗрдВ, рдЙрдиреНрд╣реЗрдВ рдореВрд▓ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рд╕реЗ рд╣рдЯрд╛ рджреЗрдВ, рдЕрдЧрд░ рд╡реЗ рд╡рд╣рд╛рдВ рдкрд╛рдП рдЬрд╛рддреЗ рд╣реИрдВред рдореИрдВ /etc/postfix/main.cf рдлрд╝рд╛рдЗрд▓ рдХреЗ рдиреАрдЪреЗ рд╕рдВрд░рдЪрд┐рдд рдмреНрд▓реЙрдХреЛрдВ рдореЗрдВ рдЕрдкрдиреА рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рджрд░реНрдЬ рдХрд░рдиреЗ рдХрд╛ рд╕реБрдЭрд╛рд╡ рджреЗрддрд╛ рд╣реВрдВ:
рдПрдХ рдФрд░ рд╡рд┐рдиреНрдпрд╛рд╕ рдкрддреНрд░
 # ============================================================ # RESTRICTIONS # # Uncomment reject_rbl_client if necessary # More information at: http://help.ubuntu.ru/wiki/____smtp_ # ============================================================ smtpd_discard_ehlo_keywords = etrn, silent-discard smtpd_forbidden_commands = CONNECT GET POST broken_sasl_auth_clients = yes smtpd_delay_reject = yes smtpd_helo_required = yes disable_vrfy_command = yes smtpd_helo_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_non_fqdn_helo_hostname, reject_invalid_helo_hostname smtpd_data_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_pipelining, reject_multi_recipient_bounce, smtpd_sender_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_non_fqdn_sender, reject_unknown_sender_domain smtpd_recipient_restrictions = reject_non_fqdn_recipient, reject_unknown_recipient_domain, reject_multi_recipient_bounce, permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination, check_policy_service unix:/var/spool/postfix/postgrey/socket, #reject_rbl_client zen.spamhaus.org, #reject_rbl_client bl.spamcop.net, #reject_rbl_client dnsbl.sorbs.net, reject_invalid_hostname # ============================================================ # TLS # ============================================================ smtp_tls_security_level = may smtpd_tls_security_level = may smtpd_tls_loglevel = 1 smtpd_tls_received_header = yes smtpd_tls_session_cache_timeout = 3600s smtp_tls_session_cache_database = btree:$data_directory/smtp_tls_session_cache smtpd_tls_key_file = /etc/postfix/certs/key.pem smtpd_tls_cert_file = /etc/postfix/certs/cert.pem tls_random_source = dev:/dev/urandom # ============================================================ # LIMITS # ============================================================ message_size_limit = 51200000 smtpd_soft_error_limit = 10 smtpd_hard_error_limit = 15 smtpd_error_sleep_time = 20 anvil_rate_time_unit = 60s smtpd_client_connection_count_limit = 20 smtpd_client_connection_rate_limit = 30 smtpd_client_message_rate_limit = 30 smtpd_client_event_limit_exceptions = 127.0.0.1/8 smtpd_client_connection_limit_exceptions = 127.0.0.1/8 # ============================================================ # QUEUE # ============================================================ maximal_queue_lifetime = 1d bounce_queue_lifetime = 1d 


[!] рдмреНрд▓реИрдХ рд▓рд┐рд╕реНрдЯ - рдЕрдкрдиреА рдкрд╕рдВрдж рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ рдпрд╛ рди рдХрд░реЗрдВред рдореИрдВрдиреЗ рд╕рдВрдмрдВрдзрд┐рдд рдЕрд╕реНрд╡реАрдХреГрддрд┐_rbl_client рдирд┐рд░реНрджреЗрд╢ рдЯрд┐рдкреНрдкрдгреА рдХреА рддрд╛рдХрд┐ рд╣реЛрд▓рд┐рд╡рд░реНрд╕ рдХрд╛ рдЙрддреНрдкрд╛рджрди рди рд╣реЛред Greylisting рдЕрдХреНрд╕рд░ рдкрд░реНрдпрд╛рдкреНрдд рд╣реЛрддреА рд╣реИ, рдФрд░ Spamhaus рдФрд░ рдЕрдиреНрдп рдПрдХ рдорд┐рд╢реНрд░рд┐рдд рдиреАрддрд┐ рдХрд╛ рдкрд╛рд▓рди рдХрд░рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рд╡реНрдпрд╡рд╣рд╛рд░ рдореЗрдВ рдпрд╣ рдкрддрд╛ рдЪрд▓рд╛ рд╣реИ рдХрд┐ "рдИрдорд╛рдирджрд╛рд░ рд▓реЛрдЧреЛрдВ" рдХреЛ рдмреНрд▓реИрдХрд▓рд┐рд╕реНрдЯ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдФрд░ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдЭреВрдареА рд╕рдХрд╛рд░рд╛рддреНрдордХрддрд╛ рдирд╣реАрдВ рд╣реИред рднрд╛рдЧреНрдпрд╢рд╛рд▓реА, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП, рдЖрд░рдмреАрдПрд▓ рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░рдирд╛ рдпрд╛ рдирд╣реАрдВ рдХрд░рдирд╛ рд╕реНрд╡рд╛рдж рдХреА рдмрд╛рдд рд╣реИред рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ рдХрд┐ рдореИрдВрдиреЗ рдЙрдиреНрд╣реЗрдВ рд╕реВрдЪрдирд╛ рдХреЗ рдЙрджреНрджреЗрд╢реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдВрдХреЗрдд рджрд┐рдпрд╛ рдерд╛ред
[!] рдорд╛рдкрджрдВрдбреЛрдВ рдХреЛ рд╕рдореВрд╣реЛрдВ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ - рдзреНрдпрд╛рди рд╕реЗ рдЙрдирдХреА рд╕рдореАрдХреНрд╖рд╛ рдХрд░реЗрдВ рдФрд░ рдЕрдкрдиреА рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рд╕рдорд╛рдпреЛрдЬрд┐рдд рдХрд░реЗрдВред рдмрд┐рдирд╛ рдПрдбрд┐рдЯ рдХреЗ рдХрд┐рд╕реА рджреВрд╕рд░реЗ рдХреЗ рдХреЙрдиреНрдлрд┐рдбреЗрдВрд╕ рдХреЛ рдЖрдВрдЦ рдмрдВрдж рдХрд░рдХреЗ рджреЗрдЦрдиреЗ рд╕реЗ рдмреБрд░рд╛ рдХреЛрдИ рд╡рд┐рдХрд▓реНрдк рдирд╣реАрдВ рд╣реИред
[!] рдорд╛рд▓рдореБрдЯ рдиреЗ рд╕рд╣реА рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдХрд┐ perm_mynetworks рд╡рд┐рдХрд▓реНрдк рдмреЗрд╣рдж рд╕рдВрджрд┐рдЧреНрдз рдФрд░ рдЦрддрд░рдирд╛рдХ рд╣реИред рдЗрд╕реЗ рд╣рдЯрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдмреЗрд╣рддрд░ рд╣реЛрдЧрд╛ рдХрд┐ рдХреЗрд╡рд▓ рдкреНрд░рдорд╛рдгрд┐рдд рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдкрддреНрд░рд╛рдЪрд╛рд░ рднреЗрдЬрд╛ рдЬрд╛рдПред
[!] рд╣рдо main.cf рдлрд╝рд╛рдЗрд▓ рдкрд░ рд▓реМрдЯреЗрдВрдЧреЗ, рдЗрд╕рдореЗрдВ рдкреЛрд╕реНрдЯрдЧреНрд░реЗ , рдЕрдорд╛рд╡рд┐рд╕ рдФрд░ рдбреЛрд╡реЙрдЯреЙрдЯ рдЬреЛрдбрд╝ рджреЗрдВрдЧреЗ , рд▓реЗрдХрд┐рди рдЕрдм рдПрдордбреАрдП рдкрд░ рдЪрд▓рддреЗ рд╣реИрдВ




рдЫрд╡рд┐

рдпрд╣ рдХреНрдпрд╛ рд╣реИ:


/Etc/dovecot/dovecot.conf рдореЗрдВ рдХреБрдЫ рдкрд░рд┐рд╡рд░реНрддрди:
 protocols = imap pop3 login_greeting = Hello there. 

рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓ рдХреЗ рдмрд╛рдХреА рд╣рд┐рд╕реНрд╕реЛрдВ рдХреЛ рдЖрд╕рд╛рдиреА рд╕реЗ рдШрдЯрдХреЛрдВ рдореЗрдВ рддреЛрдбрд╝ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдкреНрд░рд▓реЗрдЦрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ:
10-auth.conf
 disable_plaintext_auth = no auth_realms = domain.tld domain2.tld auth_default_realm = domain.tld auth_mechanisms = plain login ## [!]  auth-system.conf.ext,   ##  dovecot    pam #!include auth-system.conf.ext 


10-logging.conf
рдХреЛрдИ рдЕрд▓рдЧ рд▓рд┐рд╕реНрдЯрд┐рдВрдЧ рдирд╣реАрдВ рд╣реЛрдЧреА - рд╣рдо рдЖрд╡рд╢реНрдпрдХ рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреЛ рд╡рд╕реАрдпрдд рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

10-mail.conf
mail_location = maildir: / var / vmail /% d /% n
mail_uid = 1000
mail_gid = 1000
mail_plugins = рдХреЛрдЯрд╛

10-master.conf
 #  imap  imaps service imap-login { inet_listener imap { port = 143 } inet_listener imaps { port = 993 ssl = yes } } #  pop3  pop3s service pop3-login { inet_listener pop3 { port = 110 } inet_listener pop3s { port = 995 ssl = yes } } #  SASL,    postfix service auth { unix_listener auth-userdb { mode = 0600 user = vmail group = vmail } unix_listener /var/spool/postfix/private/auth { mode = 0666 user=postfix group=postfix } } 


10-ssl.conf
ssl = рд╣рд╛рдБ
ssl_cert = </etc/postfix/certs/cert.pem
ssl_key = </etc/postfix/certs/key.pem

15-lda.conf
quota_full_tempfail = рдирд╣реАрдВ
lda_mailbox_autocreate = рд╣рд╛рдБ
lda_mailbox_autosubscribe = рд╣рд╛рдБ
рдкреНрд░реЛрдЯреЛрдХреЙрд▓ lda {
mail_plugins = $ mail_plugins autocreate
}

20-imap.conf
рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдЗрдорд╛рдк {
mail_plugins = $ mail_plugins autocreate рдХреЛрдЯрд╛ imap_quota
}

90-plugin.conf
 #     . #          plugin { autocreate = Trash autocreate2 = sent-mail autocreate3 = drafts autosubscribe = Trash autosubscribe2 = sent-mail autosubscribe3 = drafts } 


90-quota.conf
 #       . plugin { quota_rule = *:storage=200M quota_rule2 = Trash:storage=+10M } plugin { quota_warning = storage=90%% quota-warning 90 %u } # ,      chmod #    quota-warning.sh      dovecot-lda service quota-warning { executable = script /usr/local/bin/quota-warning.sh user = vmail unix_listener quota-warning { user = vmail } } #    - maildir #      dict, fs  dirsize #    http://wiki2.dovecot.org/Quota plugin { quota = maildir:User quota } 


Auth-sql.conf.ext
Passdb {
рдбреНрд░рд╛рдЗрд╡рд░ = sql
args = /etc/dovecot/dovecot-sql.conf.ext
}
userdb {
рдбреНрд░рд╛рдЗрд╡рд░ = sql
args = /etc/dovecot/dovecot-sql.conf.ext
}


/Etc/dovecot/dovecot-sql.conf.ext рдмрдирд╛рдПрдВ:
Dovecot-sql.conf.ext
рдбреНрд░рд╛рдЗрд╡рд░ = mysql
рдХрдиреЗрдХреНрдЯ = рд╣реЛрд╕реНрдЯ = рд▓реЛрдХрд▓рд╣реЛрд╕реНрдЯ dbname = рдкреЛрд╕реНрдЯрдлрд┐рдХреНрд╕ рдпреВрдЬрд░ = рдкреЛрд╕реНрдЯрдлрд┐рдХреНрд╕ рдкрд╛рд╕рд╡рд░реНрдб = рдорд╛рдпрдкрд╛рд╕рд╡рд░реНрдб
default_pass_scheme = MD5-CRYPT
user_query = рдШрд░ рдХреЗ рд░реВрдк рдореЗрдВ 'рдХрд╛ рдЪрдпрди рдХрд░реЗрдВ' ', рдХреЛрдЯрд╛) рдореЗрд▓рдмреЙрдХреНрд╕ рд╕реЗ AS__LELE рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд╛рдо ='% u 'рдФрд░ рд╕рдХреНрд░рд┐рдп =' 1 '
password_query = рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд╛рдо рдХрд╛ рдЪрдпрди рдХрд░реЗрдВ, рдкрд╛рд╕рд╡рд░реНрдб, '/ var / vmail /% d /% n' рдХреЗ рд░реВрдк рдореЗрдВ userdb_home, 'maildir: / var / vmail /% d /% n' рдХреЗ рд░реВрдк рдореЗрдВ userdb_mail, 1000 рдХреЗ рд░реВрдк рдореЗрдВ userdb_uid, 1000 рдХреЗ рд░реВрдк рдореЗрдВ userdb_gid, concat ('*: рдмрд╛рдЗрдЯреНрд╕ =', рдХреЛрдЯрд╛) рдореЗрд▓рдмреЙрдХреНрд╕ WHER рд╕реЗ userdb_quota_rule рдХреЗ рд░реВрдк рдореЗрдВ
E рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд╛рдо = '% u' рдФрд░ рд╕рдХреНрд░рд┐рдп = '1'


рдЕрдм Dovecot рдХреЗ рд╕рд╛рде Postfix рджреЛрд╕реНрдд рдмрдирд╛рдПрдВред /Etc/postfix/main.cf рдореЗрдВ рджреЛ рдЦрдВрдб рдЬреЛрдбрд╝реЗрдВ:
 # ============================================================ # SASL # ============================================================ smtpd_sasl_auth_enable = yes smtpd_sasl_security_options = noanonymous smtpd_sasl_type = dovecot smtpd_sasl_path = private/auth # ============================================================ # VIRTUAL # ============================================================ virtual_mailbox_base = /var/vmail virtual_minimum_uid = 1000 virtual_uid_maps = static:1000 virtual_gid_maps = static:1000 virtual_transport = dovecot dovecot_destination_recipient_limit = 1 


рдФрд░ рдкреЛрд╕реНрдЯрдлрд┐рдХреНрд╕ рдХреЛ рдЗрд╕ рддрдереНрдп рдХреЗ рд╕рд╛рдордиреЗ рд░рдЦреЗрдВ рдХрд┐ рдХрдмреВрддрд░ рдбрд╛рдХ рдкрд╣реБрдВрдЪрд╛рдиреЗ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реИред Inetc / postfix / master.cf рдореЗрдВ :
 # ==================================================================== # DOVECOT # ==================================================================== dovecot unix - nn - - pipe flags=DRhu user=vmail:vmail argv=/usr/libexec/dovecot/deliver -f ${sender} -d ${recipient} 


рдЗрд╕рдХреЗ рдмрд╛рдж, рдЖрдкрдХреЛ рдпрд╣ рдЬрд╛рдВрдЪрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдХрд┐ рдХреЛрдЯрд╛ /usr/local/bin/quota-warning.sh рд╕реЗ рдЕрдзрд┐рдХ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЪреЗрддрд╛рд╡рдиреА рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдЪрд▓рддреА рд╣реИред рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, CentOS рдореЗрдВ, рдЗрд╕рдореЗрдВ рдкрде рдЧрд▓рдд рддрд░реАрдХреЗ рд╕реЗ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ рдФрд░ рдЗрд╕реЗ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рд╕рдВрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдерд╛ред рдХрд┐рд╕реА рднреА рд╕реНрдерд┐рддрд┐ рдореЗрдВ, рдЗрд╕реЗ рдкреНрд░реЗрд╖рдХ рдкрддреЗ рдХреЛ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░рдХреЗ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рд╕рд╣реА рдХрд░реЗрдВ, рдЬреЛ рдХрд┐ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдкреЛрд╕реНрдЯрдорд╛рд╕реНрдЯрд░ @domain.tld рдХреЗ рд░реВрдк рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╣реИред рд╡рд╛рдВрдЫрд┐рдд рдмрд╛рдЗрдирд░реА рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдПрдВ
 updatedb locate dovecot-lda chmod 755 /usr/local/bin/quota-warning.sh 

рдФрд░ /usr/local/bin/quota-warning.sh рдореЗрдВ рдкрде рдХреЛ рдареАрдХ рдХрд░реЗрдВ, рдпрджрд┐ рд╡рд╛рдВрдЫрд┐рдд рд╣реЛ рддреЛ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдЕрдзрд┐рдХ рд╕рд╛рд░реНрдердХ рд╣реЗрдбрд░ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВред




рдЫрд╡рд┐

рдЪреВрдВрдХрд┐ рдЕрдорд╛рд╡рд┐ рд╣рдорд╛рд░реЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░реЗрдЧрд╛, рдЬреЛ рдореЗрд▓ рдПрдЬреЗрдВрдЯреЛрдВ рдФрд░ рдПрдВрдЯреА-рд╡рд╛рдпрд░рд╕ рдФрд░ рдПрдВрдЯреА-рд╕реНрдкреИрдо рд╕рд┐рд╕реНрдЯрдо рдХреЗ рдмреАрдЪ рдХреА рдПрдХ рдкрд░рдд рд╣реИ, рдЖрдкрдХреЛ рдЕрд▓рдЧ рд╕реЗ рд╕реНрдкреИрдо рдЪрд▓рд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ - рдпрд╣ рдПрдХ рдореЙрдбреНрдпреВрд▓ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рдпрджрд┐ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ рддреЛ рд▓реЛрдб рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред SA рдХреЛ рдЕрдкрдбреЗрдЯ рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП, рдореВрд▓ sa- рдЕрдкрдбреЗрдЯ рдЙрдкрдпреЛрдЧрд┐рддрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ рдХрд┐ etc / cron.d рдореЗрдВ updater рдХреЗ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рд▓реЙрдиреНрдЪ рдХреЗ рд╕рд╛рде рдПрдХ sa-update рдлрд╝рд╛рдЗрд▓ рд╣реИред

[!] Rpmforge-extras рд╕реЗ рд╕реНрдкреИрдорд╕реИрдЯ 3.3.2 рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ, рдХреНрдпреЛрдВрдХрд┐ рдИрдкреАрдИрдПрд▓ рд╕рдВрд╕реНрдХрд░рдг 3.3.1 рд╕реЗ рдмрд╛рд╣рд░ рдирд┐рдХрд▓рдиреЗ рд╕реЗ рд╕рд╛-рдЕрдкрдбреЗрдЯ рдореЗрдВ рдПрдХ рдЬрдиреНрдо рджреЛрд╖ рд╣реИред рдирд╡реАрдирддрдо рд╕рдВрд╕реНрдХрд░рдг 3.3.2 рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рд╕реЗ рдЫреБрдЯрдХрд╛рд░рд╛ рджрд┐рд▓рд╛рддрд╛ рд╣реИ рдФрд░ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдЕрдкрдбреЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ
 yum install spamassassin amavisd-new 

рд╣рдо /etc/mail/spamassassin/local.cf рдХреЛ рдереЛрдбрд╝рд╛ рд╕рд╣реА рдХрд░реЗрдВрдЧреЗ
local.cf
 required_hits 6 report_safe 0 rewrite_header Subject ***SPAM*** # # WEIRD STUFF # score FORGED_MUA_OUTLOOK 2.199 2.199 0.963 1.116 score FH_DATE_PAST_20XX 0.0 score DOS_OE_TO_MX_IMAGE 0.0 score DOS_OE_TO_MX 0.0 score DOS_OUTLOOK_TO_MX 0.0 score TO_NO_BRKTS_DIRECT 0.0 score HELO_LOCALHOST 0.0 score FSL_RU_URL 0.0 score FROM_MISSP_EH_MATCH 1.0 score TVD_RCVD_SINGLE 1.0 score TO_IN_SUBJ 1.0 # # TUNING # score SUBJ_FULL_OF_8BITS 0.00 score HTML_COMMENT_8BITS 0.01 score HEADER_8BITS 0.00 score TO_NO_USER 0.01 score FORGED_MUA_OUTLOOK 0.5 score X_AUTH_WARNING 0.01 score SUBJ_HAS_UNIQ_ID 9.99 score HTTP_USERNAME_USED 9.99 score FORGED_YAHOO_RCVD 9.99 score FORGED_JUNO_RCVD 16 score UNWANTED_LANGUAGE_BODY 1.02 score MLM 5.55 score RCVD_NUMERIC_HELO 4.95 # # WHITE/BLACK LISTS # whitelist_from root@localhost whitelist_from *@example.com blacklist_from *@outblaze.com auto_whitelist_path /etc/mail/spamassassin/auto-whitelist auto_whitelist_file_mode 0666 



рд▓реЗрдХрд┐рди Amavis рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓ Dovecot рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЗ рдареАрдХ рд╡рд┐рдкрд░реАрдд рд╣реИ рдЬрд┐рд╕рдХреА рдореИрдВ рдкреНрд░рд╢рдВрд╕рд╛ рдХрд░рддрд╛ рд╣реВрдВред рдпрд╣ рдПрдХ рдирд┐рдпрдорд┐рдд рдкрд░реНрд▓ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╣реИ, рдЬреЛ рдЦрд░рд╛рдм рд╕реНрд╡рд░реВрдкрд┐рдд рднреА рд╣реИред рдореИрдВ рдХреЗрд╡рд▓ рдкрд░рд┐рд╡рд░реНрддрди рдХрд░рддрд╛ рд╣реВрдВ - рдлрд╝рд╛рдЗрд▓ рдХреЛ .pl рдкрд░ рдирд╛рдо рдмрджрд▓реЗрдВ рдФрд░ рд╕рд┐рдВрдЯреИрдХреНрд╕ рд╣рд╛рдЗрд▓рд╛рдЗрдЯрд┐рдВрдЧ рдХреЗ рд╕рд╛рде рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ; рдпрд╣ рдЬреАрд╡рди рдХреЛ рдереЛрдбрд╝рд╛ рдЖрд╕рд╛рди рдмрдирд╛рддрд╛ рд╣реИред
amavisd.conf
 #   amavisd #      /etc/postfix/master.cf $max_servers = 4; #    $mydomain = 'domain.tld'; #    @mynetworks = qw( 127.0.0.0/8 [::1] [FE80::]/10 [FEC0::]/10 10.0.0.0/8 172.16.0.0/12 192.168.0.0/16 ); #   2.6.4  .      # Open relay? Nonlocal recips but not originating @client_ipaddr_policy = map { $_ => 'MYNETS' } @mynetworks; #     spamassassin $sa_tag_level_deflt = 2.0; $sa_tag2_level_deflt = 5.2; $sa_kill_level_deflt = 6.5; $sa_dsn_cutoff_level = 10; #           $virus_admin = "virusalert\@$mydomain"; $mailfrom_notify_admin = "virusalert\@$mydomain"; $mailfrom_notify_recip = "virusalert\@$mydomain"; $mailfrom_notify_spamadmin = "abuse\@$mydomain"; #      $myhostname = 'mail.domain.tld'; #     $final_virus_destiny = D_DISCARD; $final_banned_destiny = D_BOUNCE; $final_spam_destiny = D_DISCARD; $final_bad_header_destiny = D_PASS; #    ,     # ,      $virus_quarantine_to = "virus-quarantine\@$mydomain"; $spam_quarantine_to = "spamtrap\@$mydomain"; #   -        #   @whitelist_sender_maps = ( new_RE( qr'.*@example\.com$'i, qr'user@test\.org$'i, )); #   @av_scanners   @av_scanners = ( ['ClamAV-clamd', \&ask_daemon, ["CONTSCAN {}\n", "/var/run/clamav/clamd.sock"], qr/\bOK$/m, qr/\bFOUND$/m, qr/^.*?: (?!Infected Archive)(.*) FOUND$/m ], ); ); #    @av_scanners_backup = ( ['ClamAV-clamscan', 'clamscan', "--stdout --no-summary -r --tempdir=$TEMPBASE {}", [0], qr/:.*\sFOUND$/m, qr/^.*?: (?!Infected Archive)(.*) FOUND$/m ], ); 


рдЕрдм рдкреЛрд╕реНрдЯрдлрд┐рдХреНрд╕ рдХреЛ рдмрддрд╛ рджреЗрдВ рдХрд┐ рд╡рд╣ рдЕрдм рдореЗрд▓ рдЪреЗрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдорд╛рд╡рд┐рд╕ рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд░рддрд╛ рд╣реИред /Etc/postfix/master.cf рдореЗрдВ рдЙрдкрдпреБрдХреНрдд рдмреНрд▓реЙрдХ рдЬреЛрдбрд╝реЗрдВ
master.cf
 # ==================================================================== # AMAVIS # ==================================================================== amavisfeed unix - - n - 4 lmtp -o lmtp_data_done_timeout=1200 -o lmtp_send_xforward_command=yes -o disable_dns_lookups=yes -o max_use=20 127.0.0.1:10025 inet n - n - - smtpd -o content_filter= -o smtpd_delay_reject=no -o smtpd_client_restrictions=permit_mynetworks,reject -o smtpd_helo_restrictions= -o smtpd_sender_restrictions= -o smtpd_recipient_restrictions=permit_mynetworks,reject -o smtpd_data_restrictions=reject_unauth_pipelining -o smtpd_end_of_data_restrictions= -o smtpd_restriction_classes= -o mynetworks=127.0.0.0/8,192.168.0.0/16 -o smtpd_error_sleep_time=0 -o smtpd_soft_error_limit=1001 -o smtpd_hard_error_limit=1000 -o smtpd_client_connection_count_limit=0 -o smtpd_client_connection_rate_limit=0 -o receive_override_options=no_header_body_checks,no_unknown_recipient_checks,no_milters,no_address_mappings -o local_header_rewrite_clients= -o smtpd_milters= -o local_recipient_maps= -o relay_recipient_maps= 


рдФрд░ /etc/postfix/main.cf рдореЗрдВ рдЬреЛрдбрд╝реЗрдВ
 # ============================================================ # AMAVIS # ============================================================ content_filter=amavisfeed:[127.0.0.1]:10024 

рд╣рдо рд╕реЗрд╡рд╛рдУрдВ рдХреЛ рдкреВрд░рд╛ рдХрд░рддреЗ рд╣реИрдВ:
 chkconfig amavisd on && /etc/init.d/amavisd start /etc/init.d/postfix restart telnet 127.0.0.1 10024 # 220 [127.0.0.1] ESMTP amavisd-new service ready 





рдЫрд╡рд┐

Greylisting рджрдХреНрд╖рддрд╛ рдПрдХ рд╕реЗ рдЕрдзрд┐рдХ рдмрд╛рд░ рд▓рд┐рдЦреА рдЧрдИ рд╣реИ, рдЗрд╕рд▓рд┐рдП, рдмрд╕ рдЪреБрдкрдЪрд╛рдк
 yum install postgrey 


рдХреЛрдИ рдЕрддрд┐рд░рд┐рдХреНрдд рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ - рд╣рдо рдЗрд╕реЗ /etc/postfix/main.cf рдореЗрдВ рд▓рд┐рдЦрддреЗ рд╣реИрдВ
 smtpd_recipient_restrictions = ... reject_unauth_destination, check_policy_service unix:/var/spool/postfix/postgrey/socket, ... 

[!] Check_policy_service рдирд┐рд░реНрджреЗрд╢ рдХреЛ рдЕрд╕реНрд╡реАрдХрд╛рд░ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред
рдпрджрд┐ рд╕реНрдХреИрди рд╕реЗ рдХрд┐рд╕реА рднреА рд╕рд░реНрд╡рд░ рдХреЛ рдмрд╛рд╣рд░ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рддреЛ /etc/postfix/postgrey_whitelist_clients.local рдХреЛ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ, рдФрд░ рд╕реНрдХреИрди рд╕реЗ рд╕реНрдерд╛рдиреАрдп рд╕рд░реНрд╡рд░ рд╕реЗ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдореЗрд▓ рдкрддреЛрдВ рдХреЛ рдмрд╛рд╣рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, posterey_whitelist_recipients рдХреЛ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВред рд╡реНрдпрд╛рдкрдХ рдЬрд╛рдирдХрд╛рд░реА рд╡рд┐рдХреА рдкрд░ рдЙрдкрд▓рдмреНрдз рд╣реИ: wiki.centos.org/HowTos/postgrey

Fail2ban рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдЕрд▓рдЧ рд╣реИред рдЗрд╕рдХреА рдкреНрд░рднрд╛рд╡рд╢реАрд▓рддрд╛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдореИрдВ рдЙрдкрдпреЛрдЧрд┐рддрд╛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдФрд░ рдмрд╛рдж рдореЗрдВ рдореЗрд▓ рд╕рд░реНрд╡рд░ рдХреЗ рдЖрдВрдХрдбрд╝реЛрдВ рдХреЗ рд╕рд╛рде рдПрдХ рддрд╕реНрд╡реАрд░ рджрд┐рдЦрд╛рдКрдВрдЧрд╛ред рдЪрд╛рд░реНрдЯ рдкрд░ рд▓рд╛рд▓ рд░реЗрдЦрд╛ рдПрдХ рдЦреБрд▓реЗ рд░рд┐рд▓реЗ рдХреА рддрд▓рд╛рд╢ рдореЗрдВ рдПрдХ рдЕрдирдзрд┐рдХреГрдд рд╕реНрд╡рд╛рдЗрдк рд╣реИред рдкрддреНрд░, рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдХрд╛рдЯ рджрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ, рдФрд░ рд╡реЗ рдПрдХ рдмрдбрд╝рд╛ рднрд╛рд░ рдирд╣реАрдВ рдмрдирд╛рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЗрд╕ рдХрдЪрд░реЗ рдХреЛ рдмрд┐рд▓реНрдХреБрд▓ рдХреНрдпреЛрдВ рд╕реБрдиреЗрдВред рдЗрд╕рд▓рд┐рдП, рджреЛ рдирд┐рдпрдореЛрдВ рдХреЗ рд╕рд╛рде fail2ban рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рд╕реЗ рдЧреНрд░рд╛рдл рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рдореЗрдВ рд╕реБрдзрд╛рд░ рд╣реЛрддрд╛ рд╣реИ:


 yum install fail2ban 

рдореЗрд▓ рд╕рд░реНрд╡рд░ /etc/fail2ban/jail.conf рдХреЗ рд▓рд┐рдП рдирд┐рдпрдо
 #      # ,   #    ## ## ,       ## [ssh-iptables] enabled = true filter = sshd action = iptables[name=SSH, port=ssh, protocol=tcp] logpath = /var/log/secure maxretry = 5 [postfix-banhammer] enabled = true filter = postfix action = iptables-multiport-tcp[name=PFIX, port="smtp,smtps", protocol=tcp] logpath = /var/log/maillog maxretry = 3 bantime = 7200 [dovecot-banhammer] enabled = true filter = dovecot action = iptables-multiport-tcp[name=DCOT, port="pop3,pop3s,imap,imaps", protocol=tcp] logpath = /var/log/maillog findtime = 300 maxretry = 10 bantime = 1800 [sasl-banhammer] enabled = true filter = sasl action = iptables-multiport-tcp[name=SASL, port="smtp,smtps", protocol=tcp] logpath = /var/log/maillog findtime = 300 maxretry = 10 bantime = 1800 


рдпрджрд┐ рдПрд╕рдПрд╕рдПрдЪ рдХреЗрд╡рд▓ рдЖрдВрддрд░рд┐рдХ рдиреЗрдЯрд╡рд░реНрдХ рдХреЗ рд▓рд┐рдП рдЦреБрд▓рд╛ рд╣реИ, рддреЛ рдкрд╣рд▓рд╛ рдирд┐рдпрдо рд╣рдЯрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдФрд░ рдлрд┐рд░ рднреА, рдХреЛрдИ рдЕрддрд┐рд░рд┐рдХреНрдд рдЗрд╢рд╛рд░реЗ рдирд╣реАрдВ - рдирд┐рдпрдо рдмреЙрдХреНрд╕ рд╕реЗ рдмрд╛рд╣рд░ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВред Smtp brute рдмрд▓ рд╕реБрд░рдХреНрд╖рд╛ рдХреЗ рдЕрдиреБрд╕реНрдорд╛рд░рдХ рдХреЗ рд▓рд┐рдП urbain рдХреЛ рдзрдиреНрдпрд╡рд╛рджред
 chkconfig fail2ban on && /etc/init.d/fail2ban start 




рдЫрд╡рд┐

рдЪреВрдБрдХрд┐ рд╣рдордиреЗ рдбреЛрдореЗрди рдФрд░ рдореЗрд▓рдмреЙрдХреНрд╕ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдбрд╡рдХреЛрдЯ рдореЗрдВ рдСрдЯреЛрдХреНрд░реАрдЯ рдкреНрд▓рдЧрдЗрди рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд┐рдпрд╛ , рдмрд╕ рдЙрдиреНрд╣реЗрдВ рдкреЛрд╕реНрдЯрдлрд┐рдХреНрд╕рдбрдорд┐рди рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рдпрд╛ рдХрдВрд╕реЛрд▓ рдореЗрдВ INSERT INTO рдмрдирд╛рдХрд░ рджрд░реНрдЬ рдХрд░реЗрдВред рдкрд╣рд▓реЗ рдкреНрд░рдорд╛рдгреАрдХрд░рдг рдпрд╛ рдкрд╣рд▓реЗ рдкрддреНрд░ рдХреЛ рдкреНрд░рд╛рдкреНрдд рд╣реЛрдиреЗ рдкрд░, рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рд╕рдВрд░рдЪрдирд╛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдмрдирд╛рдИ рдЬрд╛рдПрдЧреАред

рдкреЙрдк 3 рдЯреЗрд╕реНрдЯ рдХрд░реЗрдВ, рдЕрд▓рдЧ-рдЕрд▓рдЧ рдкреЛрдЬрд╝ рдореЗрдВ smtp рдХрд░реЗрдВ
  1. POP3 рд▓реЙрдЧрд┐рди рдХрд╛ рдкрд░реАрдХреНрд╖рдг
     telnet 127.0.0.1 110 user test pass testpassword UIDL 

  2. рдкрд░реАрдХреНрд╖рдг IMAP рд▓реЙрдЧрд┐рди
     telnet 127.0.0.1 143 1 LOGIN test testpassword 1 SELECT INBOX 

  3. рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдХреЗ рдмрд┐рдирд╛ SMTP рдХрд╛ рдкрд░реАрдХреНрд╖рдг
     telnet 127.0.0.1 25 #220 mail.domain.tld ESMTP Postfix helo darling #250 mail.domain.tld MAIL FROM: root@localhost #250 2.1.0 Ok RCPT TO: test@example.com #250 2.1.5 Ok DATA #354 End data with <CR><LF>.<CR><LF> this is text message . #250 2.0.0 Ok: queued as E3BA1A15FA quit #221 2.0.0 Bye 

  4. SMTP c SSL
    base64 , AUTH LOGIN. 334 base64.
     telnet 127.0.0.1 25 #220 mail.domain.tld ESMTP Postfix ehlo darling #250-mail2.dautkom.lv #250-PIPELINING #250-SIZE 51200000 #250-STARTTLS #250-AUTH PLAIN LOGIN #250-AUTH=PLAIN LOGIN #250-ENHANCEDSTATUSCODES #250-8BITMIME #250 DSN AUTH LOGIN #334 VXNlcm5hbWU6 dGVzdA== #334 UGFzc3dvcmQ6 dGVzdHBhc3N3b3Jk #235 2.7.0 Authentication successful 

  5. SMTP c SSL
     #   credentials perl -MMIME::Base64 -e 'print encode_base64("\000test\@example.com\000testpassword")' #   # AHRlc3RAZXhhbXBsZS5jb20AdGVzdHBhc3N3b3Jk openssl s_client -starttls smtp -connect 127.0.0.1:587 -crlf -ign_eof #   #     EHLO darling #250-mail.example.com #250-PIPELINING #250-SIZE 51200000 #250-ENHANCEDSTATUSCODES #250-8BITMIME #250 DSN AUTH PLAIN AHRlc3RAZXhhbXBsZS5jb20AdGVzdHBhc3N3b3Jk #235 2.7.0 Authentication successful 



рдПрдВрдЯреАрд╡рд╛рдпрд░рд╕ рд╕реБрд░рдХреНрд╖рд╛ рдХрд╛ рдкрд░реАрдХреНрд╖рдг
  1. amavis . , . , . :
     cd /usr/share/doc/amavisd-new-2.8.0/test-messages perl -pe 's/./chr(ord($&)^255)/sge' <sample.tar.gz.compl | zcat | tar xvf - 


  2. :
     sendmail -i your-address@example.com < sample-virus-simple.txt sendmail -i your-address@example.com < sample-spam-GTUBE-junk.txt 

    ( /var/log/maillog). , verbose /etc/dovecot/conf.d/10-logging.conf log-level /etc/amavisd/amavisd.conf .





рдЫрд╡рд┐

рдЕрдм рдЖрдк рдХрдВрдкреНрдпреВрдЯрд░ рдХреА рд╢рдХреНрддрд┐ рдХреЛ рдмрдВрдж рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЖрдк рдореЗрд▓ рд╕рд░реНрд╡рд░ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдбреЛрдореЗрди, рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛, рдЙрдкрдирд╛рдо рдЖрджрд┐ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВред рдЕрдВрдд рдореЗрдВ, рдХреБрдЫ рд╕рд╛рдорд╛рдиреНрдп рдмрд┐рдВрджреБ рдФрд░ рд╕рд┐рдлрд╛рд░рд┐рд╢реЗрдВ:

  1. рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдореИрдВ git рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВ, / / тАЛтАЛрдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЛ рдПрдХ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдореЗрдВ рдмрджрд▓ рджреЗрддрд╛ рд╣реВрдВред рдпрд╣ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдЖрдкрдХреЛ рддрдХрдиреАрдХреА рд╡рд┐рднрд╛рдЧ рдХреЗ рдХрд░реНрдордЪрд╛рд░рд┐рдпреЛрдВ рдХреЗ рдмреАрдЪ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд░реВрдк рд╕реЗ рдлрд╝рдВрдлрд╝рд┐рдВрдЧ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдФрд░ рдЪрд░рдг рдирд┐рдпрдВрддреНрд░рдг рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдореЗрд▓ рд╕рд░реНрд╡рд░ рдХреЗ рд░реВрдк рдореЗрдВ рдЗрд╕ рддрд░рд╣ рдХреЗ рдПрдХ рдПрдХреАрдХреГрдд рдкреНрд░рдгрд╛рд▓реА рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдореЗрдВ, рдпрд╣ рдЕрднреНрдпрд╛рд╕ рдЬреАрд╡рди рдХреЛ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдмрдирд╛ рд╕рдХрддрд╛ рд╣реИред
  2. c courier dovecot. , . wiki2.dovecot.org/Migration/Courier . POP3 UIDL , . , .

     find . -name "courier*" -delete 
  3. iptables тАФ .
  4. CentOS rsyslog , syslog-ng EPEL. , syslog-ng тАФ .
  5. vacation , dovecot Sieve ┬л┬╗ . тАФ ┬л ┬╗. .


рдореИрдВрдиреЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреА рд▓рдЧрднрдЧ рдкреВрд░реНрдг рдЕрд╕реЗрдВрдмрд▓реА рдХреЛ рдЧрд┐рдЯрдм рдкрд░ рд░рдЦрд╛ , рддрд╛рдХрд┐ рдпрджрд┐ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ рддреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдЯреБрдХрдбрд╝реЛрдВ рдореЗрдВ рдирд╣реАрдВ, рдмрд▓реНрдХрд┐ рдкреВрд░реЗ рдореЗрдВ рдПрдХреНрд╕реЗрд╕ рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реЛ рд╕рдХреЗред рдЗрд╕ рдЖрд▓реЗрдЦ рдореЗрдВ, рд╕рднреА рд╕рд┐рд╕реНрдЯрдо рдХреЗ рд╕рдорд╛рди рдХреНрд░рдорд┐рдХ рд╕реЗрдЯрдЕрдк рдХрд╛ рдЕрдиреБрдХрд░рдг рдХрд░рддреЗ рд╣реБрдП, рдлрд╛рдЗрд▓реЗрдВ рдзреАрд░реЗ-рдзреАрд░реЗ рд╕рдВрдкрд╛рджрд┐рдд рдХреА рдЧрдИрдВред рдЕрдзрд┐рдХрд╛рдВрд╢ рдкреБрд╕реНрддрд┐рдХрд╛рдУрдВ рдореЗрдВ, рдлрд╛рдЗрд▓реЗрдВ рддреБрд░рдВрдд рджреА рдЧрдИрдВ рдФрд░ рдкрд╛рдардХ рдХреЛ рдЗрд╕ рдмрд╛рдд рдХрд╛ рдЕрдВрджрд╛рдЬрд╛ рдирд╣реАрдВ рд╣реЛ рд╕рдХрд╛ рдХрд┐ рд╡реЗ рдХреНрдпрд╛ рдХрд░ рд░рд╣реЗ рдереЗ рдФрд░ рдХреИрд╕реЗ рдЬреБрдбрд╝реЗ рдереЗред рдореИрдВрдиреЗ рдЪрд░рдгрдмрджреНрдз рд╕реЗрдЯрдЕрдк рджрд┐рдЦрд╛рддреЗ рд╣реБрдП, рдЗрд╕рд╕реЗ рдЫреБрдЯрдХрд╛рд░рд╛ рдкрд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреАред рд╢рд╛рдпрдж рдпрд╣ рдХрд┐рд╕реА рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧреА рд╣реИред

рдореИрдВ рдПрдХ рдмрд╛рд░ рдлрд┐рд░ рдЬреЛрд░ рджреЗрддрд╛ рд╣реВрдВ рдХрд┐ рдпрд╣ рд╕реНрдерд╛рдкрдирд╛ рдХрд╛ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдЪрд░рдг рд╣реИред рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдЕрдЧрд░ рдЖрдк рдирд┐рдЧрд░рд╛рдиреА рдХрдиреЗрдХреНрд╢рди рдкрд░ рд╡рд┐рдЪрд╛рд░ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ, рдЬреЛ рдореЗрд▓ рд╕рд░реНрд╡рд░ рдкрд░ рдмреЗрд╣рдж рд╡рд╛рдВрдЫрдиреАрдп рд╣реИ, рддрдм рднреА рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рдЕрдВрдд рдирд╣реАрдВ рд╣реИред рд╕реНрдкреИрдо-рд╡рд┐рд░реЛрдзреА рдиреАрддрд┐ рдХрд╛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рдорд╛рдпреЛрдЬрди рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЖрд╡рд╢реНрдпрдХ рд╣реЛрдЧрд╛; рдпрджрд┐ рдЖрдк рдЕрддрд┐рд░рд┐рдХреНрдд рд░рд┐рд▓реЗ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛рддреЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЛ рдЕрдВрддрд┐рдо рд░реВрдк рджреЗрдирд╛ рд╣реЛрдЧрд╛; рдкреНрд░рддрд┐рдмрдВрдзреЛрдВ рдЖрджрд┐ рдХреЗ рдорд╛рдкрджрдВрдбреЛрдВ рдХреЛ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реЛрдЧрд╛ред

рд▓реЗрдХрд┐рди рдмрдбрд╝реЗ рдкреИрдорд╛рдиреЗ рдкрд░ рдЧрд╛рдЗрдб рд▓рд┐рдЦрдиреЗ рдореЗрдВ рдЗрд╕ рдкрд░реАрдХреНрд╖рдг рдХрд▓рдо рдХреЗ рдмрд╛рдХреА рд╣рд┐рд╕реНрд╕реЛрдВ рдХреЛ рдкреВрд░рд╛ рдорд╛рдирд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдпреЛрдЬрдирд╛рдПрдВ "рд╢реБрд░реБрдЖрддреА" рдХреЗ рд▓рд┐рдП рд╕рд╛рдордЧреНрд░реА рдХреЛ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ рд╣реИрдВ рдФрд░ рдореЗрд▓ рд╕рд░реНрд╡рд░ рдкрд░ рдирд╣реАрдВ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдореИрдВрдиреЗ рдмрд┐рд▓реНрд▓рд┐рдпреЛрдВ рдкрд░ рдкреНрд░рд╢рд┐рдХреНрд╖рд┐рдд рдХрд░рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ рд╣реИред рдЗрд╕ рдЬрдЧрд╣ рдХреЛ рдХрд┐рд╕рдиреЗ рдкрдврд╝рд╛ рд╣реИ ... рдЙрдо ... рдореИрдВ рдЖрдкрдХреЗ рдзреИрд░реНрдп рд╕реЗ рдИрд░реНрд╖реНрдпрд╛ рдХрд░рддрд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рдкреНрд░рдХрд╛рд╢рди рдХреЛ рдХрдИ рд╣рд┐рд╕реНрд╕реЛрдВ рдореЗрдВ рддреЛрдбрд╝рдирд╛ рдЕрдиреБрдЪрд┐рдд рд▓рдЧ рд░рд╣рд╛ рдерд╛ред

Source: https://habr.com/ru/post/In193220/


All Articles