понеділок, 7 січня 2013 р.

Поштова система на VDS CentOS 5

Виникла потреба налаштувати повноцінну поштову систему. Після ознайомлення в мережі вибір впав на Postfix, MySQL, Squirrelmail, Dovecot, SSL.

Спочатку налаштував по ось цим керівництвам: http://daily-notes.ru/2011/11/vds_hetzner_hosting_mail_server/
http://sudouser.com/ustanovka-pochtovogo-servera-postfix-dovecot-mysql-i-virtualnyx-domenov.html

Потім натрапив на Postfixadmin і переналаштовую по ось цим:
http://www.houseoflinux.com/e-mail/postfix-dovecot-mysql-squirrelmail-on-centos-5-5-32-64-bits/all-pages
http://www.hilik.org.ua/%D1%81%D1%82%D1%80%D0%BE%D0%B8%D0%BC-%D0%BF%D0%BE%D1%87%D1%82%D0%BE%D0%B2%D1%83%D1%8E-%D1%81%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D1%83postfix-dovecot-postfixadmin-%D1%87%D0%B0%D1%81%D1%82%D1%8C-%D0%BF-2/

Наразі відправка пошти працює ідеально з правильними заголовками (в тому числі PTR). З отриманням пошти щось не так ще. Підозрюю, щось недопиляв з записами DNS.

Update:
На даний момент налаштував можливість відправки пошти з віддаленого клієнта по smtp з SSL/TLS  авторизацією. Мені це ніяк не вдавалося -- робив все що міг: міняв налаштування iptables, DNS записи, кілька разів заново переналаштовував postfix. Писав в підтримку хостинг-провайдера -- питав чи не закривають порти. В кінці кінців вияснилося, що доступ до 25-й порту закриває інтернет провайдер (Intertelecom). Та взагалі-то мені й не крепко те треба було, бо я врешті мав налаштувати на 587/465 порт. Але ці порти взагалі не відкликалися.

Після всього цього микання натрапив в тирнеті, як поміняти, щоб postfix слухав не 25-й порт, а якийсь інший. Це робиться в /etc/postfix/master.cf

smtp      inet  n       -       n       -       -       smtpd 
замінити на
425       inet  n       -       n       -       -       smtpd


І тут я побачив рядки, котрі йшли відразу після цього і були закоментовані:

submission inet n       -       n       -       -       smtpd
  -o smtpd_enforce_tls=yes
  -o smtpd_sasl_auth_enable=yes
  -o smtpd_client_restrictions=permit_sasl_authenticated,reject
smtps     inet  n       -       n       -       -       smtpd
  -o smtpd_tls_wrappermode=yes
  -o smtpd_sasl_auth_enable=yes
  -o smtpd_client_restrictions=permit_sasl_authenticated,reject


Тю! submission це 587 порт, а smtps -- 465 і вони закоментовані.

Після того, як я їх розкоментував, все запрацювало.

Я 4 дні рив тирнет, перечитав безліч інструкцій і ніде про ці рядки не було написано!

Треба ще розібратися, що потрібно залишити 465 чи 587.

Правда залишилася проблема з доставкою пошти від інших MTA ззовні на сервер. Поправив DNS-записи для домена (трохи наплутав там, поки розбирався) і логи показали, що сервери намагаються доставити пошту, але не можуть знайти користувачів. Ну та це вже треба знову заново начисто все налаштувати. Головну проблему я виявив. Теж саме з Dovecot. Але зараз мені це не є вкрай необхідним і немає коли розбиратися.