Необходимо запретить отправку почты с сервера/сайта на все адреса, за исключением списка разрешенных (например, есть тестовый сервер разработки и в нем присутствуют реальные адреса клиентов, которые могут получать письма от тестового сервера, что очень нежелательно) Особенность в том, что php-функция mail использует бинарник sendmail для отправки писем. Например, настройки sendmail для отправки почты функции mail […]
Архивы рубрики ‘Mail’
Настройка Postfix для блокировки отправки почты через функцию PHP mail
Фильтрация спама средствами Postfix
Имя почтового сервера – mail.example.com Имя почтового домена – example.com IP-адрес почтового сервера – 113.113.113.113
1 |
# nano /etc/postfix/main.cf |
запретить использование адресов, отличных от определенных в документе RFC-821
1 |
strict_rfc821_envelopes = yes |
запретить использование команды VRFY
1 |
disable_vrfy_command = yes |
потребовать обязательное использование команды HELO/EHLO
1 |
smtpd_helo_required = yes |
Далее следует очень важный параметр smtpd_delay_reject. Я настоятельно рекомендую не изменять его значение по умолчанию (yes). В противном […]
Полезные команды Dovecot
Просмотр всех настроек Dovecot
1 |
# dovecot -a |
Просмотр настроек отличных от дефолтных
1 |
# dovecot -n |
Просмотр активных подключений
1 |
# doveadm who |
Размещение LOG-файлов Dovecot
1 |
# doveadm log find |
Просмотр последних 1000 ошибок и предупреждений с момента последнего запуска Dovecot
1 |
# doveadm log errors |
Переоткрытие всех логов Dovecot(полезно выполнять после ручной ротации логов)
1 |
# doveadm log reopen |
Тестирование аутентификации для пользователя(где rip-remote ip)
1 |
# doveadm auth test -x service=imap -x rip=10.10.1.4 username@example.com |
1 |
# doveadm auth test -x service=pop3 -x rip=10.10.1.4 username@example.com |
1 |
# doveadm auth test -x service=smtp -x rip=10.10.1.4 username@example.com |
performs a passdb lookup (without […]
Просмотр/удаление/отправка почты с командной строки, проверка логина/пароля, тестирование службы smtp/smtps/imap/imaps/pop3/pop3s/ftp/http с командной строки
POP3
1 |
# telnet IP-adress server 110 |
1 2 3 4 |
Trying IP-adress server... Connected to IP-adress server. Escape character is '^]'. +OK Dovecot ready. |
1 |
user user1@domain.com |
1 |
+OK |
1 |
pass 123456789 |
1 |
+OK Logged in. |
1 |
list |
1 |
+OK 2 messages: |
1 2 3 |
1 653 2 839 . |
# Удалить сообщение 839
1 |
dele 2 |
1 |
+OK Marked to be deleted. |
# Прочитать сообщение 653
1 |
retr 1 |
# Выход
1 |
quit |
1 2 |
+OK Logging out. Connection closed by foreign host. |
POP3s
1 |
# openssl s_client -connect IP-adress-server:995 -quiet |
Либо
1 |
# openssl s_client -starttls pop3 -connect IP-adress-server:110 -quiet |
1 2 |
…………………………. +OK Dovecot ready. |
1 |
user user1@domain.com |
1 |
+OK |
1 |
pass 123456789 |
1 |
+OK Logged in. |
# Просмотр общего кол-ва сообщений и общий размер всех сообщений
1 |
stat |
1 |
+OK 1 653 |
# Удаление сообщения653 (по факту удаляет после ввода […]
Отправка почты с командной строки
1.Используя Sendmail
1 |
# nano /root/email.txt |
1 2 |
Subject: Test message via sendmail Hi there! This is only test message |
Тема сообщения указана после Subject:
1 |
# sendmail user1@domain.com < /root/email.txt |
2.Используя Mail
1 |
# apt-get install mailutils |
1 |
# mail -s "Test message via mail" user1@domain.com < /root/email.txt |
(либо < /dev/null – для отправки пустого сообщения) При отправке вложения
1 |
# mail -a /root/email.txt -s "Test attachment via mail" user1@domain.com < /dev/null |
Отправка нескольким адресатам
1 |
# mail -s "Test message via mail" user1@domain.com,user1@domain2.com < /root/email.txt |
3.Используя Mutt
1 |
# mutt -s "Test message via mutt" user1@domain.com < /dev/null |
При отправке вложения
1 |
# mutt -a /tmp/email.txt -s "Test message via mutt" user1@domain.com < /dev/null |
4.Используя Telnet
1 |
# telnet localhost 25 |
1 2 3 4 5 |
Trying ::1... Trying 127.0.0.1... Connected to localhost. Escape character is '^]'. 220 app02.XXXXXXX.XXX ESMTP Postfix (Debian/GNU) |
1 |
ehlo localhost |
1 2 3 4 5 6 7 8 9 |
250-app02.XXXXXXX.XXX 250-PIPELINING 250-SIZE 10240000 250-VRFY 250-ETRN 250-STARTTLS 250-ENHANCEDSTATUSCODES 250-8BITMIME 250 DSN |
1 |
mail from: user1@domain.com |
1 |
250 2.1.0 Ok |
1 |
rcpt to: user1@domain2.com |
1 |
250 2.1.5 Ok |
1 |
DATA |
1 |
354 End data with <CR><LF>.<CR><LF> |
1 |
Subject: Test message via telnet |
1 |
This is only test message |
1 |
. |
1 |
250 2.0.0 Ok: queued as B46B960289 |
1 |
quit |
[…]
Полезные команды Exim
Получение базовой информации по Exim Проверить правильность синтаксиса конфигурационного файла и узнать с поддержкой каких опций собран exim:
1 |
# exim –bV |
Вывести количество сообщений в очереди:
1 |
# exim –bpc |
Печать списка сообщений в очереди. Выводятся, время постановки в очередь, размер, ID сообщения, отправитель, получатель:
1 |
# exim –bp |
Просмотр активных отправителей
1 |
# exim -bp | awk '{print $4}' | sort | uniq -c | sort -rn |
Вывод суммарной информации. Выводимые колонки: количество писем, объем, самое старое […]
Полезные команды Postfix. Работа с очередью Postfix
Проверка синтаксиса конфигурационных файлов Postfix
1 |
# postfix check |
Просмотр текущих значений параметров Postfix
1 |
# postconf |
Просмотр стандартных значений параметров Postfix(значений по умолчанию)
1 |
# postconf -d |
1 |
# postconf | grep message_size_limit |
1 |
message_size_limit = 10240000 |
Изменение значения параметра message_size_limit без перезагрузки (работает и после перезагрузки postfix)
1 |
# postconf -e 'message_size_limit = 20480000' |
1 |
# postconf | grep message_size_limit |
1 |
message_size_limit = 20480000 |
1 |
# /etc/init.d/postfix restart |
1 2 |
Shutting down postfix: [ OK ] Starting postfix: [ OK ] |
1 |
# postconf | grep message_size_limit |
1 |
message_size_limit = 20480000 |
То же самое можно достичь прописав в
1 |
/etc/postfix/main.cf |
1 |
# message_size_limit = 20480000 |
Больше […]
Установка и настройка DKIM-milter для Postfix/Sendmail на Centos
1.Установка DKIM-milter и добавление его в автозагрузку
1 |
# yum install dkim-milter |
1 |
# chkconfig --level 235 dkim-milter on |
2.Настройка DKIM-Milter Создаем папку для хранения приватного ключа, а также генерируем пару приватный/публичный ключ.
1 |
# mkdir /etc/dkim-milter |
1 |
# cd /etc/dkim-milter/ |
1 |
# /usr/sbin/dkim-genkey -d example.com -s default |
3.Делаем бекапы оригиналов файлов/папок
1 |
# mkdir /root/kamaok/Backup/dkim-milter |
1 |
# cp default.* /root/kamaok/Backup/dkim-milter/ |
1 |
# cp /etc/init.d/dkim-milter /root/kamaok/Backup/dkim-milter/ |
1 |
# cp /etc/mail/dkim-milter/dkim-filter.conf /etc/mail/dkim-milter/dkim-filter.conf~ |
Важно!!! Имя селектора должно совпадать с именем приватного файла Поэтому изменяем имя созданного приватного ключа(default.private на имя селектора – […]
Оповещение по E-Mail при аутентификации пользователя в системе
1.Устанавливаем MUA(mail user agent) mailx Debian/Ubuntu
1 |
# apt-get install mailx |
Centos/Red Hat/Fedora
1 |
# yum install mailx |
2. Настройка файла окружения пользователя
1 |
# nano /root/.bashrc |
1 |
# echo 'ALERT - Root Shell Access <output from hostname>:' `date` `who` | mail -s "Alert: Root Access from `who | cut -d'(' -f2 | cut -d')' -f1`" your@yourdomain.com |
3.Выполняем logout/login и на указанный адрес получаем письмо с темой
1 |
Alert: Root Access from 159.224.XXX.YYY |
таким содержанием
1 |
ALERT - Root Shell Access <output from hostname> on: Thu Nov 28 15:23:03 EET 2013 root pts/0 Nov 28 15:23 (159.224.XXX.YYY) |
Аналогично при необходимости можно контролировать аутентификацию любого пользователя добавляя в файл
1 |
/home/<username>/.bashrc |
вышеуказанную строку Источник: http://www.tecmint.com/get-root-ssh-login-email-alerts-in-linux/