2014-11-13 3 views
0

У меня здесь небольшой скрипт для скриптов smtp в python. ничего особенного, просто основы. работает на всех моих серверах или на моих рабочих станциях. , но на одном сервере я не могу подключиться к удаленному smtp. вместо этого он всегда пытается подключиться к локальному smtp.Разрешить подключение к удаленному smtp

from email.mime.multipart import MIMEMultipart 
from email.mime.text import MIMEText 
import smtplib,string,datetime,time 

MESSAGE = MIMEMultipart('alternative') 
MESSAGE['subject'] = "TEST" 
#MESSAGE['TO'] = to 
# FOR TESTING ONLY 
MESSAGE['TO'] = '[email protected]' 
# FOR TESTING ONLY 
MESSAGE['FROM'] = 'Me <[email protected]>' 
HTML_BODY = MIMEText('<p>Hi this is a test</p>','html') 
MESSAGE.attach(HTML_BODY) 

server = smtplib.SMTP("gator3124.hostgator.com:587") 

server.set_debuglevel(1) 
server.login("username","password") 
server.sendmail(MESSAGE['from'],[MESSAGE['to']],MESSAGE.as_string()) 
server.quit() 

я выполнить этот скрипт (конечно, изменить имя пользователя, пароль и т.д. ...) я получаю следующее: вывод

send: 'ehlo h37-157-247-18.host.redstation.co.uk\r\n' 
reply: '250-h37-157-247-18.host.redstation.co.uk Hello h37-157-247-18.host.redstation.co.uk [37.157.247.18]\r\n' 
reply: '250-SIZE 52428800\r\n' 
reply: '250-8BITMIME\r\n' 
reply: '250-PIPELINING\r\n' 
reply: '250-AUTH PLAIN LOGIN\r\n' 
reply: '250-STARTTLS\r\n' 
reply: '250 HELP\r\n' 
reply: retcode (250); Msg: h37-157-247-18.host.redstation.co.uk Hello h37-157-247-18.host.redstation.co.uk [37.157.247.18] 
SIZE 52428800 
8BITMIME 
PIPELINING 
AUTH PLAIN LOGIN 
STARTTLS 
HELP 
send: 'AUTH PLAIN xxxx =\r\n' 
reply: '535 Incorrect authentication data\r\n' 
reply: retcode (535); Msg: Incorrect authentication data 

Скрипта пытается открыть подключение к локальной машине и игнорирует хост в скрипте. это происходит только на этой машине. я могу ввести то, что хочу, как хост, не имеет значения.

EDIT: Действительно, я могу успешно выполнить скрипт с правами root. но как «обычный» пользователь ssh он подключается к localhost ..

ответ

0

Эта ошибка обычно встречается с разрешениями файлов почтовых ящиков в cPanel. Для исправления этой проблемы необходим корневой доступ. Это может произойти, если включена опция «Разрешить аутентификацию учетной записи электронной почты с использованием пароля учетной записи владельца домена» в меню WHM -> Конфигурация сервера -> Настройки настройки. Отключите эту опцию и повторите попытку.

Поскольку ваш сервер открыт для доступа в Интернет для приема почты из любой точки мира, это также означает, что любой человек в мире может попытаться войти в систему и отправить почту в качестве одного из ваших адресов электронной почты. Просто будьте осторожны, это изменение перенаправит исходящие SMTP-соединения, позволяющие учетным записям делать прямые подключения, что может увеличить вероятность того, что ваш сервер будет в черных списках.