Разные настройки qpopper на двух интерфейсах (решение, может кому сгодится)

Автор smaharbA, 15 июля 2010, 22:28

0 Пользователи и 1 гость просматривают эту тему.

smaharbA

Есть недостаток у qpopper - нет возможности разных настроек на разные интерфейсы/сети
Задача - максимально штатно реализовать (без переписания исходников)
копируем /etc/qpopper.conf в /etc/qpopper.conf.inet в который добавляем следующее
set auth-file = /etc/qpopper.inet путь на усмотрение

файл ограничений /etc/qpopper.inet содержит строки с одним именем (почтовым ящиком) на строку, как в документации
типа
вася
перя
даздраперма


в /etc/inetd.conf добавляем следующее
pop-2           stream  tcp     nowait.3        root    /usr/sbin/tcpd  /usr/sbin/in.qpopper -f /etc/qpopper.conf.inet
pop-2 использовал в виду его неиспользуемости :) ну или свой порт
цифра 3 после точки для дополнительных ограничений по количеству коннектов - выбирайте сами

теперь для iptables

$IPT -A INPUT -p TCP -i $LAN_IFACE --dport 110 -j ACCEPT
$IPT -t mangle -A PREROUTING -i $INET_IFACE -p tcp --dport 110 -j MARK --set-mark 2
$IPT -A INPUT -m mark --mark 2 -j ACCEPT
$IPT -t nat -A PREROUTING -p tcp -m mark --mark 2 -j REDIRECT --to-port 109

где $IPT собственно iptables
$INET_IFACE интерфейс локальной сети
$INET_IFACE интерфейс инет сети
(использовать редирект с марком или днат каждому свое)
перепускаем inetd
kill -HUP `pgrep inetd`

Все теперь со строны инета по тому же стандартному pop3 порту могут логиниться толко вася, петя и даздраперма, а со стороны другого фейса все кому ни поподя
(есть другое более гибкое решение, но пока оно не оформлено)
(да ВР уберите нах аджакс он только мешает)
Я конечно далек от мысли... (с)