This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
сервисы_электронной_почты [2009/05/04 07:38] val |
сервисы_электронной_почты [2020/12/12 18:12] (current) val [Сервисы передачи почты] |
||
---|---|---|---|
Line 1: | Line 1: | ||
====== Сервисы электронной почты ====== | ====== Сервисы электронной почты ====== | ||
- | [[Протокол SMTP и Mail Transfer Agent]] | + | * [[https://serversitters.com/using-telnet-to-test-mail-servers.html|Using telnet to test mail servers]] |
- | [[Использование Mail Delivery Agent procmail]] | + | ===== Открытые продукты ===== |
- | [[Протокол POP3]] | + | ==== Сервисы передачи почты ==== |
- | [[Протокол IMAP4]] | + | * [[Сервис MTA]] |
+ | * [[Утилита mailsend]] | ||
+ | * [[Утилита blat]] | ||
+ | * [[Утилита msmtp]] | ||
+ | ==== Сервисы доставки почты в почтовые ящики ==== | ||
- | [[Web интерфейс к почте]] | + | * [[Сервис MDA]] |
- | [[Защита почты от вирусов]] | + | ==== Сервисы доступа к почте ==== |
- | [[Защита почты от SPAM]] | + | * [[Протокол POP3]] |
+ | * [[Протокол IMAP]] | ||
+ | * [[Cервер popper]] | ||
+ | * [[Сервер dovecot]] | ||
+ | * [[Сервер Cyrus]] | ||
+ | ==== Настройка почтовых клиентов ==== | ||
+ | * [[UA mail]] | ||
+ | * [[UA mutt]] | ||
+ | * [[Использование fetcmail]] | ||
+ | * [[Web интерфейс к почте]] | ||
+ | ==== Защита электронной почты ==== | ||
+ | * [[Защита почты от вирусов и SPAMа]] | ||
- | ===== Сервисы доступа к почтовым ящикам ===== | + | ==== Организация рассылки электронной почты ==== |
- | ==== Сервис pop3 ==== | + | * [[Организация рассылки электронной почты]] |
- | === Пример pop3 диалога === | + | ===== Коммерческие продукты ===== |
- | <code> | + | |
- | cX# telnet gX 110 | + | |
- | user mailuser | + | |
- | pass 123 | + | |
- | list | + | |
- | +OK 1 messages (810 octets) | + | |
- | 1 810 | + | |
- | . | + | |
- | top 1 0 | + | |
- | +OK 810 octets | + | |
- | Received: by gX.class (mbox mailuser) | + | |
- | (with Cubic Circle's cucipop (v1.31 1998/05/X) Thu Feb 2 18:12:X 2006) | + | |
- | … | + | |
- | retr 1 | + | |
- | +OK 810 octets | + | |
- | Received: by gX.class (mbox mailuser) | + | |
- | (with Cubic Circle's cucipop (v1.31 1998/05/X) Thu Feb 2 18:14:58 2006) | + | |
- | … | + | |
- | dele 1 | + | |
- | +OK Message 1 deleted | + | |
- | quit | + | |
- | +OK | + | |
- | </code> | + | |
- | === Использование fetcmail для доступа к почтовым ящикам === | + | * [[Zimbra]] |
- | + | * [[Communigate Pro]] | |
- | == FreeBSD === | + | |
- | <code> | + | |
- | [cX:~] # pkg_add -r fetchmail | + | |
- | + | ||
- | [cX:~] # cat /usr/local/etc/fetchmailrc | + | |
- | poll gX.dX.class proto pop3 user "mailuser" password "123" is root | + | |
- | + | ||
- | + | ||
- | [cX:~] # chmod 710 /usr/local/etc/fetchmailrc | + | |
- | + | ||
- | [cX:~] # cat /etc/rc.conf | + | |
- | ... | + | |
- | fetchmail_enable="YES" | + | |
- | fetchmail_polling_interval="20" | + | |
- | + | ||
- | [cX:~] # /usr/local/etc/rc.d/fetchmail start | + | |
- | </code> | + | |
- | + | ||
- | == Ubuntu === | + | |
- | <code> | + | |
- | root@cX:~# apt-get install fetchmail | + | |
- | + | ||
- | root@cX:~# cat /etc/default/fetchmail | + | |
- | ... | + | |
- | START_DAEMON=yes | + | |
- | + | ||
- | root@cX:~# cat /etc/fetchmailrc | + | |
- | poll gX.dX.class proto pop3 user "mailuser" password "123" is root | + | |
- | + | ||
- | root@cX:~# /etc/init.d/fetchmail restart | + | |
- | </code> | + | |
- | + | ||
- | === Настройка POP3 сервера === | + | |
- | + | ||
- | == FreeBSD == | + | |
- | <code> | + | |
- | [gX:~ ] # pkg_add -r popper | + | |
- | + | ||
- | [gX:~ ] # cat /etc/inetd.conf | + | |
- | ... | + | |
- | pop3 stream tcp nowait root /usr/local/libexec/popper popper | + | |
- | ... | + | |
- | + | ||
- | [gX:~ ] # cat /etc/rc.conf | + | |
- | ... | + | |
- | inetd_enable=”YES” | + | |
- | ... | + | |
- | + | ||
- | [gX:~ ] # /etc/rc.d/inetd start | + | |
- | </code> | + | |
- | + | ||
- | == Ubuntu == | + | |
- | <code> | + | |
- | root@g13:~# apt-get install openbsd-inetd | + | |
- | + | ||
- | root@g13:~# apt-get install qpopper | + | |
- | + | ||
- | root@g13:~# grep pop /etc/inetd.conf | + | |
- | pop-3 stream tcp nowait root /usr/sbin/tcpd /usr/sbin/in.qpopper -f /etc/qpopper.conf | + | |
- | + | ||
- | root@g13:~# /etc/init.d/openbsd-inetd start | + | |
- | </code> | + | |
- | + | ||
- | ==== Web сервис (пакет openwebmail) ==== | + | |
- | + | ||
- | === FreeBSD === | + | |
- | <code> | + | |
- | [gX:~] # cd /usr/ports/mail/openwebmail | + | |
- | + | ||
- | [gX:ports/mail/openwebmail] # make install clean | + | |
- | </code> | + | |
- | + | ||
- | === Ubuntu === | + | |
- | <code> | + | |
- | root@gX:~# wget http://openwebmail.org/openwebmail/download/debian/owm2.53-2.deb | + | |
- | + | ||
- | root@gX:~# dpkg -i owm2.53-2.deb | + | |
- | + | ||
- | root@gX:~# apt-get install openwebmail | + | |
- | + | ||
- | root@gX:~# apt-get -f install | + | |
- | </code> | + | |
- | + | ||
- | Проверка в MSIE: | + | |
- | + | ||
- | http://gX.dX.class/cgi-bin/openwebmail/openwebmail.pl | + | |
- | + | ||
- | ===== Защита почты от вирусов ===== | + | |
- | Использование clamav на уровне MTA | + | |
- | + | ||
- | ==== Установка и настройка clamav ==== | + | |
- | <code> | + | |
- | [gX:~] # cd /usr/ports/security/clamav | + | |
- | + | ||
- | [gX:ports/security/clamav] # make config | + | |
- | + | ||
- | [gX:ports/security/clamav] # cat /var/db/ports/clamav/options | + | |
- | ... | + | |
- | WITH_MILTER=true | + | |
- | ... | + | |
- | + | ||
- | [gX:ports/security/clamav] # make install clean | + | |
- | + | ||
- | [gX:~] # cat /etc/rc.conf | + | |
- | ... | + | |
- | clamav_freshclam_enable="YES" | + | |
- | clamav_milter_enable="YES" | + | |
- | ... | + | |
- | + | ||
- | [gX:/etc/mail] # /usr/local/etc/rc.d/clamav-freshclam start | + | |
- | </code> | + | |
- | ==== Настройка sendmail на взаимодействие с clamav ==== | + | |
- | <code> | + | |
- | [gX:/etc/mail] # cat gX.class.mc | + | |
- | ... | + | |
- | INPUT_MAIL_FILTER(`clmilter',`S=local:/var/run/clamav/clmilter.sock,F=, T=S:4m;R:4m') | + | |
- | define(`confINPUT_MAIL_FILTERS', `clmilter') | + | |
- | MAILER(local) | + | |
- | ... | + | |
- | + | ||
- | [gX:/etc/mail] # make cf | + | |
- | [gX:/etc/mail] # make install | + | |
- | + | ||
- | [gX:/etc/mail] # /usr/local/etc/rc.d/clamav-milter start | + | |
- | + | ||
- | [gX:/etc/mail] # /etc/rc.d/sendmail restart | + | |
- | </code> | + | |
- | + | ||
- | ===== Защита почты от спама ===== | + | |
- | + | ||
- | ==== Технология взвешенной оценки ==== | + | |
- | + | ||
- | Использование SpamAssassin на уровне MDA | + | |
- | + | ||
- | === Установка и настройка SpamAssassin === | + | |
- | <code> | + | |
- | [gX:~] # pkg_add /usr/ports/packages/All/p5-Mail-SpamAssassin.tbz | + | |
- | + | ||
- | [gX:~] # cat /usr/local/etc/mail/spamassassin/local.cf | + | |
- | rewrite_header Subject *****SPAM***** | + | |
- | report_safe 0 | + | |
- | use_bayes 0 | + | |
- | required_score -2.0 | + | |
- | trusted_networks 192.168.X | + | |
- | # add_header all Report _REPORT_ | + | |
- | # score RCVD_IN_BL_SPAMCOP_NET 10.0 | + | |
- | + | ||
- | [gX:~] # spamassassin -txD < /var/mail/mailuser | + | |
- | + | ||
- | [gX:~] # cat /etc/rc.conf | + | |
- | ... | + | |
- | spamd_enable=yes | + | |
- | ... | + | |
- | + | ||
- | [gX:~] # /usr/local/etc/rc.d/sa-spamd start | + | |
- | + | ||
- | [gX:~] # cat /usr/local/etc/periodic/daily/sa-update.sh | + | |
- | #!/bin/sh | + | |
- | echo sa-update | + | |
- | /usr/local/bin/sa-update && /usr/local/etc/rc.d/sa-spamd restart | + | |
- | + | ||
- | [gX:~] # chmod +x /usr/local/etc/periodic/daily/sa-update.sh | + | |
- | </code> | + | |
- | + | ||
- | === Создание рецепта procmail на обработку почты SpamAssassin === | + | |
- | <code> | + | |
- | [gX:~mailuser] # cat .procmailrc | + | |
- | :0fw | + | |
- | | /usr/local/bin/spamc | + | |
- | # | /usr/local/bin/spamassassin -x | + | |
- | </code> | + | |
- | ==== Технология Grey List (RFC 2821 4.5.4.1)==== | + | |
- | <code> | + | |
- | + | ||
- | [gX:~] # pkg_add -r milter-greylist | + | |
- | + | ||
- | [gX:~] # more /usr/local/share/doc/milter-greylist/README | + | |
- | + | ||
- | [gX:~] # cd /usr/local/etc/mail/ | + | |
- | [gX:local/etc/mail] # cp greylist.conf.sample greylist.conf | + | |
- | + | ||
- | [gX:local/etc/mail] # cat greylist.conf | + | |
- | ... | + | |
- | # List of users that want greylisting | + | |
- | list "grey users" rcpt { \ | + | |
- | root@gX.dX.class \ | + | |
- | ... | + | |
- | + | ||
- | [gX:~] # touch /var/milter-greylist/greylist.db | + | |
- | + | ||
- | [gX:~] # chown -R mailnull /var/milter-greylist/ | + | |
- | + | ||
- | [gX:~] # /usr/local/etc/rc.d/milter-greylist.sh start | + | |
- | + | ||
- | [gX:~] # cat /etc/mail/gX.bmstu.ru.mc | + | |
- | ... | + | |
- | define(`confMILTER_MACROS_HELO', confMILTER_MACROS_HELO``, {verify}'') | + | |
- | define(`confMILTER_MACROS_ENVRCPT', confMILTER_MACROS_ENVRCPT``, {greylist}'') | + | |
- | INPUT_MAIL_FILTER(`greylist', `S=local:/var/milter-greylist/milter-greylist.sock, F=T, T=R:30s') | + | |
- | MAILER(local) | + | |
- | ... | + | |
- | + | ||
- | + | ||
- | [gX:~] # tail -f -n 0 /var/log/maillog | + | |
- | </code> | + |