Назад | Перейти на главную страницу

SendMail не работает в CentOs 6.4

Я пытаюсь отправить электронную почту из своего CentOS 6.4, но это не работает. Мои знания о серверах весьма ограничены, поэтому я надеюсь, что кто-нибудь сможет мне помочь. Вот что я сделал:

  1. Сначала я попытался отправить электронное письмо с помощью команды «mail», но этого не было в ОС, поэтому я установил его.

    # yum install mailx
    
  2. После этого я попытался отправить электронное письмо с помощью команды «mail», но оно ничего не отправило. Я проверил его в Интернете и понял, что мне нужен почтовый сервер, такой как sendmail, поэтому я его установил.

    # yum install sendmail sendmail-cf sendmail-doc sendmail-devel
    
  3. После этого я настроил его, следуя некоторым руководствам. Сначала файл sendmail.mc.

    # vi /etc/mail/sendmail.mc
    
  4. Закомментировал следующую строку:

    BEFORE
    # DAEMON_OPTIONS('Port=smtp, Name=MTA') dnl
    
    AFTER
    # dnl DAEMON_OPTIONS('Port=smtp, Name=MTA') dnl
    
  5. Убедитесь, что следующие строки верны:

    # FEATURE(`virtusertable', `hash -o /etc/mail/virtusertable.db')dnl
    # ...
    # FEATURE(use_cw_file)dnl
    # ...
    # FEATURE(`access_db', `hash -T<TMPF> -o /etc/mail/access.db')dnl
    
  6. Обновите sendmail.cf

    # m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf
    
  7. Откройте порт 25, добавив нужную строку в файл iptables.

    # vi /etc/sysconfig/iptables
    
    # -A INPUT -m state --state NEW -m tcp --dport 25 -j ACCEPT
    
  8. перезапустите iptables и sendmail

    # service iptables restart
    # service sendmail restart
    

Я подумал, что это будет нормально, но когда попробовал:

    # mail 'test@gmail.com'
    # Subject: test subject
    # test content
    #.

Я проверил журнал почты:

    # vi /var/log/maillog

И вот что я обнаружил:

    Aug 14 17:36:24 dev-admin-test sendmail[20682]: r7D8RItS019578: 
    to=<test@gmail.com>, ctladdr=<root@dev-admin-test.localdomain> (0/0), 
    delay=1+00:09:06, xdelay=00:00:00, mailer=esmtp, pri=2460500, relay=alt4.gmail-
    smtp-in.l.google.com., dsn=4.0.0, stat=Deferred: Connection timed out with 
    alt4.gmail-smtp-in.l.google.com.

Не понимаю, почему тайм-аут соединения. Я что-то упускаю? Кто-нибудь может мне помочь?

Спасибо.

Исходящие SMTP-соединения заблокированы брандмауэром

Вы уверены, что ваши исходящие SMTP-соединения не блокируются брандмауэром?
Это обычная мера предосторожности при исходящем спаме.

Получаете ли вы приветственное сообщение SMTP при подключении к портам 25 и 587 Telnet на smtp.gmail.com?
[Вы должны получить приветствие как минимум на порту 587]

telnet smtp.gmail.com 587
telnet smtp.gmail.com 25

Большое спасибо за ответы. Похоже, что используемый вместо меня smtp-сервер не был настроен в файле конфигурации. Я получил правильную информацию, записал ее в конфигурационный файл, и теперь все работает нормально.

Спасибо!