The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]




Версия для распечатки Пред. тема | След. тема
Новые ответы [ Отслеживать ]
пересылка спама!!!, !*! melnik, 29-Янв-07, 12:28  [смотреть все]
  • пересылка спама!!!, !*! halt, 15:54 , 29-Янв-07 (1)
  • пересылка спама!!!, !*! mavas, 17:00 , 29-Янв-07 (2)
    >помогите определить где ошибка, провавйдер говорит что через меня пересылается спам!!!
    >почтовый сервер на серваке не установлен, почту клиенты получают с удалённого сервера,
    >как прописать что бы почту могли отправлять и получать только определёные
    >IP
    >
    >это мой файл маскарад
    >#!/bin/bash
    >
    >IPTABLES='/sbin/iptables'
    >
    >EXTIF='eth0'
    >INTIF_1='eth1'
    >INTIF_2='eth2'
    >INTIF_3='eth3'
    >#Форвардинг в ядре
    >echo 1 > /proc/sys/net/ipv4/ip_forward
    >
    >#Сброс и удаление всех цепочек
    >$IPTABLES -F
    >$IPTABLES -X
    >$IPTABLES -t nat -F
    >$IPTABLES -t nat -X
    >
    >#Маскарадинг
    >$IPTABLES -t nat -A POSTROUTING -o $EXTIF -j MASQUERADE
    >
    >#форвардинг
    >$IPTABLES -A FORWARD -i $INTIF_1 -o $EXTIF -m state --state NEW,ESTABLISHED -j
    >ACCEPT
    >$IPTABLES -A FORWARD -i $INTIF_2 -o $EXTIF -m state --state NEW,ESTABLISHED -j
    >ACCEPT
    >$IPTABLES -A FORWARD -i $INTIF_3 -o $EXTIF -m state --state NEW,ESTABLISHED -j
    >ACCEPT
    >
    >#Пускаем на SSH с наружи
    >$IPTABLES -A INPUT --protocol tcp --dport 22 -j ACCEPT
    >
    >
    >
    >#$IPTABLES -A INPUT --protocol tcp --dport 1433 -j ACCEPT
    >
    >$IPTABLES -A INPUT -i $INTIF_2 --protocol tcp --dport 20 -j ACCEPT
    >$IPTABLES -A OUTPUT -o $INTIF_2 --protocol tcp --dport 20 -j ACCEPT
    >$IPTABLES -A INPUT -i $INTIF_2 --protocol tcp --dport 21 -j ACCEPT
    >$IPTABLES -A OUTPUT -o $INTIF_2 --protocol tcp --dport 21 -j ACCEPT
    >
    >$IPTABLES -A INPUT -i $INTIF_3 --protocol tcp --dport 20 -j ACCEPT
    >$IPTABLES -A OUTPUT -o $INTIF_3 --protocol tcp --dport 20 -j ACCEPT
    >$IPTABLES -A INPUT -i $INTIF_3 --protocol tcp --dport 21 -j ACCEPT
    >$IPTABLES -A OUTPUT -o $INTIF_3 --protocol tcp --dport 21 -j ACCEPT
    >#проброс порта сквида
    >$IPTABLES -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port
    >3128
    >$IPTABLES -t nat -A PREROUTING -p tcp --dport 8080 -j REDIRECT --to-port
    >3128
    >$IPTABLES -t nat -A PREROUTING -p tcp --dport 443 -j REDIRECT --to-port
    >3128
    >$IPTABLES -t nat -A PREROUTING -p tcp --dport 8081 -j REDIRECT --to-port
    >3128
    >
    >#Все остальное убиваем
    >$IPTABLES -A INPUT -i $EXTIF -m state --state NEW,INVALID -j DROP
    >$IPTABLES -A FORWARD -i $EXTIF -m state --state NEW,INVALID -j DROP

    Вот так примерно

    $IPTABLES -A FORWARD -p TCP -i $INTIF -o $EXTIF -s $INT_IP --dport 25 -j DROP

    Эта цепочка убъет все пакеты идущие через твою машину с интерфейса $INTIF на $EXTIF от адреса $INT_IP на порт 25, то есть это запрещение конкретных адресов

    Если хочешь разрешить комуто, а остальных отрубить, то тогда тебе надо
    $IPTABLES -A FORWARD -p TCP -i $INTIF -o $EXTIF -s $INT_IP --dport 25 -j ACCEPT
    $IPTABLES -A FORWARD -p TCP -i $INTIF -o $EXTIF --dport 25 -j DROP
    тут важна последовательность, сначала разрешил, а потом запретил, правила применятся по порядку, что выше то имеет больший вес.
    Тут соттветственно INT_IP пройдет, а все остальное DROP

    25 порт это отправка почты, если чтоб и не получали тоды надо 110 еще рубить.

    • пересылка спама!!!, !*! melnik, 17:12 , 29-Янв-07 (3)
      • пересылка спама!!!, !*! mavas, 17:25 , 29-Янв-07 (4)
        >тоесть если я пропишу так
        >$IPTABLES -A FORWARD -p TCP -i $INTIF -o $EXTIF -s $INT_IP --dport
        >25 -j ACCEPT
        >$IPTABLES -A FORWARD -p TCP -i $INTIF -o $EXTIF --dport 25 -j
        >DROP
        >
        >как я понимаю только определённый машины смогут отправлять почту
        >а как приписать айпи кто может отправлять почту???

        в начале пишешь
        EXTIF="192.168.0.1/24"

        или если понятней

        EXTIF="192.168.0.1/255.255.255.0"

        либо можно прям в цепочке
        >$IPTABLES -A FORWARD -p TCP -i $INTIF -o $EXTIF -s 192.168.0.1/24 --dport
        >25 -j ACCEPT

        • пересылка спама!!!, !*! melnik, 22:06 , 29-Янв-07 (5)
          • пересылка спама!!!, !*! Oyyo, 22:55 , 29-Янв-07 (6)
          • пересылка спама!!!, !*! mavas, 06:16 , 30-Янв-07 (7)
            >>>тоесть если я пропишу так
            >>>$IPTABLES -A FORWARD -p TCP -i $INTIF -o $EXTIF -s $INT_IP --dport
            >>>25 -j ACCEPT
            >>>$IPTABLES -A FORWARD -p TCP -i $INTIF -o $EXTIF --dport 25 -j
            >>>DROP
            >>>
            >>>как я понимаю только определённый машины смогут отправлять почту
            >>>а как приписать айпи кто может отправлять почту???
            >>
            >>в начале пишешь
            >>EXTIF="192.168.0.1/24"
            >>
            >>или если понятней
            >>
            >>EXTIF="192.168.0.1/255.255.255.0"
            >>
            >>либо можно прям в цепочке
            >>>$IPTABLES -A FORWARD -p TCP -i $INTIF -o $EXTIF -s 192.168.0.1/24 --dport
            >>>25 -j ACCEPT
            >
            >
            >чо то  не одно из этих правил непомогает!!!

            А ты такие цепочки для всех своих внутренних подсетей прописал ?
            У тебя 3 подсети внутренние, я же тебе пример написал.
            Чтоб работало надо написать,ля всех
            INTIF_1='eth1'
            INTIF_2='eth2'
            INTIF_3='eth3'

            Потом к примеру надо пускать
            #С первой подсети
            INT_1_IP_1="192.168.0.10"
            INT_1_IP_2="192.168.0.11"

            #Со второй
            INT_2_IP_1="192.168.1.30"

            #С третьй

            INT_3_IP_1="192.168.2.50"

            #А потом для каждого
            # Для первой подсети 2 адреса разрешили

            $IPTABLES -A FORWARD -p TCP -i $INTIF_1 -o $EXTIF -s $INT_1_IP_1 --dport 25 -j ACCEPT
            $IPTABLES -A FORWARD -p TCP -i $INTIF_1 -o $EXTIF -s $INT_1_IP_2 --dport 25 -j ACCEPT

            #Остальное для первой убили
            $IPTABLES -A FORWARD -p TCP -i $INTIF_1 -o $EXTIF --dport 25 -j DROP

            # Для второй
            $IPTABLES -A FORWARD -p TCP -i $INTIF_2 -o $EXTIF -s $INT_2_IP_1 --dport 25 -j ACCEPT
            $IPTABLES -A FORWARD -p TCP -i $INTIF_2 -o $EXTIF --dport 25 -j DROP

            #Для третьей
            $IPTABLES -A FORWARD -p TCP -i $INTIF_3 -o $EXTIF -s $INT_3_IP_1 --dport 25 -j ACCEPT
            $IPTABLES -A FORWARD -p TCP -i $INTIF_3 -o $EXTIF --dport 25 -j DROP

            Вот так должно заработать
            Вообще есть чудо статья по iptables https://www.opennet.ru/docs/RUS/iptables/




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру