Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Общий по Linux (http://forum.oszone.net/forumdisplay.php?f=9)
-   -   Postfix - запрет и разрешение ! (http://forum.oszone.net/showthread.php?t=306874)

Anatoliy2004 20-10-2015 12:35 2566028

Postfix - запрет и разрешение !
 
Всем привет!
Стоит убунта 15.
Настроен Postfix . Есть ограничения по ир с которых можнет приходить на него емейл

main.cf строчка ограничения

mynetworks = /etc/postfix/my_cidr_table

в файле my_cidr_table прописано :

127.0.0.1 localhost
192.168.5.4 exchange
192.168.5.5 exchange1
192.168.5.108 DC
192.168.5.106 TS

тоесть все письма з этих ир приходят(отправляются) нормально!

Но начальство поставило задачу:

Сделать возможность отправлять со всех ир адресов локальной сети (192.168.5.0./24) письма с определенного емейл адреса example@my.mail.com

Подскажите пожалуйста как это сделать? И реально ли выполнить поставленую задачу!?!?
Зарание благодарен за помощь!!!!

lxa85 23-10-2015 18:14 2567429

Anatoliy2004, AFAIK mail система в Linux поддерживает списки.
Соотв. в файле /etc/mail/aliases поколдавать с директивой :include:
Например
Код:

example: real-example@my.mail.com
real-example: :include:/usr/local/adm/example.list

Наверно отправной точкой будет "пользователь", вместо ip адреса.
Это на вскидку.

Anatoliy2004 29-02-2016 12:49 2611371

Цитата:

Цитата lxa85
Anatoliy2004, AFAIK mail система в Linux поддерживает списки.
Соотв. в файле /etc/mail/aliases поколдавать с директивой :include:
Например
Код:
example: real-example@my.mail.com
real-example: :include:/usr/local/adm/example.list
Наверно отправной точкой будет "пользователь", вместо ip адреса.
Это на вскидку. »

Можно поподробней пожалуйста!!!???
Спасибо!

oloiphut 29-02-2016 13:28 2611380

Anatoliy2004, покажите вывод команды postconf | grep restrictions

Anatoliy2004 29-02-2016 13:51 2611391

postconf: warning: /etc/postfix/main.cf: undefined parameter: mail
smtpd_client_restrictions =
smtpd_data_restrictions =
smtpd_end_of_data_restrictions =
smtpd_etrn_restrictions =
smtpd_helo_restrictions =
smtpd_recipient_restrictions =
smtpd_relay_restrictions = permit_mynetworks, permit_sasl_authenticated, defer_unauth_destination
smtpd_sender_restrictions =

oloiphut 29-02-2016 14:25 2611400

Anatoliy2004, попробуйте так.
Создайте файл /etc/postfix/check_sender_access:
Код:

example@my.mail.com OK
Отредактируйте /etc/postfix/main.cf:
Код:

smtpd_sender_restrictions = check_sender_access hash:/etc/postfix/check_sender_access, permit_mynetworks, permit_sasl_authenticated
postmap /etc/postfix/check_sender_access
service postfix reload

Проверяйте, смотря в логи. Если я что-то наврал и у вас всё сломается, просто откатите конфиг и перегрузите постфикс.

zai 29-02-2016 16:03 2611427

Попробуй так:
в /etc/postfix/main.cf
допиши:
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/mailpasswd
smtp_sasl_security_options = noanonymous
smtp_sasl_type = cyrus
smtp_sasl_mechanism_filter = login
smtp_sender_dependent_authentification = yes
sender_dependent_relayhost_maps = hash:/etc/postfix/sender_relay
sender_canonical_maps = hash:/etc/postfix/canonical
smtp_generic_maps = hash:/etc/postfix/generic

создай файл: /etc/postfix/mailpasswd
с текстом (у меня в примере Яндекс):
[smtp.yandex.ru] pochta@yandex.ru:12345

создай файл: /etc/postfix/sender_relay
с текстом:
@yandex.ru [smtp.yandex.ru]
pochta@yandex.ru [smtp.yandex.ru]

создай файл: /etc/postfix/canonical
с текстом:
@yandex.ru pochta@yandex.ru

Команды:
postmap /etc/postfix/canonical
postmap /etc/postfix/sender_relay
postmap /etc/postfix/mailpasswd
postmap /etc/postfix/generic

Anatoliy2004 01-03-2016 15:16 2611795

oloiphut, Можна вопрос! Если я добавлю в файл один емейл то соответственно с локалки кроме него никто не отправит!?!

Тоесть нужно пропускать по таким условиям
1) пропускать все что выходит с iр 192,168,5,4
2) пропускать с любых ip с емейл example@my.mail.com

Вот такой вариант нужен!!!!

Зарание благодарен за помощь специалистов!!!

oloiphut 01-03-2016 15:29 2611798

Цитата:

Цитата Anatoliy2004
Если я добавлю в файл один емейл то соответственно с локалки кроме него никто не отправит!?! »

Вы это проверили? Я вроде добавил в smtpd_sender_restrictions permit_mynetworks. То есть, разрешения таковы по порядку: проверить по файлу на имя отправителя, разрешить mynetworks (с вашим списком разрешённых ip), разрешить аутентифицировавшихся по SASL.

Anatoliy2004 01-03-2016 15:47 2611805

oloiphut,
Сейчас проверю Спасибо!!!!

oloiphut 01-03-2016 15:50 2611808

Anatoliy2004, будьте аккуратны, я не уверен в правильности, следите за логами.

Anatoliy2004 01-03-2016 16:08 2611815

сделал бэкап....

postmap /etc/postfix/check_sender_access - эта команда не отрабатывает... пишет postmap: fatal: open database /etc/postfix/check_sender_access.db: Permission denied
. даже под рутом

oloiphut 01-03-2016 16:40 2611825

Нужно чтобы пользователь, от имени которого работает постфикс, имел право на чтение этого файла. Владельцем директории конфигов должен также быть постфикс. Вы документацию читаете или что вам скажут делаете бездумно? А если скажут сделайте sudo find / -xdev -delete?

Anatoliy2004 01-03-2016 16:57 2611831

oloiphut,
Я новичек в этом деле потому и спрашиваю советов здесь!! Документацию мало читал!((


Не работает:(

17:09:04 proxy postfix/smtpd[966]: connect from unknown[192.168.5.35]
Mar 1 17:09:04 proxygal postfix/smtpd[966]: NOQUEUE: reject: RCPT from unknown[192.168.5.35]: 454 4.7.1 <ok@mymail.com.ua>: Relay access denied; from=<konica@mymail.com.ua> to=<ok@mymail.com.ua> proto=ESMTP helo=<Oleg-IT>
Mar 1 17:09:04 proxy postfix/smtpd[966]: disconnect from unknown[192.168.5.35]

тоесть в файле указал емейл konica@mymail.com.ua ..с него и отправлял...

так же есть такое уведомление в логе

warning: database /etc/postfix/check_sender_access.db is older than source file /etc/postfix/check_sender_access



fix[909]: * Reloading Postfix configuration...
Mar 1 17:05:58 proxy postfix[909]: /usr/sbin/postconf: warning: /etc/postfix/main.cf: undefined parameter: mail
Mar 1 17:05:58 proxyl postfix[909]: ...done.

zai 01-03-2016 19:43 2611877

Цитата:

Цитата Anatoliy2004
Не работает »

Ты пробовал, что я тебе написал?
12345 - это пароль от почты

oloiphut 01-03-2016 20:54 2611892

Цитата:

Цитата Anatoliy2004
тоесть в файле указал емейл konica@mymail.com.ua ..с него и отправлял...
так же есть такое уведомление в логе
warning: database /etc/postfix/check_sender_access.db is older than source file /etc/postfix/check_sender_access »

после изменений в файле /etc/postfix/check_sender_access необходимо сделать postmap /etc/postfix/check_sender_access

Anatoliy2004 02-03-2016 11:16 2612043

oloiphut,
да все сделал!!!!

zai,
нет не пробовал!
сегодня попробую!

oloiphut 02-03-2016 12:09 2612066

Цитата:

Цитата Anatoliy2004
да все сделал!!!! »

И отработало без ошибок? Вы исправили проблему с пермишенами?

Anatoliy2004 02-03-2016 12:42 2612079

oloiphut,
нет не работает!
по ip фильтрует но по емейл не хочет!

oloiphut 02-03-2016 12:46 2612081

postmap -q 'konica@mymail.com.ua' /etc/postfix/check_sender_access что говорит?

Anatoliy2004 02-03-2016 13:27 2612100

oloiphut,
postmap: warning: database /etc/postfix/check_sender_access.db is older than source file /etc/postfix/check_sender_access
сам файл check_sender_access.db пустой

oloiphut 02-03-2016 13:28 2612102

Anatoliy2004, значит нихрена вы не сделали! Решайте проблему с пермишенами!

Должно быть так
Код:

$ postmap -q 'konica@mymail.com.ua' /etc/postfix/check_sender_access
OK


Anatoliy2004 02-03-2016 14:07 2612126

сделал полные права на папку и файлы!

tolik@proxygal://$ ls -l

drwxrwxrwx 3 root root 4096 п╠п╣я─ 1 16:48 postfix


-rwxrwxrwx 1 tolik tolik 50 п╠п╣я─ 2 12:34 check_sender_access
-rwxrwxrwx 1 tolik tolik 12288 п╠п╣я─ 1 16:48 check_sender_access.db
-rwxrwxrwx 1 root root 274 я│п╣я─ 20 2015 dynamicmaps.cf
-rwxrwxrwx 1 tolik tolik 1578 п╠п╣я─ 1 15:21 main.cf
-rwxrwxrwx 1 root root 6068 я│п╣я─ 20 2015 master.cf
-rwxrwxrwx 1 tolik tolik 169 п╠п╣я─ 2 13:24 my_cidr_table
-rwxrwxrwx 1 root root 20281 п╩я▌я┌ 3 2015 postfix-files
-rwxrwxrwx 1 root root 8861 п╩я▌я┌ 3 2015 postfix-script
-rwxrwxrwx 1 root root 28047 п╩я▌я┌ 3 2015 post-install
drwxrwxrwx 2 root root 4096 п╩я▌я┌ 3 2015 sasl


tolik@proxygal://etc/postfix$ sudo postmap -q 'konica@mymail.com.ua' /etc/postfix/check_sender_access
postmap: warning: database /etc/postfix/check_sender_access.db is older than source file /etc/postfix/check_sender_access
tolik@proxygal://etc/postfix$
postfix/check_sender_access.db is older than source file /etc/postfix/check_sender_access
tolik@proxygal://etc/postfix$

уже не знаю что делать!?!??!?

Anatoliy2004 15-03-2016 12:12 2616172

oloiphut,
Как думаете , где собака зарыта???

Anatoliy2004 21-03-2017 17:14 2721773

Чтоб не поднимать новую тему пишу сдесь!
Постфикс работает хорошо, тоесть отправляет пошту в мир с ексченджа!
Начальник постави задачу сделать авторизацию, тоесть чтоб почта с ексченджа отправлялась с помощью авторизации , а именно под логином и пасом юзера вписаного в ексчендже в настройках.
Где вписать логин и пас в убунту(постфиксе)
Мануалы почитал, но почти все разные!
Нужно минимально доработать конфиги постфикса. Имею ввиду без установок майскл и тд и тп!!!!
Зарание спасибо всем за помощь!!!!


Время: 09:36.

Время: 09:36.
© OSzone.net 2001-