..email da dmz

Tutto quello che ha a che fare con GNU/Linux, soprattutto in ambito sistemistico.

Moderatore: Federico.Lagni

Rispondi
cheng
n00b
Messaggi: 6
Iscritto il: ven 07 gen , 2005 7:43 pm
Località: Udine
Contatta:

Ciao a tutti,
sto avendo un problemino con le mail:
su un server è installato un applicativo j2ee che dovrebbe mandare delle mail, che ovviamente non arrivano. Ora, nella configurazione è specificato lo stesso server di mail usato negli altri pc (dove si usa outlook :( ).
Solo che.. non arriva nulla, e i log sul firewall non mi aiutano molto (..non c'è scritto nulla da nessuna parte :) ) .. vi posto la configurazione di iptables, anche se non ho ben capito com'è scritta :)

Codice: Seleziona tutto

# Usa iptables
option iptables

# Spazza via tutto
option clearall

# e ricrea le catene daccapo.
option createchains
option automod

# Il router e` collegato all'interfaccia eth2 (scheda ISA).
set extd eth2
set extn 85.32.207.98/28
set exta 85.32.207.98/32

# La rete locale (che comprende l'iSeries) e` su eth0.
set intd eth0
set intn 192.168.0.1/24

# Il web server (xSeries) e` collegato da solo su eth1.
set dmzd eth1
set dmzn (85.32.207.99 85.32.207.100)

set xs1d eth1
set xs1a 85.32.207.99
set xs2d eth1
set xs1a 85.32.207.100

set bcast 255.255.255.255/32
set mcast 224.0.0.0/4
set loop 127.0.0.0/8

# Le policy di default debbono essere paranoiche.

chain INPUT policy DENY;
chain OUTPUT policy DENY;
chain FORWARD policy DENY;

# Supporto: LDROP.

chain LDROP {
        LOG {
                log-level info {
                        proto tcp logprefix "TCP Dropped: ";
                        proto udp logprefix "UDP Dropped: ";
                        proto icmp logprefix "ICMP Dropped: ";
                }
                log-level warn fragment log-prefix "FRAGMENT Dropped: ";
        }
        DROP;
}

chain LACCEPT {
        LOG {
                log-level info {
                        proto tcp logprefix "TCP OK: ";
                        proto udp logprefix "UDP OK: ";
                        proto icmp logprefix "ICMP OK: ";
                }
                log-level warn fragment log-prefix "FRAGMENT OK: ";
        }
        ACCEPT;
}

# INGRESSO
# INGRESSO
# Le anomalie vanno loggate.
chain input {

        # L'interfaccia di loopback fa quel che le pare.
        if lo ACCEPT;
        if !lo saddr %loop goto LDROP;

        # daddr (%extn) proto tcp syn ACCEPT;
        daddr (%extn) state (ESTABLISHED,RELATED) ACCEPT;

        saddr (%dmzn) {
                if %dmzd ACCEPT;
                goto LDROP;
        }

        # La LAN puo` parlarci senza problemi.
        saddr (%intn) {
                if %intd ACCEPT;
                goto LDROP;
        }

        # Chiunque pu\xf2 multicastare.
        saddr %mcast protocol ! tcp ACCEPT;


        interface %extd daddr %exta protocol (tcp udp) {
                saddr %mcast protocol ! tcp ACCEPT;
                dport (ssh 53 110 123 113 443 873 5000:5020 ) ACCEPT;
                dport (1:1023 3000 8080 9673) goto LDROP;
                # dport 1024: ACCEPT;
                dport 113 goto LDROP;
        }
        interface %extd daddr %exta protocol icmp ACCEPT;


        goto LDROP;
}

# FORWARD
# per l'xSeries

chain forward {
        # daddr (%extn %intn %dmzn) proto tcp syn ACCEPT;
        daddr (%extn %intn %dmzn) state (ESTABLISHED,RELATED) ACCEPT;

        interface %extd daddr %dmzn protocol (tcp udp) {
                sport 53 ACCEPT;
                dport (80 443 81 82 500 5900) ACCEPT;
                dport 1:1023 goto LDROP;
                dport (1029 1068 593 3268 3372) goto LDROP;
                #dport 1024: ACCEPT;
        }

# Abilita comunicazione fra le due intranet
        interface (%dmzd) outerface (%intd %extd) ACCEPT;
        interface (%intd) outerface (%extd %dmzd) ACCEPT;
        # interface (%extd) outerface (%intd %dmzd) ACCEPT;

        goto LDROP;
}

# Ricordati del masquerading

#table nat chain PREROUTING {
#}

table nat chain POSTROUTING {
        outerface %extd saddr (%intn) MASQ;
}

# OUTPUT
chain output {

        daddr (%extn) state (ESTABLISHED,RELATED) ACCEPT;

        # Abilita uscita regolare verso intranet e wireless
        of lo ACCEPT;
        of %intd daddr %intn ACCEPT;

        # Abilita uscita verso xSeries
        of %dmzd daddr %dmzn ACCEPT;
        of %dmzd goto LDROP;

        # Abilita uscita verso internet
        of %extd daddr (%intn) goto LDROP;
        of %extd ACCEPT;

        goto LDROP;
}

chain in_tun_secure {

        # Accetta qualsiasi cosa
        ACCEPT;
}

table nat chain postrouting_tun {
        ACCEPT;
}

chain fw_tun_secure {

        # Forwarda qualsiasi cosa
        ACCEPT;
}

chain out_tun_secure {
        ACCEPT;
}
..poi questo è lo script che viene chiamato per settare iptables

Codice: Seleziona tutto

#!/bin/sh

# Maschera IP della rete pubblica alla quale apparteniamo.
network=85.32.207.97/28
# Indirizzo IP dello xSeries nella zona demilitarizzata.
xseries="85.32.207.99 85.32.207.100"
# Interfaccia Ethernet alla quale abbiamo collegato il router ADSL.
ifrouter=eth2
# Interfaccia Ethernet alla quale abbiamo collegato l'xSeries.
ifxseries=eth1

### FINE CONFIGURAZIONE

set -x
FWDIR=/etc/firewall

# ROUTE
ip route del $network dev $ifrouter
ip route del $network dev $ifxseries
for x in $xseries
do
        ip route add $x dev $ifxseries
done
ip route add $network dev $ifrouter

# Proxy ARP
echo 1 > /proc/sys/net/ipv4/conf/eth2/proxy_arp
echo 1 > /proc/sys/net/ipv4/conf/eth1/proxy_arp

ferm --verbose --lines $optfiles $FWDIR/firewall.rules
in ogni caso: a me sembra che dalla dmz non si riesca ad aprire la porta 25.. uff, non so dove sbattere la testa.. colpa della poca esperienza con iptables!

+iptables per tutti!

ah, giò che ci sono un disegnino della rete:

[ROUTER]
|
[FIREWALL_debian]
|
|
|[DMZ]
---SWITCH---SERVERWEB
|[/DMZ]
|
|
---SWITCH---ALTRI PC ATTACCATI ALLA RETE
Cheng
Samba84
Cisco fan
Messaggi: 58
Iscritto il: mar 22 giu , 2004 7:47 pm

a me sembra tutto tranne iptables... potrebbe essere uno di quei front-end che vanno tanto di moda, ma francamente non ci capisco un'H.
Ripulendo le regole del firewall, le mail partono?
"Jesus Christ! Where are my shared folders?" Bill said...
sniffer
Cisco fan
Messaggi: 45
Iscritto il: mer 15 set , 2004 10:26 am
Località: napoli
Contatta:

ma l'applicativo sul server è configurato correttamente? :?
Papà, cosa sono le icone?
- Sono immagini sacre.
- E perché Windows ne ha tante?
- Perché ci vogliono i miracoli per farlo funzionare
Avatar utente
banshee
Cisco enlightened user
Messaggi: 136
Iscritto il: dom 26 set , 2004 3:58 pm
Località: udine

chang cazzo
mostraci un iptables -L :)
there is only a place like 127.0.0.1: www.ilbanshee.net
cheng
n00b
Messaggi: 6
Iscritto il: ven 07 gen , 2005 7:43 pm
Località: Udine
Contatta:

Scusate, purtroppo lavoro lì poche ore a settimana e c torno lunedì.. cmq adesso è diventato l'ultimo dei problemi: ieri sono "esplosi" dei server, per dei motivi sconosciuti, e sono "scomparsi" dei negozi di e-commerce.. altro che mail, mò devono recuperare il lavoro di alcuni mesi!!
.. scusa sniffer, che applicativo dovrebbe essere configurato sul server? lui dovrebbe solo prendere la ròbba che gli arriva sulla 25 e forwardarla al server mail di destinazione (mi pare, in questo caso, mail.cs.interbusiness.it).
Prima che me lo chiediate, ho commentato la riga in inetd che chiamava exim. Appena possibile (se lo sarà :) ) posto un bel iptables -L .. cmq grazie a tutti lo stesso :) !
Cheng
sniffer
Cisco fan
Messaggi: 45
Iscritto il: mer 15 set , 2004 10:26 am
Località: napoli
Contatta:

per configurazione server intendo che siano settati i giusti parametri a cui forwardare, casomai prova da riga di comando se riesci a spedire una mail dal pc in questione :D
Papà, cosa sono le icone?
- Sono immagini sacre.
- E perché Windows ne ha tante?
- Perché ci vogliono i miracoli per farlo funzionare
Rispondi