Torna indietro   Hardware Upgrade Forum > Software > Linux, Unix, OS alternativi

Prova GeForce NOW upgrade Blackwell: il cloud gaming cambia per sempre
Prova GeForce NOW upgrade Blackwell: il cloud gaming cambia per sempre
L'abbonamento Ultimate di GeForce NOW ora comprende la nuova architettura Blackwell RTX con GPU RTX 5080 che garantisce prestazioni tre volte superiori alla precedente generazione. Non si tratta solo di velocità, ma di un'esperienza di gioco migliorata con nuove tecnologie di streaming e un catalogo giochi raddoppiato grazie alla funzione Install-to-Play
Ecovacs Deebot X11 Omnicyclone: niente più sacchetto per lo sporco
Ecovacs Deebot X11 Omnicyclone: niente più sacchetto per lo sporco
Deebot X11 Omnicyclone implementa tutte le ultime tecnologie Ecovacs per l'aspirazione dei pavimenti di casa e il loro lavaggio, con una novità: nella base di ricarica non c'è più il sacchetto di raccolta dello sporco, sostituito da un aspirapolvere ciclonico che accumula tutto in un contenitore rigido
Narwal Flow: con il mocio orizzontale lava i pavimenti al meglio
Narwal Flow: con il mocio orizzontale lava i pavimenti al meglio
Grazie ad un mocio rotante che viene costantemente bagnato e pulito, Narwal Flow assicura un completo e capillare lavaggio dei pavimenti di casa. La logica di intellignza artificiale integrata guida nella pulizia tra i diversi locali, sfruttando un motore di aspirazione molto potente e un sistema basculante per la spazzola molto efficace sui tappeti di casa
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 17-03-2006, 13:02   #1
Bautzen
Member
 
Iscritto dal: Dec 2001
Città: Germania/Italia
Messaggi: 117
Firewall IPTABLES e Dnat

Salve ragazzi, premetto che sono un novellino del mondo Linux/unix ma mi appasiona davvero molto. Io ho un problema tosto. La mia rete in questione è così configurata (a grandi linee):

- Internet: ADSL Alice Flat PPPoA (Ip Dinamico)
- Router Alcatel SpeedTouch Pro (NAT-PAT attivata) WAN xxx.xxx.xxx.xxx LAN 192.168.254.254 e tutto il traffico è indirizzato verso un Linux BOX con RH 8.0 e iptables come firewall
- Linux (firewall) con 2 Schede di rete: (1) al router con ip 192.168.254.253 ed (1) direttamente collegata ad un Windows 2000 Server con cavo cross, quindi 192.168.0.249
- Windows 2000 Server con: Exchange 2000, ISA 2000, FAX server, DNS, WINS, DHCP etc etc etc con 2 schede di rete: (1) 192.168.0.250 dal Linux BOX ed (1) 10.1.0.6 verso lo switch con i client ed è un PDC.

Il motivo principale per cui ho optato per questa soluzione è una sorta di mia semplicità mentale nel senso che trovo più facile ed immediato dire agli utenti dove possono andare e chi può andare semplicemente creando delle regolette sull'ISA 2000 avendo preparato il Linux BOX a far transitare quello o l'altro pacchetto verso una od un altra destinazione. Comunque al di là di questo io mi trovo un pò incasinato con il DNAT su Linux, dopo essermi iscritto ad un DDNS, ho pubblicato l'OWA di Exchange su Internet sulla porta 8082. Quindi semplicemente l'utente da qualsiasi parte può sulla barra degli indirizzi internet digitare http://pippo.DDNS.net:8082/exchange/nomeutente a quel punto viene chiesto di autentificarsi con nome utente e password del dominio ed il gioco è fatto. Tuttavia io vorrei fare un passo oltre cioè togliere la specifica della porta (che in alcuni casi è bloccata da alcuni firewall) quindi vorrei che l'utente possa digitare : http://pippo.DDNS.net/exchange/nomeutente. Siccome il mio script del firewall me lo sono scritto da solo leggendo di tutto e di + prendendo spunti di qua e spunti di là, insomma da autodidatta, lui poverino funziona anche bene e ormai ho una certa dimestichezza nell'aprire e chiudere porte etc. Io per permettere l'OWA avevo fatto una DNAT "dritta" cioè gli ho specificato nella tabella di NAT nel PREROUTING che tutto il traffico proveniente dall'esterno (eth1) con destinazione 8082 me lo gira al server 2000 all'indirizzo 192.168.0.250 sempre sulla porta 8082. Poi ho aggiunto la regolina sulla tabella di FORWARD permettendo il transito dei pacchetti sul TCP 8082 e così l'OWA in qualche istante è stato pubblicato. Ora però volendo fare un passo avanti, io ho pensato (magari stupidamente) di modificare la regola dicendo che tutto il traffico proveniente da internet sulla porta 80 me lo giri sempre sul server 2000 sulla porta 8082. Ho aggiunto al FORWARD di accetare anche chiamata sulla porta 80. Risultato???? Niente non va così. Cioè dall'esterno inserisco il mio indirizzo http://pippo.DDNS.net/exchange/nomeutente, mi chiedere nome utente e password e poi dopo qualche istante mi restituisce che è impossibile visualizzare la pagina. Da quello che mi sembra di intuire ci deve essere un qualche impedimento nel momento in cui il pacchetto ritorna indietro da server 2000, quasi che la richiesta entri da internet dalla porta 80, poi viene girata sulla porta 8082 a questo punto il server 2000 elabora il pacchetto e lo restituisce naturalmente sulla porta 8082 e però o si ferma nel FORWARDING oppure esce sempre sulla 8082 ma la richiesta dell'utente si aspetta un pacchetto in risposta sulla porta 80. L'unico modo che ho avuto per farlo funzionare è stato quello di lasciare entrambe le regole nel POSTROUTING (quella diritta che dal 8082 va alla 8082 e quella che da 80 va al 8082). In questo modo l'utente scrive l'indirizzo http://pippo.DDNS.net/exchange/nomeutente e dopo la verifica di nome utente e password l'indirizzo muta in http://pippo.DDNS.net:8082/exchange/nomeutente e tutto funziona. Il problema è che in certi posti la porta 8082 è bloccata e quindi dopo la verifica della password mi restituisce un errore di pagina non raggiungibile. RAGAZZI AIUTOOOOOO
Vi copia il mio script del firewall e quindi potete magari capire dove sbaglio, se è da buttare via in toto o.... boh quello che pensate. AIUTOOOOOO!!!!

#!/bin/sh
iptables="/sbin/iptables"
route del -net 192.168.0.0/24 dev eth0
route del -net 192.168.254.0/24 dev eth1
route add -host 192.168.0.250 dev eth0
route add -host 192.168.254.254 dev eth1
route add -host 192.168.0.249 dev eth0
modprobe ipt_LOG
modprobe ip_conntrack
modprobe ip_conntrack_ftp
modprobe ipt_MASQUERADE
modprobe ip_nat_ftp
modprobe ipt_multiport
# blocco i ping verso il firewall
echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all
echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts
# attivo la protezione contro gli attacchi Spoofing
echo 1 > /proc/sys/net/ipv4/icmp_ignore_bogus_error_responses
echo 1 > /proc/sys/net/ipv4/tcp_syncookies
echo 1 > /proc/sys/net/ipv4/conf/all/rp_filter
# configuro la policy di default della tabella filter
iptables -t filter -P INPUT DROP
iptables -t filter -P FORWARD DROP
iptables -t filter -P OUTPUT DROP
# configuro la policy di default della tabella nat
iptables -t nat -P PREROUTING ACCEPT
iptables -t nat -P POSTROUTING ACCEPT
iptables -t nat -P OUTPUT ACCEPT
# definisco la politica di default della tabella mangle
iptables -t mangle -P PREROUTING ACCEPT
iptables -t mangle -P OUTPUT ACCEPT
# scarto subito i pacchetti malformati
iptables -A INPUT -m unclean -j DROP
# consento pero' che il firewall possa essere raggiunto con connesioni webmin
# provenienti dal server 2K dalla sua scheda di rete esterna
iptables -A INPUT -p tcp -s 192.168.0.250 --dport 10000 -j ACCEPT
# consento anche naturalmente che possa essere raggiunto da connessioni SSH
# dall'interno della rete e quindi dalla sk esterna del win2k
iptables -t filter -A INPUT -m limit --limit 10/min -p tcp -s 192.168.0.250 --syn --dport ssh -j ACCEPT
# consento il traffico loopack
iptables -A INPUT -i lo -j ACCEPT
# ora comincio a creare le regole vere e proprie per il firewall:
# in primo luogo desidero tutto sommato che anche questo firewall
# possa accedere a internet, controllare la posta con SMTP e POP3
# scaricare da siti ftp.....
#
# accetto tutte le connessioni correlate alla mia
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
# abilito le richieste DNS per i protocolli tcp e udp al DNS di turno
# potrei anche specificare gli indirizzi IP statici degli stessi cioè
# 212.216.112.222 per il primario e 212.216.172.162 per il secondario
iptables -t filter -A OUTPUT -p tcp --dport 53 -j ACCEPT
iptables -t filter -A OUTPUT -p udp --dport 53 -j ACCEPT
# abilito ora la navigazione web, il traffico sicuro https e l'update
# del client di no-ip.com che usa la porta 8245 e la 10000 per le connessioni con
# webmin
iptables -t filter -A OUTPUT -p tcp -m multiport --dports 80,443,8245,10000 -j ACCEPT
# abilito le richieste di ftp per i siti ftp
iptables -t filter -A OUTPUT -p tcp --dport 21 -j ACCEPT
#iptables -t filter -A OUTPUT -p udp --dport 21 -j ACCEPT
# abilito i download da siti ftp
iptables -t filter -A OUTPUT -p tcp --dport 22 -j ACCEPT
#iptables -t filter -A OUTPUT -p udp --dport 22 -j ACCEPT
# abilito le connessioni SMPT e POP3
iptables -t filter -A OUTPUT -p tcp --dport 25 -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 110 -j ACCEPT
# attivo le connesioni SSH (Secure Shell) verso l'esterno
iptables -t filter -A OUTPUT -p tcp --syn --dport 22 -m state --state NEW -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 22 -j ACCEPT
iptables -t filter -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
# Accetto che il firewall possa essere raggiunto attraverso connesioni SSH dall'esterno (NO)
# iptables -t filter -A INPUT -m limit --limit 10/min -p tcp --syn --dport ssh -j ACCEPT
# questa riga permette che il server possa essere pingato ma all'inizio l'ho negato
# quindi questa riga non c'entra
# iptables -t filter -A INPUT -p icmp ! --icmp-type 8 -j ACCEPT
# aggiungo questa regola nel caso subentrino problemi nella politica di default
iptables -A INPUT -j DROP
#
# ora passo a configurare il bridge tra le due reti
# cioe' il filtraggio e poi il nat tra eth0 (la rete interna) e eth1
# (la rete internet attraverso router ADSL)
#
iptables -N laninet
iptables -N inetlan
iptables -A FORWARD -i eth0 -o eth1 -j laninet
iptables -A FORWARD -i eth1 -o eth0 -j inetlan
# ora che ho creato le due catene di traffico e le ho appese alla
# catena FORWARD della tabella di filter, passo a definire i target
# che desidero applicare al traffico
#
# droppa tutto quello che non proviene dalla rete interna
iptables -A laninet -s ! 192.168.0.0/24 -j DROP
# permetto il passaggio delle richieste di interrogazione per il DNS
# sia per i protocolli tcp che udp
iptables -A laninet -p tcp -d 212.216.112.222 --dport 53 -j ACCEPT
iptables -A laninet -p udp -d 212.216.112.222 --dport 53 -j ACCEPT
iptables -A laninet -p tcp -d 212.216.172.162 --dport 53 -j ACCEPT
iptables -A laninet -p udp -d 212.216.172.162 --dport 53 -j ACCEPT
# abilito il traffico web ed https
iptables -A laninet -p tcp -m multiport --dports 80,443 -j ACCEPT
# abilito il traffico ftp, SSH e telnet in uscita
iptables -A laninet -p tcp --dport 21 -j ACCEPT
iptables -A laninet -p udp --dport 21 -j ACCEPT
iptables -A laninet -p tcp --dport 22 -j ACCEPT
iptables -A laninet -p tcp --dport 23 -j ACCEPT
# abilito le richieste di SMTP e POP3 per i miei specifici indirizzi
# e-mail
iptables -A laninet -p tcp -d pop3.freenet.de --dport 110 -j ACCEPT
iptables -A laninet -p tcp -d mx.freenet.de --dport 110 -j ACCEPT
iptables -A laninet -p tcp -d mail.interfree.it --dport 110 -j ACCEPT
iptables -A laninet -p tcp -d 195.130.225.172 --dport 110 -j ACCEPT
iptables -A laninet -p tcp -d 212.216.176.129 --dport 110 -j ACCEPT
iptables -A laninet -p tcp -d 62.211.72.30 --dport 110 -j ACCEPT
iptables -A laninet -p tcp -d 62.211.72.20 --dport 25 -j ACCEPT
iptables -A laninet -p tcp -d 217.169.102.100 --dport 25 -j ACCEPT
# abilitiamo la chat di MSN,C6,ICQ e le richieste VNC in uscita
iptables -A laninet -p tcp --dport 1863 -j ACCEPT
iptables -A laninet -p tcp --dport 4800 -j ACCEPT
iptables -A laninet -p tcp --dport 5190 -j ACCEPT
iptables -A laninet -p tcp --dport 5900 -j ACCEPT
# abilito lo streaming radio di Radio Sherwood permettendo
# il traffico diretto al'IP e alla porta del loro web link
iptables -A laninet -p tcp -d 62.101.68.187 --dport 8000 -j ACCEPT
# abilito lo streaming al'IP e alla porta 8000 di Gamma5
iptables -A laninet -p tcp -d 82.50.211.234 --dport 8000 -j ACCEPT
# abilito il gioco on-line di yahoo! Games che usa la TCP 11999
iptables -A laninet -p tcp --dport 11999 -j ACCEPT
# permetto le connessioni in corso
iptables -A laninet -p tcp -m state --state ESTABLISHED,RELATED -j ACCEPT
# permetto le connessioni in corso anche per le VPN sul protocollo GRE (47)
iptables -A laninet -p 47 -m state --state ESTABLISHED,RELATED -j ACCEPT
# risolvo i problemi di timeout di risposta dei server
iptables -A laninet -p tcp -j REJECT --reject-with tcp-reset
#
# ora passo alla catena in transito da internet verso la lan
#
# droppa tutto quello che ha come indirizzo sorgente la mia lan
iptables -A inetlan -s 192.168.0.0/24 -j DROP
# passo a definire le regole per la VPN dall'esterno:
# permetto il transito del protocollo 47 (GRE) verso il Server Windows 2k
# sulla interfaccia verso Linux (segue la regola di NAT in fondo)
iptables -A inetlan -p 47 -d 192.168.0.250 -j ACCEPT
# permetto il transito del protocollo TCP 1723 sempre verso il Server windows
# sulla interfaccia esterna (segue la regola di NAT in fondo)
iptables -A inetlan -p tcp -d 192.168.0.250 --dport 1723 -j ACCEPT
# permetto il transito del protocollo TCP 5900 per il VNC in entrata sempre
# verso la interfaccia esterna del server (segue la regola di NAT in fondo)
iptables -A inetlan -p tcp -d 192.168.0.250 --dport 5900 -j ACCEPT
# permetto il transito del protocollo TCP 8082 per OWA di Exchange in entrata
# sempre verso la interfaccia esterna del server (segue la regola di NAT)
iptables -A inetlan -p tcp -d 192.168.0.250 --dport 8082 -j ACCEPT
iptables -A inetlan -p tcp -d 192.168.0.250 --dport 80 -j ACCEPT
# le solite due regole fondamentali
# cioè quelle di far transitare solo i pacchetti in risposta a delle mie
# richieste provenienti dall'interno, così da evitare che qualcuno
# o qualcosa dall'esterno ne crei delle nuove per poter penetrare
#
iptables -A inetlan -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A inetlan -p tcp -j REJECT --reject-with tcp-reset
#
#
# ora e'il caso di far partire il FORWARD tra le schede di rete
echo 1 > /proc/sys/net/ipv4/ip_forward
#
# la cosa piu' importante ora e' far partire il mascheramneto altrimenti
# non funzionera' nulla di tutto quello fatto
# quindi:
iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE
# adesso nella tabella di nat appendo alla catena di PREROUTING l'instradamento
# vero e prorpio
iptables -t nat -A PREROUTING -p tcp -i eth1 --dport 1723 -j DNAT --to 192.168.0.250:1723
iptables -t nat -A PREROUTING -p 47 -i eth1 -j DNAT --to 192.168.0.250
iptables -t nat -A PREROUTING -p tcp -i eth1 --dport 5900 -j DNAT --to 192.168.0.250:5900
#regola che funziona
iptables -t nat -A PREROUTING -p tcp -i eth1 --dport 8082 -j DNAT --to 192.168.0.250:8082
# REGOLA CHE NON FUNZIONA
iptables -t nat -A PREROUTING -p-tcp -i eth1 --dport 80 -j DNAT --to 192.168.0.250:8082


RAGA ho prvato anche il REDIRECT ma nulla, poi ho specificato sul POSTROUTING che tutto il traffico proveniente dal SERVER dalla porta 8082 e destinato alla 8082 me lo mascheri con la porta 80 (per disperazione!!!). Non so davvero dove sbaglio ed ormai la mia mente comincia a schiatarsi. Spero qualcuno possa aiutarmi in questo senso. NATURALMENTE sono a conoscenza che esistono ditribuzioni migliori, firewall basati su linux avvianti da floppy o CD, oppure firewall fisici, so anche dovrei buttare via tutto Windows 2000 server etc etc etc etc. SONO pienamente cosciente che esitono alternative migliori, di qualità ed accetto volentieri ogni suggerimento in merito ..... ma il mio scopo adesso è capire come far funzionare questa dannata regola se non altro per imparare una cosa in più.

GRAZIE A TUTTI VOI
Bautzen è offline   Rispondi citando il messaggio o parte di esso
Old 17-03-2006, 13:39   #2
ilsensine
Senior Member
 
L'Avatar di ilsensine
 
Iscritto dal: Apr 2000
Città: Roma
Messaggi: 15625
Intanto che mi riprendo dal malditesta per aver cercato di capire tutto quello che hai scritto, noto inizialmente che questa regola
iptables -A inetlan -p tcp -d 192.168.0.250 --dport 80 -j ACCEPT
è superflua in quanto la dnat della porta 80 deve impedire che accada.
A parte questo, ti consiglio di togliere tutte le regole tranne quelle che hanno a che vedere con la porta 80->8082, e utilizzare degli opportuni target LOG per capire dove è l'inghippo.
Altra prova che potresti fare, giusto per scrupolo, è aggiungere un MASQUERADE in POSTROUTING se il target è 192.168.0.250 e la porta 8082. Hai visto mai...
__________________
0: or %edi, %ecx; adc %eax, (%edx); popf; je 0b-22; pop %ebx; fadds 0x56(%ecx); lds 0x56(%ebx), %esp; mov %al, %al
andeqs pc, r1, #147456; blpl 0xff8dd280; ldrgtb r4, [r6, #-472]; addgt r5, r8, r3, ror #12
ilsensine è offline   Rispondi citando il messaggio o parte di esso
Old 17-03-2006, 13:51   #3
ilsensine
Senior Member
 
L'Avatar di ilsensine
 
Iscritto dal: Apr 2000
Città: Roma
Messaggi: 15625
Quote:
Da quello che mi sembra di intuire ci deve essere un qualche impedimento nel momento in cui il pacchetto ritorna indietro da server 2000, quasi che la richiesta entri da internet dalla porta 80, poi viene girata sulla porta 8082 a questo punto il server 2000 elabora il pacchetto e lo restituisce naturalmente sulla porta 8082 e però o si ferma nel FORWARDING oppure esce sempre sulla 8082 ma la richiesta dell'utente si aspetta un pacchetto in risposta sulla porta 80
La DNAT dovrebbe occuparsi di ripristinare la porta corretta. Ma se hai questo sospetto, aggiungi un LOG in POSTROUTING sui pacchetti che provengono dalla porta 8082 e vedi che dice.
__________________
0: or %edi, %ecx; adc %eax, (%edx); popf; je 0b-22; pop %ebx; fadds 0x56(%ecx); lds 0x56(%ebx), %esp; mov %al, %al
andeqs pc, r1, #147456; blpl 0xff8dd280; ldrgtb r4, [r6, #-472]; addgt r5, r8, r3, ror #12
ilsensine è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Prova GeForce NOW upgrade Blackwell: il cloud gaming cambia per sempre Prova GeForce NOW upgrade Blackwell: il cloud ga...
Ecovacs Deebot X11 Omnicyclone: niente più sacchetto per lo sporco Ecovacs Deebot X11 Omnicyclone: niente più...
Narwal Flow: con il mocio orizzontale lava i pavimenti al meglio Narwal Flow: con il mocio orizzontale lava i pav...
Panasonic 55Z95BEG cala gli assi: pannello Tandem e audio senza compromessi Panasonic 55Z95BEG cala gli assi: pannello Tande...
HONOR Magic V5: il pieghevole ultra sottile e completo! La recensione HONOR Magic V5: il pieghevole ultra sottile e co...
Larry Ellison guadagna 101 miliardi in u...
Johnson Controls amplia la gamma di solu...
NASA Perseverance: il rover potrebbe ave...
Quelli di Immuni si 'pappano' Vimeo: Ben...
Changan lancia la Deepal S05 in Europa, ...
Substrati in vetro, Intel smentisce le v...
ECOVACS DEEBOT T50 PRO OMNI Gen2 fa piaz...
Windelo 62: catamarano a vela che unisce...
Francia, in arrivo un incentivo di 1.000...
Haier, la sorpresa a IFA: la lavatrice C...
GeForce RTX 5000 SUPER in arrivo? Sembra...
Ionity prova una soluzione contro i ladr...
Pirateria, svolta clamorosa: Dazn e Lega...
Maxi richiamo Toyota e Lexus: oltre 900....
Blackwell Ultra: fino al 45% di prestazi...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 00:19.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Served by www3v