Postfix i cuda z iptables

Konfiguracja serwerów, usług, itp.
tnight
Posty: 7
Rejestracja: 16 kwietnia 2010, 10:35

Postfix i cuda z iptables

Post autor: tnight »

Witam
Aktualnie na serwerze korzystam z regułek iptables wygenerowanymi za pomocą jakiegoś web-generatora (nie pamiętam jakiego). Od kilku dni próbuję pisać własne reguły, wszystko działa, jedynie postfix nie odbiera, ani nie wysyła poczty. Wspomniana poczta jest wysłana do kolejki, ale nie trafia na konto lokalne (zarówno przy wysyłce jak i odbiorze). Proszę o pomoc

Aktualny:

Kod: Zaznacz cały

#!/bin/sh

#################
# CONFIGURATION #
#################

F="/sbin/iptables"
LOG="ipt#"

#global iface for external network
G_NET_NAME="eth0"
G_NET_IP="192.168.1.9"

#setup of modules and kernel konfig
/sbin/modprobe ip_tables
/sbin/modprobe ip_conntrack
/sbin/modprobe ip_nat_ftp
/sbin/modprobe ip_conntrack_ftp

echo "1" > /proc/sys/net/ipv4/ip_forward

#dynamic address allocation
#echo "1" > /proc/sys/net/ipv4/ip_dynaddr

#ignor ICMP echo request sended to broadcast
echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts

#SYN flood protection
echo "1" > /proc/sys/net/ipv4/tcp_syncookies

#refuse source routed packets
echo "0" > /proc/sys/net/ipv4/conf/all/accept_source_route

echo "1" > /proc/sys/net/ipv4/conf/all/secure_redirects

#source validation by reversed path (RFC1812).
echo "1" > /proc/sys/net/ipv4/conf/all/rp_filter

#log packets from incorrect sources
echo "1" > /proc/sys/net/ipv4/conf/all/log_martians

##################
# INITIALIZATION #
##################

echo "Setup policy for standard chains..."
$F -P INPUT ACCEPT
$F -P FORWARD ACCEPT
$F -P OUTPUT ACCEPT
$F -t nat -P PREROUTING ACCEPT
$F -t nat -P OUTPUT ACCEPT
$F -t nat -P POSTROUTING ACCEPT
$F -t mangle -P PREROUTING ACCEPT
$F -t mangle -P OUTPUT ACCEPT
$F -t mangle -P INPUT ACCEPT
$F -t mangle -P FORWARD ACCEPT
$F -t mangle -P POSTROUTING ACCEPT

echo "Cleaning rules for standard chains..."
$F -F
$F -t nat -F
$F -t mangle -F

echo "Deleting all nonstandard chains..."
$F -X
$F -t nat -X
$F -t mangle -X

if [ "$1" = "stop" ]
then
    echo "Firewall IS OFF !!!"
    exit 0
fi

echo "Setting up policy for standard chains..."
$F -P INPUT DROP
$F -P OUTPUT DROP
$F -P FORWARD DROP

echo "Creating extra chains rules..."
$F -N bledne_pakiety
$F -N bledne_pakiety_tcp
$F -N pakiety_icmp
$F -N tcp_wchodzace
$F -N tcp_wychodzace
$F -N udp_wchodzace
$F -N udp_wychodzace

###############
# bad_packets #
###############
echo "Creating rules for chain bledne_pakiety..."

$F -A bledne_pakiety -p ALL -m state --state INVALID -j LOG --log-prefix "$LOG bledne_pakiety "
$F -A bledne_pakiety -p ALL -m state --state INVALID -j DROP
$F -A bledne_pakiety -p tcp -j bledne_pakiety_tcp
$F -A bledne_pakiety -p ALL -j RETURN

###################
# bad_tcp_packets #
###################
echo "Creating rules for chain bledne_pakiety_tcp..."
#dla gate
$F -A bledne_pakiety_tcp -p tcp -i $L_NET_NAME -j RETURN

$F -A bledne_pakiety_tcp -p tcp ! --syn -m state --state NEW -j LOG --log-prefix "$LOG bledne_pakiety_tcp "
$F -A bledne_pakiety_tcp -p tcp ! --syn -m state --state NEW -j DROP

$F -A bledne_pakiety_tcp -p tcp --tcp-flags ALL NONE -j LOG --log-prefix "$LOG bledne_pakiety_tcp "
$F -A bledne_pakiety_tcp -p tcp --tcp-flags ALL NONE -j DROP

$F -A bledne_pakiety_tcp -p tcp --tcp-flags ALL ALL -j LOG --log-prefix "$LOG bledne_pakiety_tcp "
$F -A bledne_pakiety_tcp -p tcp --tcp-flags ALL ALL -j DROP

$F -A bledne_pakiety_tcp -p tcp --tcp-flags ALL FIN,URG,PSH -j LOG --log-prefix "$LOG bledne_pakiety_tcp "
$F -A bledne_pakiety_tcp -p tcp --tcp-flags ALL FIN,URG,PSH -j DROP

$F -A bledne_pakiety_tcp -p tcp --tcp-flags ALL SYN,RST,ACK,FIN,URG -j LOG --log-prefix "$LOG bledne_pakiety_tcp "
$F -A bledne_pakiety_tcp -p tcp --tcp-flags ALL SYN,RST,ACK,FIN,URG -j DROP

$F -A bledne_pakiety_tcp -p tcp --tcp-flags SYN,RST SYN,RST -j LOG --log-prefix "$LOG bledne_pakiety_tcp "
$F -A bledne_pakiety_tcp -p tcp --tcp-flags SYN,RST SYN,RST -j DROP

$F -A bledne_pakiety_tcp -p tcp --tcp-flags SYN,FIN SYN,FIN -j LOG --log-prefix "$LOG bledne_pakiety_tcp "
$F -A bledne_pakiety_tcp -p tcp --tcp-flags SYN,FIN SYN,FIN -j DROP

$F -A bledne_pakiety_tcp -p tcp -j RETURN

################
# icmp_packets #
################
echo "Creating rules for chain pakiety_icmp..."

$F -A pakiety_icmp --fragment -p ICMP -j LOG --log-prefix "$LOG pakiety_icmp fragmenty "
$F -A pakiety_icmp --fragment -p ICMP -j DROP

#ping and ping logging
# $F -A pakiety_icmp -p ICMP -s 0/0 --icmp-type 8 -j LOG --log-prefix "$LOG pakiety_icmp "
# $F -A pakiety_icmp -p ICMP -s 0/0 --icmp-type 8 -j ACCEPT

#ping - hash out in case of enabling above rules
$F -A pakiety_icmp -p ICMP -s 0/0 --icmp-type 8 -j DROP
#Time Exceeded
$F -A pakiety_icmp -p ICMP -s 0/0 --icmp-type 11 -j ACCEPT

$F -A pakiety_icmp -p ICMP -j RETURN

################
# tcp_incoming #
################
echo "Creating rules for chain tcp_wchodzace..."

#ident request
#reject not drop to avoid connections delay
$F -A tcp_wchodzace -p TCP -s 0/0 --destination-port 113 -j REJECT
#FTP client (data port non-PASV)
#$F -A tcp_wchodzace -p TCP -s 0/0 --source-port 20 -j ACCEPT
#FTP control
#$F -A tcp_wchodzace -p TCP -s 0/0 --destination-port 21 -j ACCEPT
# Passive FTP
#$F -A tcp_wchodzace -p TCP -s 0/0 --destination-port : -j ACCEPT
#ssh
$F -A tcp_wchodzace -p TCP -s 0/0 --destination-port 22 -j ACCEPT
#HTTP
$F -A tcp_wchodzace -p TCP -s 0/0 --destination-port 80 -j ACCEPT
#HTTPS
$F -A tcp_wchodzace -p TCP -s 0/0 --destination-port 443 -j ACCEPT
#SMTP
$F -A tcp_wchodzace -p TCP -s 0/0 --destination-port 25 -j ACCEPT
#POP3
$F -A tcp_wchodzace -p TCP -s 0/0 --destination-port 110 -j ACCEPT
#SSL POP3
#$F -A tcp_wchodzace -p TCP -s 0/0 --destination-port 995 -j ACCEPT
#IMAP4
$F -A tcp_wchodzace -p TCP -s 0/0 --destination-port 143 -j ACCEPT
#SSL IMAP4
#$F -A tcp_wchodzace -p TCP -s 0/0 --destination-port 993 -j ACCEPT
#ICQ File Transfers & Other Advanced Features
#$F -A tcp_wchodzace -p TCP -s 0/0 --destination-port : -j ACCEPT
#MSN Messenger File Transfers
#$F -A tcp_wchodzace -p TCP -s 0/0 --destination-port : -j ACCEPT
#NFS Server - portmapper
#$F -A tcp_wchodzace -p TCP -s 0/0 --destination-port  -j ACCEPT
#NFS Server - statd
#$F -A tcp_wchodzace -p TCP -s 0/0 --destination-port  -j ACCEPT
#NFS Server - NFS daemon
#$F -A tcp_wchodzace -p TCP -s 0/0 --destination-port  -j ACCEPT
#NFS Server - lockd
#$F -A tcp_wchodzace -p TCP -s 0/0 --destination-port  -j ACCEPT
#NFS Server - mountd
#$F -A tcp_wchodzace -p TCP -s 0/0 --destination-port  -j ACCEPT
#NFS Server - quotad
#$F -A tcp_wchodzace -p TCP -s 0/0 --destination-port  -j ACCEPT
#User specified allowed TCP protocol
$F -A tcp_wchodzace -p TCP -s 0/0 --destination-port 26 -j ACCEPT
$F -A tcp_wchodzace -p TCP -s 0/0 --destination-port 3050 -j ACCEPT
$F -A tcp_wchodzace -p TCP -s 0/0 --destination-port 137:139 -j ACCEPT
$F -A tcp_wchodzace -p TCP -s 0/0 --destination-port 9999 -j ACCEPT
$F -A tcp_wchodzace -p TCP -s 0/0 --destination-port 10000 -j ACCEPT




#not matched: return and log
$F -A tcp_wchodzace -p TCP -j RETURN

################
# tcp_outgoing #
################
echo "Creating rules for chain tcp_wychodzace..."

#Blokowanie FTP Data
#$F -A tcp_wychodzace -p TCP -s 0/0 --destination-port 20 -j REJECT
#Blokowanie FTP Control
#$F -A tcp_wychodzace -p TCP -s 0/0 --destination-port 21 -j REJECT
#Blokowanie SSH
#$F -A tcp_wychodzace -p TCP -s 0/0 --destination-port 22 -j REJECT
#Blokowanie Telnet
#$F -A tcp_wychodzace -p TCP -s 0/0 --destination-port 23 -j REJECT
#Blokowanie HTTP
#$F -A tcp_wychodzace -p TCP -s 0/0 --destination-port 80 -j REJECT
#Blokowanie HTTPS
#$F -A tcp_wychodzace -p TCP -s 0/0 --destination-port 443 -j REJECT
#Blokowaie SMTP
#$F -A tcp_wychodzace -p TCP -s 0/0 --destination-port 25 -j REJECT
#Blokowaie POP3
#$F -A tcp_wychodzace -p TCP -s 0/0 --destination-port 110 -j REJECT
#Blokowaie POP3SSL
#$F -A tcp_wychodzace -p TCP -s 0/0 --destination-port 995 -j REJECT
#Blokowaie IMAP4
#$F -A tcp_wychodzace -p TCP -s 0/0 --destination-port 143 -j REJECT
#Blokowaie IMAP4SSL
#$F -A tcp_wychodzace -p TCP -s 0/0 --destination-port 993 -j REJECT
#Blokowanie NEWS
#$F -A tcp_wychodzace -p TCP -s 0/0 --destination-port 119 -j REJECT
#Blokowanie IRC
#$F -A tcp_wychodzace -p TCP -s 0/0 --destination-port : -j REJECT
#Blokowaie AIM
#$F -A tcp_wychodzace -p TCP -s 0/0 --destination-port 5190 -j REJECT
#Blokowaie AIM Images
#$F -A tcp_wychodzace -p TCP -s 0/0 --destination-port 4443 -j REJECT
#Blokowaie MSN Messenger
#$F -A tcp_wychodzace -p TCP -s 0/0 --destination-port 1863 -j REJECT
#Blokowany zakres portow
#$F -A tcp_wychodzace -p TCP -s 0/0 --destination-port  -j REJECT
#blokowanie gg
#$F -A tcp_wychodzace -p TCP -s 0/0 -d 217.17.41.0/24 -j REJECT
#$F -A tcp_wychodzace -p TCP -s 0/0 -d 217.17.33.0/24 -j REJECT

#not matched ACCEPT
$F -A tcp_wychodzace -p TCP -s 0/0 -j ACCEPT

################
# udp_incoming #
################
echo "Creating rules for chain udp_wchodzace..."

#Drop netbios calls
$F -A udp_wchodzace -p UDP -s 0/0 --destination-port 137 -j DROP
$F -A udp_wchodzace -p UDP -s 0/0 --destination-port 138 -j DROP

#ident - reject zamiast drop w celu unikniecia opoznien w polaczeniach
$F -A udp_wchodzace -p UDP -s 0/0 --destination-port 113 -j REJECT

#NTP
#$F -A udp_wchodzace -p UDP -s 0/0 --destination-port 123 -j ACCEPT
#DNS
#$F -A udp_wchodzace -p UDP -s 0/0 --destination-port 53 -j ACCEPT
#zewnetrzny server DHCP
#$F -A udp_wchodzace -p UDP -s 0/0 --source-port 68 --destination-port 67 -j ACCEPT
#NFS Server - portmapper
#$F -A udp_wchodzace -p UDP -s 0/0 --destination-port  -j ACCEPT
#NFS Server - statd
#$F -A udp_wchodzace -p UDP -s 0/0 --destination-port  -j ACCEPT
#NFS Server - NFS daemon
#$F -A udp_wchodzace -p UDP -s 0/0 --destination-port  -j ACCEPT
#NFS Server - lockd
#$F -A udp_wchodzace -p UDP -s 0/0 --destination-port  -j ACCEPT
#NFS Server - mountd
#$F -A udp_wchodzace -p UDP -s 0/0 --destination-port  -j ACCEPT
#NFS Server - quotad
#$F -A udp_wchodzace -p UDP -s 0/0 --destination-port  -j ACCEPT
#dopuszczalny zakres portow udp
$F -A udp_wchodzace -p UDP -s 0/0 --destination-port 26 -j ACCEPT
$F -A udp_wchodzace -p UDP -s 0/0 --destination-port 3050 -j ACCEPT
$F -A udp_wchodzace -p UDP -s 0/0 --destination-port 137:139 -j ACCEPT
$F -A udp_wchodzace -p UDP -s 0/0 --destination-port 9999 -j ACCEPT
$F -A udp_wchodzace -p UDP -s 0/0 --destination-port 10000 -j ACCEPT




#not matched - return and log
$F -A udp_wchodzace -p UDP -j RETURN

################
# udp_outgoing #
################
echo "Creating rules for chain udp_wychodzace..."

#Blokowany zakres portow
#$F -A udp_wychodzace -p UDP -s 0/0 --destination-port  -j REJECT
#blokowanie gg
#$F -A udp_wychodzace -p UDP -s 0/0 -d 217.17.41.0/24 -j REJECT
#$F -A udp_wychodzace -p UDP -s 0/0 -d 217.17.33.0/24 -j REJECT

#not matched ACCEPT
$F -A udp_wychodzace -p UDP -s 0/0 -j ACCEPT

#########
# INPUT #
#########

echo "Creating rules for chain INPUT..."

$F -A INPUT -p ALL -i lo -j ACCEPT
$F -A INPUT -p ALL -j bledne_pakiety

#DOCSIS compliant cable modems
#Drop without logging.
$F -A INPUT -p ALL -d 224.0.0.1 -j DROP

#Ustanowione polaczenia
$F -A INPUT -p ALL -i $G_NET_NAME -m state --state ESTABLISHED,RELATED -j ACCEPT

#reszta do odpowiednich lancuchow
$F -A INPUT -p ICMP -i $G_NET_NAME -j pakiety_icmp
$F -A INPUT -p TCP -i $G_NET_NAME -j tcp_wchodzace
$F -A INPUT -p UDP -i $G_NET_NAME -j udp_wchodzace

#zatrzymanie rozgloszen
$F -A INPUT -p ALL -d 255.255.255.255 -j DROP

#nie pasujace - logowanie
$F -A INPUT -j LOG --log-prefix "$LOG INPUT:99 "

###########
# FORWARD #
###########
#dla gate caly
echo "Creating rules for chain FORWARD..."

#nie pasujace - loguj
$F -A FORWARD -j LOG --log-prefix "$LOG FORWARD:99 "

##########
# OUTPUT #
##########

echo "Creating rules for chain OUTPUT..."

$F -A OUTPUT -m state -p icmp --state INVALID -j DROP
$F -A OUTPUT -p ALL -s 127.0.0.1 -j ACCEPT
$F -A OUTPUT -p ALL -o lo -j ACCEPT

$F -A OUTPUT -p ALL -o $G_NET_NAME -j ACCEPT

#nie pasujace - loguj
$F -A OUTPUT -j LOG --log-prefix "$LOG OUTPUT:99 "

################
# mangle table #
################
echo "Creating rules for mangle table..."


Nowy:

Kod: Zaznacz cały

#!/bin/sh
IPT=/sbin/iptables

echo 1 > /proc/sys/net/ipv4/ip_forward
modprobe ip_conntrack

##  CZYSZCZENIE
$IPT -F
$IPT -X


##  POLITYKA
$IPT -P INPUT DROP
$IPT -P FORWARD DROP
$IPT -P OUTPUT ACCEPT


##  LOOPBACK
$IPT -A INPUT -i lo -j ACCEPT
$IPT -A OUTPUT -o lo -j ACCEPT
$IPT -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT


##  FIREBIRD
$IPT -A INPUT -p tcp --destination-port 3050 -j ACCEPT
$IPT -A INPUT -p udp --destination-port 3050 -j ACCEPT


##  VPN  GLOWNE
$IPT -A INPUT -p udp --destination-port 17003 -j ACCEPT
$IPT -A INPUT -i tun0 -j ACCEPT
$IPT -t nat -A POSTROUTING -j MASQUERADE


##  VPN  FORWARD
$IPT -A FORWARD -s 10.3.0.6/24 -p tcp -j ACCEPT
$IPT -A FORWARD -o tun0 -j ACCEPT
#$IPT -A FORWARD -i tun0 -j ACCEPT


##  TORRENT
$IPT -A INPUT -p tcp --destination-port 7881:7899 -j ACCEPT
$IPT -A INPUT -p tcp --source-port 7881:7899 -j ACCEPT
$IPT -A INPUT -p udp --destination-port 7881:7899 -j ACCEPT
$IPT -A INPUT -p udp --source-port 7881:7899 -j ACCEPT


##  DNS
$IPT -A INPUT -p tcp --source-port 53 -j ACCEPT
$IPT -A INPUT -p udp --source-port 53 -j ACCEPT


##  SSH
$IPT -A INPUT -p tcp --destination-port 22 -j ACCEPT


##  WWW
$IPT -A INPUT -p tcp --destination-port 80 -j ACCEPT
$IPT -A INPUT -p tcp --destination-port 10000 -j ACCEPT


##  SAMBA
$IPT -A INPUT -p tcp --destination-port 137:139 -j ACCEPT
$IPT -A INPUT -p udp --destination-port 137:139 -j ACCEPT
$IPT -A INPUT -p tcp --destination-port 445 -j ACCEPT
$IPT -A INPUT -p udp --destination-port  445 -j ACCEPT


##  POCZTA
$IPT -A INPUT -p tcp -s 0/0  --destination-port 143 -j ACCEPT
$IPT -A INPUT -p tcp -s 0/0 --destination-port 110 -j ACCEPT
$IPT -A INPUT -p tcp -s 0/0 --destination-port 25 -j ACCEPT
$IPT -A OUTPUT -p tcp -s 0/0 --destination-port 25 -j ACCEPT
$IPT -A INPUT -p tcp -s 0/0 --destination-port 26 -j ACCEPT
$IPT -A OUTPUT -p tcp -s 0/0 --destination-port 26 -j ACCEPT

##  LOGGING  
$IPT -A INPUT -m limit --limit 15/minute -j LOG --log-level 7 --log-prefix "FW drop input: "
$IPT -A OUTPUT -m limit --limit 15/minute -j LOG  --log-level 7 --log-prefix "FW drop output: "
[size=84]$IPT -A FORWARD -m limit --limit 15/minute -j LOG  --log-level 7 --log-prefix "FW drop forward: "
Status wiadomości z mail queue (webmin):

Kod: Zaznacz cały

lost connection with 127.0.0.1[127.0.0.1] while receiving  the initial server greeting
Błąd z sysloga:

Kod: Zaznacz cały

 mail.err: Apr 16 11:12:50 serwer amavis[1909]: (01909-02) (!)DENIED ACCESS from IP ipserwera, policy bank
kresus
Posty: 4
Rejestracja: 30 listopada 2009, 15:12

Re:Postfix i cuda z iptables

Post autor: kresus »

Jak ustawiłeś domyślną politykę łańcucha OUTPUT na ACCEPT to nie pisz reguł (ACCEPT) już dla niej

Kod: Zaznacz cały

$IPT -A OUTPUT -p tcp -s 0/0 --destination-port 25 -j ACCEPT
Osobiście zawsze ustawiam całościowo politykę na DROP i po kolei ustawiam każdą regułę dla danego łańcucha, np:

Kod: Zaznacz cały

/sbin/iptables -A OUTPUT -p tcp --dport 25 --syn -m state --state NEW -j ACCEPT
Port smtp jest ustawiony na? Domyślam sie ze 25, a 26 po co zostawiasz otwarty?
Jezeli ustawiles akceptacje na flagi ESTABLISHED,RELATED:

Kod: Zaznacz cały

$IPT -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
to wypadałoby filtrować pakiety tylko "nowe" czyli dodajesz do reguły

Kod: Zaznacz cały

--syn -m state --state NEW
i rowniez nie ma sensu dodawanie opcji

Kod: Zaznacz cały

-s 0/0
Napisz te reguły od nowa i zobacz czy wtedy będzie działać.

Pozdrawiam
tnight
Posty: 7
Rejestracja: 16 kwietnia 2010, 10:35

Post autor: tnight »

Zapuściłem z konsoli serwera

Kod: Zaznacz cały

telnet 127.0.0.1 [U]10024[/U]
Aktualne reguły:

Kod: Zaznacz cały

serwer:~# telnet 127.0.0.1 10024
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.
220 [127.0.0.1] ESMTP amavisd-new service ready
log Amavisa:

Kod: Zaznacz cały

Apr 16 14:41:30.147 localhost /usr/sbin/amavisd-new[10319]: (10319-02) lookup_ip_acl (inet_acl): key="[B]127.0.0.1[/B]" matches "127.0.0.1", result=1
...czyli dobrze.


Nowe reguły:

Kod: Zaznacz cały

serwer:~# telnet 127.0.0.1 10024
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.
Connection closed by foreign host.
log Amavis:

Kod: Zaznacz cały

Apr 16 14:41:30.147 localhost /usr/sbin/amavisd-new[10319]: (10319-02) lookup_ip_acl (inet_acl): key="[B]192.168.1.11[/B]" matches "127.0.0.1", result=1
No i mamy problem.

Problem polega na tym, że nowy skrypt regułek zamienia ip, które widzi amavis z loopbacka na ip ustawione dla interfejsu eth0 (192.168.1.11).
Regułki i tak przepiszę, jednak prosiłbym o jakieś panaceum dla wspomnianego zjawiska.
kresus
Posty: 4
Rejestracja: 30 listopada 2009, 15:12

Post autor: kresus »

Dodaj do tablicy inet_acl dodatkowy adres lokalny w amavisd.conf:

Kod: Zaznacz cały

@inet_acl = qw( 127.0.0.1 192.168.1.11);
Pozdrawiam
Awatar użytkownika
grzesiek
Junior Member
Posty: 932
Rejestracja: 06 stycznia 2008, 10:41
Lokalizacja: Białystok

Post autor: grzesiek »

Gdzie Ci te reguły zmieniają adres źródłowy? W tym nowym nic takiego nie zauważyłem.
A co do:

Kod: Zaznacz cały

--syn -m state --state NEW
opcja --syn nie ma nic do modułu state, to opcja modułu tcp.
tnight
Posty: 7
Rejestracja: 16 kwietnia 2010, 10:35

Post autor: tnight »

Gdzie Ci te reguły zmieniają adres źródłowy? W tym nowym nic takiego nie zauważyłem.
Stare reguły zmieniały adres z tego przypisanego do eth0 na 127.0.0.1 -> no i było dobrze.
Teraz musiałbym to wyczarować w nowym zestawie reguł, właśnie w tym tkwi cały diabeł.

Kod: Zaznacz cały

@inet_acl = qw( 127.0.0.1 192.168.1.11);
Jako, że nie widziałem pliku amavisd.conf dopisałem wspomniany wyżej wpis do /etc/amavis/conf.d/50-user...
Rzeczywiście przyniosło to jakąś poprawę sytuacji, jednak przy próbie wysłania maila w logu pojawia się, że nadawca został odrzucony, potem kolejna linijka z końcówką:

Kod: Zaznacz cały

NASTED MAIL COMMAND.
(dokładny log zaprezentuję po weekendzie, w chwili obecnej nie mam dostępu do serwera).

W sumie rzeczywiście można by przekopać cały konfig amavisa, jednak wydaje mi się, że rozwiązanie z iptables jest bardziej ,,czyste'', niemniej jednak prosiłbym o jakiekolwiek obejście tematu.
Dziękuję za poświęcony czas.
Pozdrawiam.
tnight
Posty: 7
Rejestracja: 16 kwietnia 2010, 10:35

Post autor: tnight »

Pełna zawartość loga z błędami amavis'a pod dodaniu @inet_acl

Kod: Zaznacz cały

amavis[5112]: (05112-01) (!)SMTP: 500 5.5.2 Error: bad syntax; PENALIZE: \377\364\377\375\006quit\r\n
Apr 16 11:46:09 serwer amavis[5113]: (05113-01) (!)FWD via SMTP: <mój-mail-relay> -> <mail-odbiorcy>,BODY=7BIT 554 5.7.1 Failed, id=05113-01, from MTA([127.0.0.1]:10025): 554 5.7.1 <adres-odbiorcy>: Recipient address rejected: Access denied
Apr 16 11:46:09 serwer amavis[5113]: (05113-01) (!)SEND via SMTP: <> -> <mój-mail-relay>,ENVID=AM..20100416T094609Z@localhost 503 5.5.1 Failed, id=05113-01, from MTA([127.0.0.1]:10025): 503 5.5.1 Error: nested MAIL command
Apr 16 11:46:09 serwer amavis[5113]: (05113-01) (!)NOTICE: UNABLE TO SEND DSN to <mój-mail-relay>: 503 5.5.1 Failed, id=05113-01, from MTA([127.0.0.1]:10025): 503 5.5.1 Error: nested MAIL command
W dalszym ciągu proszę o pomoc.
ODPOWIEDZ