LINUX.ORG.RU

Сообщения taronto

 

Postfix: странное поведение. Попытка отправить письмо сотни раз

В логах постфикса простыни (как минимум сотни строк) вида

Feb  1 19:33:24 politepol postfix/qmgr[1353]: ED856E15D2: from=<noreply@politepol.com>, size=813, nrcpt=1 (queue active)
Feb  1 19:33:24 politepol postfix/qmgr[1353]: E8DCCE5606: from=<noreply@politepol.com>, size=813, nrcpt=1 (queue active)
Feb  1 19:33:24 politepol postfix/qmgr[1353]: EAEAAE76E5: from=<noreply@politepol.com>, size=813, nrcpt=1 (queue active)
Feb  1 19:33:24 politepol postfix/qmgr[1353]: EEF84E5600: from=<noreply@politepol.com>, size=813, nrcpt=1 (queue active)
Feb  1 19:33:24 politepol postfix/qmgr[1353]: EA402E423E: from=<noreply@politepol.com>, size=813, nrcpt=1 (queue active)
Feb  1 19:33:24 politepol postfix/qmgr[1353]: E824AE0C3A: from=<noreply@politepol.com>, size=813, nrcpt=1 (queue active)
Feb  1 19:33:24 politepol postfix/qmgr[1353]: E8BAEE76A7: from=<noreply@politepol.com>, size=813, nrcpt=1 (queue active)
Feb  1 19:33:24 politepol postfix/qmgr[1353]: EF9DAE3ACD: from=<noreply@politepol.com>, size=813, nrcpt=1 (queue active)
Feb  1 19:33:24 politepol postfix/qmgr[1353]: E0400E0CC7: from=<noreply@politepol.com>, size=813, nrcpt=1 (queue active)

и

Feb  1 19:38:25 politepol postfix/error[22966]: EC5C1E5183: to=<fgfdsfhjjhkj@yandex.com>, relay=none, delay=46668, delays=46667/1.4/0/0.01, dsn=4.7.0, status=deferred (delivery temporarily suspended: host mail.gandi.net[217.70.178.9] refused to talk to me: 421 4.7.0 relay4-d.mail.gandi.net Error: too many connections from 46.226.108.155)
Feb  1 19:38:25 politepol postfix/error[22934]: EC073E2EAD: to=<fgfdsfhjjhkj@yandex.com>, relay=none, delay=75983, delays=75982/1.4/0/0.01, dsn=4.7.0, status=deferred (delivery temporarily suspended: host mail.gandi.net[217.70.178.9] refused to talk to me: 421 4.7.0 relay4-d.mail.gandi.net Error: too many connections from 46.226.108.155)
Feb  1 19:38:25 politepol postfix/error[22921]: EED77E1F62: to=<fgfdsfhjjhkj@yandex.com>, relay=none, delay=97139, delays=97138/1.4/0/0.01, dsn=4.7.0, status=deferred (delivery temporarily suspended: host mail.gandi.net[217.70.178.9] refused to talk to me: 421 4.7.0 relay4-d.mail.gandi.net Error: too many connections from 46.226.108.155)
Feb  1 19:38:25 politepol postfix/error[22925]: EAD7CE20CB: to=<fgfdsfhjjhkj@yandex.com>, relay=none, delay=96956, delays=96955/1.4/0/0, dsn=4.7.0, status=deferred (delivery temporarily suspended: host mail.gandi.net[217.70.178.9] refused to talk to me: 421 4.7.0 relay4-d.mail.gandi.net Error: too many connections from 46.226.108.155)
Feb  1 19:38:25 politepol postfix/error[22932]: E9CADE5123: to=<fgfdsfhjjhkj@yandex.com>, relay=none, delay=46708, delays=46707/1.4/0/0.01, dsn=4.7.0, status=deferred (delivery temporarily suspended: host mail.gandi.net[217.70.178.9] refused to talk to me: 421 4.7.0 relay4-d.mail.gandi.net Error: too many connections from 46.226.108.155)
Feb  1 19:38:25 politepol postfix/error[22961]: EA4FFE210C: to=<fgfdsfhjjhkj@yandex.com>, relay=none, delay=96924, delays=96923/1.4/0/0.01, dsn=4.7.0, status=deferred (delivery temporarily suspended: host mail.gandi.net[217.70.178.9] refused to talk to me: 421 4.7.0 relay4-d.mail.gandi.net Error: too many connections from 46.226.108.155)
Feb  1 19:38:25 politepol postfix/error[22975]: E0CA1E0D0B: to=<fgfdsfhjjhkj@yandex.com>, relay=none, delay=109769, delays=109768/1.4/0/0.01, dsn=4.7.0, status=deferred (delivery temporarily suspended: host mail.gandi.net[217.70.178.9] refused to talk to me: 421 4.7.0 relay4-d.mail.gandi.net Error: too many connections from 46.226.108.155)
Feb  1 19:38:25 politepol postfix/error[22968]: E1837E78CE: to=<fgfdsfhjjhkj@yandex.com>, relay=none, delay=17218, delays=17217/1.4/0/0.01, dsn=4.7.0, status=deferred (delivery temporarily suspended: host mail.gandi.net[217.70.178.9] refused to talk to me: 421 4.7.0 relay4-d.mail.gandi.net Error: too many connections from 46.226.108.155)
Feb  1 19:38:25 politepol postfix/error[22946]: EA1BEE0DB6: to=<fgfdsfhjjhkj@yandex.com>, relay=none, delay=109533, delays=109532/1.4/0/0.01, dsn=4.7.0, status=deferred (delivery temporarily suspended: host mail.gandi.net[217.70.178.9] refused to talk to me: 421 4.7.0 relay4-d.mail.gandi.net Error: too many connections from 46.226.108.155)
Feb  1 19:38:25 politepol postfix/error[22972]: E487FE5770: to=<fgfdsfhjjhkj@yandex.com>, relay=none, delay=42330, delays=42329/1.4/0/0, dsn=4.7.0, status=deferred (delivery temporarily suspended: host mail.gandi.net[217.70.178.9] refused to talk to me: 421 4.7.0 relay4-d.mail.gandi.net Error: too many connections from 46.226.108.155)

На этом же сервере лежит веб приложение. Которое может отправлять письма на fgfdsfhjjhkj@yandex.com (этот имейл фигурирует в логах). Единственное место где может быть отправлено множество писем на мой взгляд - это страница восстановления пароля, но я эту функцию отключил. Может ли быть проблема с postfix-ом?

Может нужен конфиг postfix-а (main.cf)? Вот он:

# See /usr/share/postfix/main.cf.dist for a commented, more complete version


# Debian specific:  Specifying a file name will cause the first
# line of that file to be used as the name.  The Debian default
# is /etc/mailname.
#myorigin = /etc/mailname

smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu)
biff = no

# appending .domain is the MUA's job.
append_dot_mydomain = no

# Uncomment the next line to generate "delayed mail" warnings
#delay_warning_time = 4h

readme_directory = no

# TLS parameters
smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
smtpd_use_tls=yes
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache

# See /usr/share/doc/postfix/TLS_README.gz in the postfix-doc package for
# information on enabling SSL in the smtp client.

smtpd_relay_restrictions = permit_mynetworks permit_sasl_authenticated defer_unauth_destination
myhostname = politepol.com
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = /etc/mailname
mydestination = $myhostname, politepol.com, localhost.com, , localhost
# relayhost =
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all
inet_protocols = all

relayhost = mail.gandi.net:submission
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_auth_enable = yes
smtp_use_tls=yes
smtp_sasl_auth_enable = yes
smtp_sasl_mechanism_filter = plain, login
smtp_sasl_security_options = noanonymous
smtp_generic_maps = hash:/etc/postfix/generic
#smtp_tls_CAfile = /etc/ssl/certs/ca-certificates.crt

Буду благодарен за любой комментарий

 

taronto
()

Проблема с лишними соединениями

Я разработчик одного веб приложения на питоне. Оно создает множество соединений к другим ресурсам в интернете. Есть проблема. У меня есть подозрение, что часть соединений не закрывается либо их слишком много создается и они очень подозрительно выгледят. Я выполняю комманду sudo lsof -p 24942 (24942 - это айдишка процесса приложения) Часть результата выглядит примерно так:

COMMAND   PID     USER   FD      TYPE     DEVICE SIZE/OFF       NODE NAME
python  24942 www-data  226u     IPv4 1299540398      0t0        TCP politepol.com:33258->a2-19-32-85.deploy.static.akamaitechnologies.com:https (ESTABLISHED)
python  24942 www-data  232u     IPv4 1299639239      0t0        TCP localhost:1234->localhost:45996 (ESTABLISHED)
python  24942 www-data  239u     IPv4 1299588950      0t0        TCP politepol.com:34910->a2-19-32-85.deploy.static.akamaitechnologies.com:https (ESTABLISHED)
python  24942 www-data  241u     IPv4 1299623513      0t0        TCP politepol.com:43044->a23-32-243-165.deploy.static.akamaitechnologies.com:https (ESTABLISHED)
python  24942 www-data  242u     IPv4 1299524433      0t0        TCP politepol.com:52442->a2-19-32-85.deploy.static.akamaitechnologies.com:https (ESTABLISHED)
python  24942 www-data  243u     IPv4 1299622317      0t0        TCP politepol.com:42786->a23-32-243-165.deploy.static.akamaitechnologies.com:https (ESTABLISHED)
python  24942 www-data  247u     IPv4 1299531657      0t0        TCP politepol.com:57440->a2-19-32-85.deploy.static.akamaitechnologies.com:https (ESTABLISHED)
python  24942 www-data  250u     IPv4 1299627881      0t0        TCP politepol.com:46228->a23-32-243-165.deploy.static.akamaitechnologies.com:https (ESTABLISHED)
python  24942 www-data  255u     IPv4 1299637218      0t0        TCP localhost:1234->localhost:45580 (ESTABLISHED)
python  24942 www-data  263u     IPv4 1299640091      0t0        TCP localhost:1234->localhost:46498 (ESTABLISHED)
python  24942 www-data  265u     IPv4 1299544144      0t0        TCP politepol.com:34574->a2-19-32-85.deploy.static.akamaitechnologies.com:https (ESTABLISHED)
python  24942 www-data  267u     IPv4 1299641353      0t0        TCP localhost:1234->localhost:46124 (ESTABLISHED)
python  24942 www-data  268u     IPv4 1299547756      0t0        TCP politepol.com:37850->a2-19-32-85.deploy.static.akamaitechnologies.com:https (ESTABLISHED)
python  24942 www-data  273u     IPv4 1299640098      0t0        TCP localhost:1234->localhost:46530 (ESTABLISHED)
python  24942 www-data  281u     IPv4 1299532094      0t0        TCP politepol.com:55680->a2-19-32-85.deploy.static.akamaitechnologies.com:https (ESTABLISHED)
python  24942 www-data  286u     IPv4 1299582554      0t0        TCP politepol.com:60040->a2-19-32-85.deploy.static.akamaitechnologies.com:https (ESTABLISHED)
python  24942 www-data  287u     IPv4 1299591864      0t0        TCP politepol.com:36188->a2-19-32-85.deploy.static.akamaitechnologies.com:https (ESTABLISHED)
python  24942 www-data  289u     IPv4 1299574765      0t0        TCP politepol.com:55282->a2-19-32-85.deploy.static.akamaitechnologies.com:https (ESTABLISHED)
python  24942 www-data  291u     IPv4 1299286603      0t0        TCP politepol.com:39880->185.215.152.26:http (ESTABLISHED)
python  24942 www-data  313u     IPv4 1299533969      0t0        TCP politepol.com:56650->a2-19-32-85.deploy.static.akamaitechnologies.com:https (ESTABLISHED)

Мне не понятно что значат соединения вида localhost:1234->localhost:52048 и не ясно откуда берутся соединения с deploy.static.akamaitechnologies.com. Из приложения не видно соединений или редиректов на домен deploy.static.akamaitechnologies.com.

В чем может быть проблема? Может кто-нибудь подсказать?

 ,

taronto
()

Как настроить отправку имейлов с помощью gandi.net

Я настроил возможность получать и отправлять письма с помощью десктопного клиента.

Но как настроить линукс сервер, что бы програмно можно было отправлять имейлы.

Возможно нужно настроить postfix. Но я даже в терминах путаюсь. Postfix это имейл агент. Вроде как подходит под эту тему

Надеюсь это не оффтоп

Спасибо за любые коментарии

 ,

taronto
()

Архивирование больших директорий, продолжение

Это продолжение темы «Архивирование больших директорий (миллионы файлов) на продакшн сервере».

Были внесены поправки в код в соответствии с замечаниями пользователей Gotf (общие рекомендации), xorik (оценка работы ionice, упоминание cgroups c отличной ссылкой на обзор cgroups), val-amart (трюк с проверкой наличия команды)

Повторю основные функции скрипта archive_huge_dir.sh:

  1. Позволяет архивировать и паковать в тихом режиме директории с миллионами файлов в файлы со структурой директорий /целевая/директория/<год>/<месяц>/<исходная поддиректория>.tar.gz.
  2. Есть возможность лимитировать скорость чтения (опционально).
  3. Прогресбар поставляемый Pipe Viever-ом.
  4. В дополнение: если не хочется ограничивать по скорости, то стоит воспользоваться комбинацией
    ionice -c 3 nice -n 19 ./archive_huge_dir.sh ...

В процессе анализа предыдущей темы были сделаны выводы:

  • ionice помогает снизить нагрузку на диск, если снизить приоритет до idle. В компании с nice, который позволяет уменьшить нагрузку на проц, это не плохое решение для многих.
  • Тем кто решает задачи нагрузки на сервер нyжно знать о существовании cgroups.
  • Lock file или файл блокировок - это техника, позволяющая предотвратить одновременно работающие скрипты. flock хорошо справляется с этой задачей. Пример:
    flock -n ~/.archive_huge_dir.lock ./archive_huge_dir.sh ...

Спасибо всем за полезные коментарии к предыдущей теме. Если я не обратил внимания на чьи-то коментарии, то это сделано не нарочно, а потому что у меня не было времени все проверить.

 , , , ,

taronto
()

Архивирование больших дирикторий (миллионы файлов) на продакшн сервере

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

Написав такой скрипт, появилось желание поделиться (чего добру пропадать). Вот ссылка на сабж:

https://gist.github.com/taroved/11269983

(Тестировалось на ubuntu 11.04 и 12.04)

Важные особенности:

1. В нем используется Pipe Viewer, который выполняет основную работу. Он ограничивает скорость чтения с диска и отображает прогресс бар, что является неоценимой пользой, поскольку процесс архивации может занимать несколько дней.

2. Скрипт кладет запакованные архивы в поддиректории вида «год» либо «год/месяц» (в зависимости от параметров скрипта).

PS: Это уже вторая версия. Предыдущая версия была освещена здесь: http://habrahabr.ru/sandbox/81541/

PPS: Если кто скажет, на каком ресурсе еще можно засветить подобный стаф, буду премного благодарен. Ну и здорово вообще услышать какой-нибудь отзыв от знающих людей

 , , ,

taronto
()

RSS подписка на новые темы