L'angolo di Ansuel: ricerca e sviluppo su DGA4130 (AGTEF) & DGA4132 (AGTHP)

  • 2281 Risposte
  • 1126562 Visite

0 Utenti e 5 Visitatori stanno visualizzando questo topic.

Offline LuKePicci

  • Global Moderator
  • VIP
  • *****
  • 2789
Assolutamente no! Il relay non fornisce alcun isolamento dell'host esposto dal resto della rete! Se tale host viene compromesso entrare sulle altre risorse come se si fosse in lan è un gioco da ragazzini. A prescindere dagli effetti collaterali del DMZ, tipo il fatto di "saltare" il nat, l'isolamento va implementato comunque, e non tramite subnet distinte ma separando opportunamente le varie interfacce in gruppi in bridge distinti.

Offline Marvel

  • Membro Anziano
  • ***
  • 200
    • Macoers
Qualcuno si intende di DMZ?

Sto tentando di fare praticamente la stessa cosa su un DGA4132, sono riuscito ad avere un secondo ip pubblico su una nuova interfaccia wan2, ma non riesco a creare la nuova vlan con ip 192.168.2.0/24 che vorrei utilizzasse wan2. Tu sei riuscito a fare qualcosa?
Sembra praticamente impossibile creare delle vlan su questo dispositivo.

Ciao @LuKePicci, sono un neoiscritto ma leggo sempre con interesse ogni tuo post.
Tu credi sia realmente possibile creare una nuova vlan per una lan con classe differente su questo dispositivo?
« Ultima modifica: 22 Gennaio 2020, 12:09 da Marvel »

Offline LuKePicci

  • Global Moderator
  • VIP
  • *****
  • 2789
Oh si, ci credo eccome. per la serie impariamo a giocare con le vlan qui le cose avevano preso una piega decisamente perversa: https://www.ilpuntotecnico.com/forum/index.php/topic,77325.msg245426.html#msg245426

Offline Marvel

  • Membro Anziano
  • ***
  • 200
    • Macoers
Wao, mi metto subito a studiare, grazie mille :-)
Tenendo presente quello che voglio fare, hai qualche particolare suggerimento?
Intanto ti ringrazio molto :-)

@LuKePicci , una domanda, cascatona funziona con i dispositivi in cascata, ma se voglio creare più vlan tutte sullo stesso dispositivo?
Io vorrei che sul dga4132 ci siano due vlan:
lan 192.168.1.0/24
lan2 192.168.0.0/24

Mi sfugge qualcosa?
Io vorrei creare una VLAN per il DMZ come riportato qui:
https://openwrt.org/docs/guide-user/firewall/fw3_configurations/fw3_dmz
« Ultima modifica: 22 Gennaio 2020, 13:55 da Marvel »

Offline LuKePicci

  • Global Moderator
  • VIP
  • *****
  • 2789
A quel link c'è la dimostrazione che con le vlan puoi fare quello che ti pare. Se ho ben capito tu vuoi semplicemente tenere separati due gruppi di host a cui vengono applicate regole di firewalling distinte. Quello che non mi è chiaro è se questa separazione ti serve a livello di porta fisica o se le due reti debbano essere accessibili su ogni porta o se a te serva isolare solo un gruppo di device wireless.

Se su una porta abiliti entrambe le VLAN, a quel punto per scegliere a quale connetterti c'è solo da configurare il client con tag VLAN o no. Questo significa che un device sulla VLAN in DMZ, se compromesso, può essere riconfigurato per entrare nell'altra.

Se invece il device in DMZ è su una porta distinta, il tagging vlan resta interamente gestito all'interno del 4132. In questo caso l'unica cosa da fare è configurare lo switch interno in modo da tenere separate le due, e poi definire una lan2 che le comprenda e le regoli a tua discrezione. Questi technicolor adottano il modello DSA quindi le istruzioni che vedi nella wiki di openwrt quando si parla di configurare le interfacce vlan non corrispondono a quello che devi fare.

Nel primo caso hai effettivamente due reti in giro per casa a cui accedere dagli stessi cavi fisici, nel secondo le VLAN le sfrutti come trucco solo per esporre e isolare porte diverse dello switch come fossero  interfacce distinte, quando per definizione di switch non lo sarebbero. Senza DSA faresti come dice la wiki openwrt. Qui, con DSA, il dispositivo già vede porte diverse dello switch come interfacce distinte, ma non sono sicuro le isoli, altrimenti senza scomodare nessuna VLAN ti basterebbe definire lan2 e metterci dentro, per esempio, eth2 ed eth3.
« Ultima modifica: 22 Gennaio 2020, 15:06 da LuKePicci »

Offline Marvel

  • Membro Anziano
  • ***
  • 200
    • Macoers
Si perfetto, vorrei avere due gruppi di host distini e separati. La separazione non mi occorre a livello di porta fisica ma vorrei che le due reti siano accessibili su ogni porta, i device wireless non mi interessano.

Ho visto che posso fare la separazione a livello di porta fisica come descritto di seguito:
https://www.ilpuntotecnico.com/forum/index.php?topic=78520.0
giusto?

Ma io invece vorrei che le due reti distinte siano accessibili da ogni porta ma proprio non riesco. Riesci a darmi una mano?
Intanto vedo di cercare documentazione sul funzionamento delle vlan secondo il modell DSA, non l'ho mai utilizzato prima, mi è nuovo.

Offline LuKePicci

  • Global Moderator
  • VIP
  • *****
  • 2789
DSA è una cosa relativa a come gli switch si presentano al device da cui sono connessi.

A te la separazione su porta non interessa, dunque del tagging VLAN nello switch non ti importa alcunché. Prima di procedere sappi che questa cosa che vai a fare non ha nulla a che vedere con un DMZ (=zona isolata su cui non vigono regole).

Cominciamo a creare la seconda vlan su un suo vid specifico a cui appoggiare lan2, poi dopo se ti serve possiamo spostare anche la prima lan su un suo vid piuttosto che lasciarla untagged. Duplica di sana pianta la sezione lan che hai già in /etc/config/network, rinominala in lan2 e cambiale ip, 192.168.0.1, Più avanti cambierai anche ifname.
Ora devi creare un device vlan con vid 2 su ogni interfaccia che ne deve far parte. Dovresti già avere altri device di tipo 8021q nello stesso file /etc/config/network, prendi spunto da una di quelle e creane tante chiamate vlan2_eth0 vlan2_eth1 vlan2_eth2 vlan2_eth3, imposta i loro ifname rispettivamente a eth0 eth1 eth2 eth3 e tutti i loro vid a 2.
Torna in lan2 e riempi ifname con tutte queste appena create, quindi "vlan2_eth0 vlan2_eth1 vlan2_eth2 vlan2_eth3".
Poi vai in /etc/config/dhcp e, se ti serve, fai in modo che il server lavori anche su lan2. cioè aggiungi un blocco config dhcp 'lan2' identico a quello che hai per lan.
A questo punto devi solo decidere in che rapporto devono essere le due lan, e assegnare lan2 ad una nuova zona firewall o ad una già esistente. Magari inizia a metterla in zona lan e verifica che tutto funzioni, poi eventualmente a separarle ci pensi dopo.

Offline Marvel

  • Membro Anziano
  • ***
  • 200
    • Macoers
Si, so che questo al momento non c'entra con il DMZ, ma al momento mi basta iniziare a creare questa seconda lan, poi vorrei esporre il DMZ tramite questa lan e fare in modo che tutti i dispositivi in essa presenti si colleghino ad internet tramite una seconda connessione pppoe (un secondo ip pubblico).

Probabilmente stanotte c'ero anche andato vicino tramite il file network di un DGA4130 con firmware UNO:
https://www.ilpuntotecnico.com/forum/index.php/topic,77981.msg237205.html#msg237205
in cui ci sono le vlan configurate quasi come mi hai indicato, ma non ci sono riuscito ed ho deciso di chiedere aiuto.

Intanto mi metto subito a lavoro e seguo i tuoi consigli, appena fatto posto qui il file editato.
Ti ringrazio veramente tanto per il supporto.
« Ultima modifica: 22 Gennaio 2020, 17:13 da Marvel »

Offline LuKePicci

  • Global Moderator
  • VIP
  • *****
  • 2789
Il file network del firmware UNO ha i quattro device vlan come in effetti serve a te ma in quel caso c'è anche di mezzo il tagging vlan dello switch che è abilitato e fa si che poi sui cavi tu di vlan non ne veda proprio.

Fat uscire da una seconda wan con diverso ip pubblico i device sulla seconda vlan è facile.
Quella cosa che dici di voler "esporre il DMZ tramite questa lan" non mi è chiara.

Offline Marvel

  • Membro Anziano
  • ***
  • 200
    • Macoers
Allora ho modificato nuovamente tutto ed ho riavviato sia router che desktop sul quale ho assegnato staticamente un nuovo indirizzo ip, ma non navigo né capisco se sono connesso.

Se dal desktop sono in lan con indirizzo 192.168.1.10 riesco a pingare il gateway di lan2 su 192.168.0.1.
Se dal desktop sono in lan2 con un indirizzo 192.168.0.10, allora non riesco a pingare il gateway 192.168.0.1.

Cosa sbaglio?
Di seguito ti copio i tre files network, firewall e dhcp.

Al momento sto solo provando a creare e far funzionare questa seconda lan, se riesco a farla funzionare procedo con la seconda wan.

/etc/config/network
Codice: [Seleziona]

config interface 'loopback'
option ifname 'lo'
option proto 'static'
option ipaddr '127.0.0.1'
option netmask '255.0.0.0'

config globals 'globals'
option default_ps '0'
option ula_prefix 'none'

config interface 'lan'
option type 'bridge'
option proto 'static'
option ipaddr '192.168.1.1'
option netmask '255.255.255.0'
option ip6assign '64'
option force_link '0'
option ipv6 '1'
option rpfilter '1'
option igmp_snooping '1'
option ifname 'eth0 eth1 eth2 eth3 eth4 eth5'
list pppoerelay 'wanptm0'

config switch 'bcmsw'
option reset '1'
option enable_vlan '0'
option qosimppauseenable '0'
option jumbo '0'

config interface 'wlnet_b_24'
option proto 'static'
option ip6assign '64'
option ipv6 '1'
option ip6hint '1'
option netmask '255.255.255.128'
option ipaddr '192.168.168.1'
option ifname 'wl0_1'
option force_link '0'
option name 'Ospiti-TIM-*********'

config interface 'wlnet_b_5'
option proto 'static'
option ip6assign '64'
option ipv6 '1'
option ip6hint '2'
option netmask '255.255.255.128'
option ipaddr '192.168.168.129'
option ifname 'wl1_1'
option force_link '0'
option name 'Ospiti-TIM-*********'

config device 'wlnet_b_5eth5'
option type '8021q'
option name 'wl1_1'
option enabled '1'
option ifname 'eth5'
option vid '3'
option ipv6 '1'

config interface 'public_lan'
option ifname '@lan'
option proto 'static'
option ipaddr '0.0.0.0'
option netmask '0.0.0.0'
option auto '1'
option disabled_info 'proto=static,ip=0.0.0.0,mask=255.255.255.248'

config device 'waneth4'
option type '8021q'
option name 'waneth4'
option macaddr 'oscurato'
option ifname 'eth4'
option vid '835'
option ipv6 '0'

config device 'wanptm0'
option type '8021q'
option name 'wanptm0'
option macaddr 'oscurato'
option ifname 'ptm0'
option vid '835'
option ipv6 '0'

config interface 'wan'
option auto '1'
option proto 'pppoe'
option demand '0'
option password 'oscurato'
option macaddr 'oscurato'
option ipv6 '0'
option peerdns '1'
option reqopts '1 3 6 15 26 33 42 51 121 249'
option keepalive_adaptive '0'
option dns_metric '0'
option ifname 'wanptm0'
option username 'oscurato'
list dns '1.1.1.1'
list dns '1.0.0.1'

config config 'config'
option wan_mode 'pppoe'

config interface 'wwan'
option proto 'mobiled'
option session_id '0'
option profile '1'
option iface_464xlat '0'
option auto '0'

config interface 'wan6'
option ifname '@wan'
option proto 'dhcpv6'
option reqopts '12 21 22 23 24 25 31 56 64 67 82 83'
option noslaaconly '1'
option iface_464xlat '0'
option auto '0'
option dns_metric '20'

config interface 'sfptag'
option proto 'static'
option netmask '255.255.255.0'
option ipaddr '192.168.10.1'

config device 'voipeth4'
option enabled '0'
option type '8021q'
option name 'voipeth4'
option macaddr 'oscurato'
option ifname 'eth4'
option vid '84'
option mtu '1400'
option ipv6 '0'

config interface 'voip'
option auto '0'
option proto 'dhcp'
option ifname '<set by script>'
option macaddr 'oscurato'
option ipv6 '0'
option peerdns '1'
option reqopts '1 3 6 15 26 33 42 51 121 249'
option vendorid 'DGA4132_**********'
option ip4table 'voip'
option defaultroute '1'
option dnsset 'voip'

config interface 'ipoe'
option proto 'dhcp'
option metric '1'
option reqopts '1 3 6 43 51 58 59'
option release '1'
option neighreachabletime '1200000'
option neighgcstaletime '2400'
option ipv6 '1'

config interface 'lan2'
option type 'bridge'
option proto 'static'
option ipaddr '192.168.0.1'
option netmask '255.255.255.0'
option ip6assign '64'
option force_link '0'
option ipv6 '1'
option rpfilter '1'
option igmp_snooping '1'
option ifname 'vlan2_eth0 vlan2_eth1 vlan2_eth2 vlan2_eth3'
list pppoerelay 'wanptm0'

config device 'vlan2_eth0'
option type '8021q'
option ifname 'eth0'
option name 'vlan2_eth0'
option mtu '1500'
option vid '2'

config device 'vlan2_eth1'
option type '8021q'
option ifname 'eth1'
option name 'vlan2_eth1'
option mtu '1500'
option vid '2'

config device 'vlan2_eth2'
option type '8021q'
option ifname 'eth2'
option name 'vlan2_eth2'
option mtu '1500'
option vid '2'

config device 'vlan2_eth3'
option type '8021q'
option ifname 'eth3'
option name 'vlan2_eth3'
option mtu '1500'
option vid '2'
(ho provato con e senza la voce " option mtu '1500' " ma non cambia nulla)

/etc/config/dhcp
Codice: [Seleziona]
config dnsmasq 'dnsmasq'
option domainneeded '1'
option boguspriv '1'
option filterwin2k '0'
option localise_queries '1'
option rebind_protection '1'
option rebind_localhost '1'
option local '/lan/'
option expandhosts '1'
option nonegcache '0'
option authoritative '1'
option readethers '1'
option leasefile '/tmp/dhcp.leases'
option resolvfile '/tmp/resolv.conf.auto'
option strictorder '1'
option dhcpscript '/lib/dnsmasq/dhcp-event.sh'
list hostname 'dsldevice'
option allservers '1'
option addmac '0'
list dhcp_option_force 'tag:cpewan-id,vi-encap:3561,6,"4132"'
list dhcp_option_force 'tag:cpewan-id,vi-encap:3561,5,"CP1752RAP53"'
list dhcp_option_force 'tag:cpewan-id,vi-encap:3561,4,"A491B1"'
option server '151.99.125.1'
option domain 'homenet'
option serversfile '/tmp/adb_list.overall'

config odhcpd 'odhcpd'
option leasefile '/tmp/hosts/odhcpd'
option leasetrigger '/usr/sbin/odhcpd-update'

config dhcp 'lan'
option interface 'lan'
option leasetime '21600s'
option dhcpv6 'server'
option ra 'server'
option ra_management '0'
option ra_mininterval '200'
option ra_maxinterval '600'
option ra_lifetime '1800'
option ra_hoplimit '64'
option force '1'
option ignore '0'
option start '55'
list dhcp_option '6,192.168.1.1'
option limit '199'

config dhcp 'wlnet_b_24'
option interface 'wlnet_b_24'
option start '2'
option leasetime '1h'
option force '1'
option dhcpv6 'server'
option ra 'server'
option ra_management '0'
option ra_mininterval '200'
option ra_maxinterval '600'
option ra_lifetime '1800'
option ra_hoplimit '64'
option ra_max_mtu '1480'
option limit '125'

config dhcp 'wlnet_b_5'
option interface 'wlnet_b_5'
option start '130'
option leasetime '1h'
option force '1'
option dhcpv6 'server'
option ra 'server'
option ra_management '0'
option ra_mininterval '200'
option ra_maxinterval '600'
option ra_lifetime '1800'
option ra_hoplimit '64'
option ra_max_mtu '1480'
option limit '125'

config dhcp 'wan'
option interface 'wan'
option ignore '1'

config dhcp 'wan6'
option interface 'wan'
option ignore '1'

config dhcp 'wwan'
option interface 'wwan'
option ignore '1'

config relay 'relay'

config opassthrud 'opassthrud'
option passthruscript '/lib/dhcpopassthrud/dnsmasq.sh'
option options_needed '0'

config dnsrule
option dnsset 'voip'
option policy 'if1_mwan'

config dhcp 'voip'
option interface 'voip'
option ignore '1'

config dhcp 'voip6'
option interface 'voip'
option ignore '1'

config dhcp 'lan2'
        option interface 'lan2'
        option leasetime '21600s'
        option dhcpv6 'server'
        option ra 'server'
        option ra_management '0'
        option ra_mininterval '200'
        option ra_maxinterval '600'
        option ra_lifetime '1800'
        option ra_hoplimit '64'
        option force '1'
        option ignore '0'
        option start '55'
        list dhcp_option '6,192.168.0.1'
        option limit '199'

/etc/config/firewall ( ho provato sia inserendo lan2 nella zona lan, che creando una nuova zona per lan2)
Codice: [Seleziona]
.
.
.

config zone 'lan'
option name 'lan'
list network 'lan'
list network 'lan2'
option input 'ACCEPT'
option output 'ACCEPT'
option forward 'ACCEPT'
option mtu_fix '1'
option wan '0'
.
.
.

Codice: [Seleziona]
config defaults
option syn_flood '1'
option input 'ACCEPT'
option output 'ACCEPT'
option forward 'REJECT'
option drop_invalid '1'

config zone 'lan'
option name 'lan'
list network 'lan'
option input 'ACCEPT'
option output 'ACCEPT'
option forward 'ACCEPT'
option mtu_fix '1'
option wan '0'

config zone 'wan'
option name 'wan'
list network 'wan'
list network 'wan6'
list network 'wwan'
option input 'DROP'
option output 'ACCEPT'
option forward 'DROP'
option masq '1'
option conntrack '1'
option mtu_fix '1'
option wan '1'

config forwarding 'lan_wan'
option src 'lan'
option dest 'wan'

config zone 'public_lan'
option name 'public_lan'
list network 'public_lan'
option input 'ACCEPT'
option output 'ACCEPT'
option forward 'ACCEPT'
option wan '0'
option log '1'
option log_limit '5/minute'

config forwarding 'public_lan_wan'
option src 'public_lan'
option dest 'wan'
option name 'subnet_out'
option enabled '0'

config forwarding 'wan_public_lan'
option src 'wan'
option dest 'public_lan'
option name 'subnet_in'
option enabled '0'

config zone 'z_wlnetb24'
option name 'z_wlnetb24'
list network 'wlnet_b_24'
option input 'DROP'
option output 'ACCEPT'
option forward 'REJECT'
option mtu_fix '1'
option wan '0'

config forwarding 'for_wlnetb24'
option src 'z_wlnetb24'
option dest 'wan'

config rule 'Drop_non_TCP_SYN'
option name 'Drop_non_TCP_SYN'
option src 'wan'
option dest '*'
option proto 'tcp'
option target 'DROP'
option extra '! --tcp-flags ALL SYN'

config rule 'drop_lan_2_z_wlnetb24'
option name 'drop_lan_2_z_wlnetb24'
option src 'lan'
option dest 'z_wlnetb24'
option proto 'all'
option target 'DROP'

config rule
option src 'lan'
option name 'Deny_CWMP_Conn_Reqs_from_LAN'
option proto 'tcp'
option dest_port '7170'
option target 'DROP'

config rule 'drop_z_wlnetb24_2_lan'
option name 'drop_z_wlnetb24_2_lan'
option src 'z_wlnetb24'
option dest 'lan'
option proto 'all'
option target 'DROP'

config rule 'drop_lan_2_z_wlnetb24_GW'
option name 'drop-lan_2_z_wlnetb24_GW'
option src 'lan'
option proto 'all'
option target 'DROP'
option family 'ipv4'
option dest_ip '192.168.168.1'

config rule 'Allow_z_wlnetb24_ICMP'
option name 'Allow_z_wlnetb24_ICMP'
option src 'z_wlnetb24'
option proto 'igmp'
option target 'ACCEPT'
option family 'ipv4'
option dest_ip '192.168.168.1'

config rule 'Allow_z_wlnetb24_DHCP'
option name 'Allow_z_wlnetb24_DHCP'
option src 'z_wlnetb24'
option proto 'udp'
option dest_port '67'
option target 'ACCEPT'
option family 'ipv4'

config rule 'Allow_z_wlnetb24_DNS'
option name 'Allow_z_wlnetb24_DNS'
option src 'z_wlnetb24'
option proto 'udp'
option dest_port '53'
option target 'ACCEPT'
option family 'ipv4'

config rule 'Allow_z_wlnetb24_ICMPv6'
option name 'Allow-z_wlnetb24_ICMPv6'
option src 'z_wlnetb24'
option proto 'icmp'
list icmp_type 'echo-request'
list icmp_type 'echo-reply'
list icmp_type 'destination-unreachable'
list icmp_type 'packet-too-big'
list icmp_type 'time-exceeded'
list icmp_type 'bad-header'
list icmp_type 'unknown-header-type'
list icmp_type 'router-solicitation'
list icmp_type 'neighbour-solicitation'
list icmp_type 'router-advertisement'
list icmp_type 'neighbour-advertisement'
option limit '1000/sec'
option family 'ipv6'
option target 'ACCEPT'

config zone 'z_wlnetb5'
option name 'z_wlnetb5'
list network 'wlnet_b_5'
option input 'DROP'
option output 'ACCEPT'
option forward 'REJECT'
option wan '0'

config forwarding 'for_wlnetb5'
option src 'z_wlnetb5'
option dest 'wan'

config rule 'drop_lan_2_z_wlnetb5'
option name 'drop_lan_2_z_wlnetb5'
option src 'lan'
option dest 'z_wlnetb5'
option proto 'all'
option target 'DROP'

config rule 'drop_z_wlnetb5_2_lan'
option name 'drop_z_wlnetb5_2_lan'
option src 'z_wlnetb5'
option dest 'lan'
option proto 'all'
option target 'DROP'

config rule 'drop_lan_2_z_wlnetb5_GW'
option name 'drop-lan_2_z_wlnetb5_GW'
option src 'lan'
option proto 'all'
option target 'DROP'
option family 'ipv4'
option dest_ip '192.168.168.129'

config rule 'Allow_z_wlnetb5_ICMP'
option name 'Allow_z_wlnetb5_ICMP'
option src 'z_wlnetb5'
option proto 'igmp'
option target 'ACCEPT'
option family 'ipv4'
option dest_ip '192.168.168.129'

config rule 'Allow_z_wlnetb5_DHCP'
option name 'Allow_z_wlnetb5_DHCP'
option src 'z_wlnetb5'
option proto 'udp'
option dest_port '67'
option target 'ACCEPT'
option family 'ipv4'

config rule 'Allow_z_wlnetb5_DNS'
option name 'Allow_z_wlnetb5_DNS'
option src 'z_wlnetb5'
option proto 'udp'
option dest_port '53'
option target 'ACCEPT'
option family 'ipv4'

config rule 'Allow_z_wlnetb5_ICMPv6'
option name 'Allow-z_wlnetb5_ICMPv6'
option src 'z_wlnetb5'
option proto 'icmp'
list icmp_type 'echo-request'
list icmp_type 'echo-reply'
list icmp_type 'destination-unreachable'
list icmp_type 'packet-too-big'
list icmp_type 'time-exceeded'
list icmp_type 'bad-header'
list icmp_type 'unknown-header-type'
list icmp_type 'router-solicitation'
list icmp_type 'neighbour-solicitation'
list icmp_type 'router-advertisement'
list icmp_type 'neighbour-advertisement'
option limit '1000/sec'
option family 'ipv6'
option target 'ACCEPT'

config rule 'rule1'
option name 'Allow-DHCP-Renew'
option src 'wan'
option proto 'udp'
option dest_port '68'
option target 'ACCEPT'
option family 'ipv4'

config rule 'rule2'
option name 'Allow-Ping'
option src 'wan'
option proto 'icmp'
list icmp_type 'echo-request'
option family 'ipv4'
option target 'ACCEPT'

config rule 'rule3'
option name 'Allow-Ping6'
option src 'wan'
option proto 'icmp'
list icmp_type 'echo-request'
option family 'ipv6'
option target 'ACCEPT'

config rule 'rule4'
option name 'Allow-DHCPv6'
option src 'wan'
option proto 'udp'
option src_ip 'fc00::/6'
option dest_ip 'fc00::/6'
option dest_port '546'
option family 'ipv6'
option target 'ACCEPT'

config rule 'rule5'
option name 'Allow-ICMPv6-Input'
option src 'wan'
option proto 'icmp'
list icmp_type 'echo-reply'
list icmp_type 'destination-unreachable'
list icmp_type 'packet-too-big'
list icmp_type 'time-exceeded'
list icmp_type 'bad-header'
list icmp_type 'unknown-header-type'
list icmp_type 'router-solicitation'
list icmp_type 'neighbour-solicitation'
list icmp_type 'router-advertisement'
list icmp_type 'neighbour-advertisement'
option limit '1000/sec'
option family 'ipv6'
option target 'ACCEPT'

config rule 'rule6'
option name 'Allow-ICMPv6-Forward'
option src 'wan'
option dest '*'
option proto 'icmp'
list icmp_type 'echo-request'
list icmp_type 'echo-reply'
list icmp_type 'destination-unreachable'
list icmp_type 'packet-too-big'
list icmp_type 'time-exceeded'
list icmp_type 'bad-header'
list icmp_type 'unknown-header-type'
option limit '1000/sec'
option family 'ipv6'
option target 'ACCEPT'

config rule 'rule7'
option name 'access_2_LAN_IP'
option src 'lan'
option proto 'tcp'
option family 'ipv4'
option extra '-m multiport --dports 80,22,8080,443,8443 -m addrtype --limit-iface-in ! --dst-type LOCAL'
option target 'REJECT'

config rule 'rule8'
option name 'close_port_139'
option src 'wan'
option proto 'tcp'
option dest_port '139'
option family 'ipv4'
option target 'DROP'

config rule 'rule9'
option name 'close_port_445'
option src 'wan'
option proto 'tcp'
option dest_port '445'
option family 'ipv4'
option target 'DROP'

config rule 'rule11'
option name 'Deny-CUPS-wan'
option src 'wan'
option proto 'tcp'
option dest_port '631'
option family 'ipv4'
option target 'DROP'

config rule 'rule13'
option name 'Deny-CUPS-wan-v6'
option src 'wan'
option proto 'tcp'
option dest_port '631'
option family 'ipv6'
option target 'DROP'

config rule 'SSH_wan'
option name 'SSH-wan'
option src 'wan'
option proto 'tcp'
option dest_port '22'
option target 'DROP'
option family 'ipv4'

config rule
option name 'Restrict-TCP-LAN-Input'
option src 'lan'
option dest_ip '!lan'
option proto 'tcp'
option family 'ipv4'
option extra '-m mark --mark 0/0x9000000'
option target 'REJECT'

config include
option path '/etc/firewall.user'

config include
        option path '/etc/firewall.voipblock'
        option reload '1'

config include 'tchext_restart'
option type 'script'
option path '/lib/functions/firewall-restart-ext-tch.sh'

config include 'tchext'
option type 'script'
option path '/lib/functions/firewall-ext-tch.sh'
option reload '1'

config cone 'cone1'
option name 'PS and XBox Live 1'
option src 'wan'
option dest_port '88'

config cone 'cone2'
option name 'PS and XBox Live 2'
option src 'wan'
option dest_port '3074:3658'

config cone 'cone3'
option name 'PS and XBox Live 3'
option src 'wan'
option dest_port '10070'

config cone 'cone4'
option name 'PS and XBox Live 4'
option src 'wan'
option dest_port '4500'

config include 'tod'
option type 'script'
option path '/lib/functions/tod.sh'
option reload '1'

config include 'intercept'
option type 'script'
option path '/usr/lib/intercept/firewall.sh'

config fwconfig 'fwconfig'
option defaultoutgoing_lax 'ACCEPT'
option defaultoutgoing_normal 'ACCEPT'
option defaultoutgoing_high 'DROP'
option defaultoutgoing_user 'ACCEPT'
option defaultincoming_lax 'REJECT'
option defaultincoming_normal 'DROP'
option defaultincoming_high 'DROP'
option defaultincoming_user 'DROP'
option level 'normal'

config rulesgroup 'pinholerules'
option enabled '1'
option name 'FW rules for opening pinholes'
option type 'pinholerule'

config redirectsgroup 'userredirects'
option enabled '1'
option name 'FW redirects defined by the user'
option type 'userredirect'

config redirectsgroup 'dmzredirects'
option enabled '0'
option name 'FW redirects for the DMZ functionality'
option type 'dmzredirect'

config dmzredirect 'dmzredirect'
option name 'DMZ rule'
option src 'wan'
option dest 'lan'
option family 'ipv4'
option target 'DNAT'
option proto 'tcpudp'

config rulesgroup 'normalrules'
option enabled '1'
option name 'FW rules for normal level'
option type 'normalrule'

config rulesgroup 'laxrules'
option enabled '0'
option name 'FW rules for lax level'
option type 'laxrule'

config rulesgroup 'highrules'
option enabled '0'
option name 'FW rules for high level'
option type 'highrule'

config rulesgroup 'userrules'
option enabled '0'
option name 'FW rules for user level'
option type 'userrule'

config rulesgroup 'userrules_v6'
option enabled '0'
option name 'FW rules for user level IPv6'
option type 'userrule_v6'

config rulesgroup 'defaultrules'
option enabled '1'
option name 'FW rules for default behavior'
option type 'defaultrule'

config highrule 'highrule1'
option name 'HTTP'
option src 'lan'
option dest 'wan'
option proto 'tcp'
option dest_port '80'
option target 'ACCEPT'

config highrule 'highrule2'
option name 'HTTPS'
option src 'lan'
option dest 'wan'
option proto 'tcp'
option dest_port '443'
option target 'ACCEPT'

config highrule 'highrule3'
option name 'SMTP'
option src 'lan'
option dest 'wan'
option proto 'tcp'
option dest_port '25'
option target 'ACCEPT'

config highrule 'highrule4'
option name 'POP3'
option src 'lan'
option dest 'wan'
option proto 'tcp'
option dest_port '110'
option target 'ACCEPT'

config highrule 'highrule5'
option name 'IMAP'
option src 'lan'
option dest 'wan'
option proto 'tcp'
option dest_port '445'
option target 'ACCEPT'

config highrule 'highrule6'
option name 'SSH'
option src 'lan'
option dest 'wan'
option proto 'tcp'
option dest_port '22'
option target 'ACCEPT'

config highrule 'highrule1_guest24'
option name 'HTTP'
option src 'z_wlnetb24'
option dest 'wan'
option proto 'tcp'
option dest_port '80'
option target 'ACCEPT'

config highrule 'highrule2_guest24'
option name 'HTTPS'
option src 'z_wlnetb24'
option dest 'wan'
option proto 'tcp'
option dest_port '443'
option target 'ACCEPT'

config highrule 'highrule3_guest24'
option name 'SMTP'
option src 'z_wlnetb24'
option dest 'wan'
option proto 'tcp'
option dest_port '25'
option target 'ACCEPT'

config highrule 'highrule4_guest24'
option name 'POP3'
option src 'z_wlnetb24'
option dest 'wan'
option proto 'tcp'
option dest_port '110'
option target 'ACCEPT'

config highrule 'highrule5_guest24'
option name 'IMAP'
option src 'z_wlnetb24'
option dest 'wan'
option proto 'tcp'
option dest_port '445'
option target 'ACCEPT'

config highrule 'highrule6_guest24'
option name 'SSH'
option src 'z_wlnetb24'
option dest 'wan'
option proto 'tcp'
option dest_port '22'
option target 'ACCEPT'

config highrule 'highrule1_guest5'
option name 'HTTP'
option src 'z_wlnetb5'
option dest 'wan'
option proto 'tcp'
option dest_port '80'
option target 'ACCEPT'

config highrule 'highrule2_guest5'
option name 'HTTPS'
option src 'z_wlnetb5'
option dest 'wan'
option proto 'tcp'
option dest_port '443'
option target 'ACCEPT'

config highrule 'highrule3_guest5'
option name 'SMTP'
option src 'z_wlnetb5'
option dest 'wan'
option proto 'tcp'
option dest_port '25'
option target 'ACCEPT'

config highrule 'highrule4_guest5'
option name 'POP3'
option src 'z_wlnetb5'
option dest 'wan'
option proto 'tcp'
option dest_port '110'
option target 'ACCEPT'

config highrule 'highrule5_guest5'
option name 'IMAP'
option src 'z_wlnetb5'
option dest 'wan'
option proto 'tcp'
option dest_port '445'
option target 'ACCEPT'

config highrule 'highrule6_guest5'
option name 'SSH'
option src 'z_wlnetb5'
option dest 'wan'
option proto 'tcp'
option dest_port '22'
option target 'ACCEPT'

config defaultrule 'defaultipv6incoming'
option name 'Default action for incoming IPv6 traffic'
option src 'wan'
option dest 'lan'
option proto 'all'
option family 'ipv6'
option target 'ACCEPT'
option enabled '0'

config defaultrule 'defaultipv6outgoing'
option name 'Default action for outgoing IPv6 traffic'
option src 'lan'
option dest 'wan'
option proto 'all'
option family 'ipv6'
option target 'ACCEPT'
option enabled '0'

config defaultrule 'defaultoutgoing'
option name 'Default action for outgoing NAT'
option src 'lan'
option dest 'wan'
option proto 'all'
option target 'ACCEPT'

config defaultrule 'defaultoutgoing_guest24'
option name 'Default action for outgoing NAT'
option src 'z_wlnetb24'
option dest 'wan'
option proto 'all'
option target 'ACCEPT'

config defaultrule 'defaultoutgoing_guest5'
option name 'Default action for outgoing NAT'
option src 'z_wlnetb5'
option dest 'wan'
option proto 'all'
option target 'ACCEPT'

config helper 'ftphelper'
option helper 'ftp'
option dest_port '21'
option proto 'tcp'

config helper 'tftphelper'
option helper 'tftp'
option dest_port '69'
option proto 'udp'

config helper 'snmphelper'
option helper 'snmp'
option family 'ipv4'
option dest_port '161'
option proto 'udp'

config helper 'pptphelper'
option helper 'pptp'
option family 'ipv4'
option dest_port '1723'
option proto 'tcp'

config helper 'siphelper'
option enable '0'
option helper 'sip'
option dest_port '5060'
option proto 'tcpudp'

config helper 'siploopback'
option helper 'sip'
option dest_port '5060'
option proto 'tcpudp'
option intf 'loopback'

config helper 'irchelper'
option helper 'irc'
option family 'ipv4'
option dest_port '6667'
option proto 'tcp'

config helper 'amandahelper'
option helper 'amanda'
option dest_port '10080'
option proto 'udp'

config helper 'rtsphelper'
option helper 'rtsp'
option dest_port '554'
option family 'ipv4'
option proto 'tcp'

config include 'dhcpsnooper'
option type 'script'
option path '/lib/functions/firewall-dhcpsnooper.sh'
option reload '0'

config include 'miniupnpd'
option type 'script'
option path '/usr/share/miniupnpd-tch/firewall.include'
option family 'IPv4'
option reload '1'

config include 'mmpbx'
option type 'script'
option path '/lib/functions/firewall-mmpbx.sh'
option reload '1'

config include 'dropbear'
option type 'script'
option path '/lib/functions/firewall-dropbear.sh'
option reload '1'

config zone 'z_if1'
option name 'zoneif1'
list network 'voip'
option input 'DROP'
option output 'ACCEPT'
option forward 'DROP'
option masq '1'
option mtu_fix '1'
option wan '1'

config forwarding 'for_if1'
option src 'lan'
option dest 'zoneif1'

config zone 'lan2'
        option name 'lan2'
        list network 'lan2'
        option input 'ACCEPT'
        option output 'ACCEPT'
        option forward 'ACCEPT'
        option mtu_fix '1'
        option wan '0'

config forwarding 'lan2_wan'
        option src 'lan2'
        option dest 'wan'
« Ultima modifica: 22 Gennaio 2020, 18:06 da Marvel »

Offline LuKePicci

  • Global Moderator
  • VIP
  • *****
  • 2789
Ma sul desktop hai settato il vlan id a 2?

Offline Marvel

  • Membro Anziano
  • ***
  • 200
    • Macoers
Ehm... a dire il vero no, ho solo settato come al solito IP 192.168.0.10, Netmask 255.255.255.0 e Gateway 192.168.0.1, mi vergogno quasi a chiedertelo :-(, ma come faccio a settare il vlan id a 2 nella connessione? Ho a disposizione sia Linux che Windows.

Offline LuKePicci

  • Global Moderator
  • VIP
  • *****
  • 2789
Ok allora le config fatte sopra sono tutte corrette. Tra linux e windows le cose cambiano molto. Su windows, se il driver della scheda di rete lo supporta, trovi questa impostazione nelle settings avanzate del device da gestione dispositivi, è lo stesso posto da cui alcune volte puoi cambiare il MAC address della scheda.

Da linux si usa un comando tipo vconfig add <ifname> <vid> (il driver vlan 8021q deve essere caricato), quindi per esempio vconfig add eth0 2,  dopodiché se fai ifconfig -a ti ritrovi un nuova interfaccia chiamata eth0.2, configura la tua connession usando eth0.2 al posto di eth0 come faresti normalmente e sei a posto.

Offline Marvel

  • Membro Anziano
  • ***
  • 200
    • Macoers
Su windows non ho i drivers che supportano il vlan id -.-"
Su Linux ci sto provando ma ancora non funziona, ma sicuramente sbaglio io qualcosa, quindi ti aggiorno appena ho risolto.
Intanto volevo solo ringraziarti per l'aiuto.

@LuKePicci , ok ho testato con successo la lan2 su Linux e funziona maniera assolutamente spettacolare!!!
Domanda, qualche post fa mi hai detto:
Cominciamo a creare la seconda vlan su un suo vid specifico a cui appoggiare lan2, poi dopo se ti serve possiamo spostare anche la prima lan su un suo vid piuttosto che lasciarla untagged.
e se alla luce del tuo suggerimento sposto anche la prima lan su un suo vid, dopo anche per collegarmi ad essa dovrò indicare il suo vlan id? Perché se così fosse mi conviene lasciarne almeno una untagged che non richiede il vid. Oppure se le setto vid 1 non è necessario?

Infine per quanto riguarda la wan2, concordando con te:
Fat uscire da una seconda wan con diverso ip pubblico i device sulla seconda vlan è facile.
credevo fosse la cosa più stupida da fare ma pure mi sto sbattendo da più di due ore.

In pratica in interfaces ed in dhcp ho creato una wan2 replicando completamente wan, mentre in firewall ho modificato:
Codice: [Seleziona]
config forwarding 'lan2_wan'
        option src 'lan2'
        option dest 'wan'
in:
Codice: [Seleziona]
config forwarding 'lan2_wan2'
        option src 'lan2'
        option dest 'wan2'
ho riavviato il router e controllando sia da gui in "IP Extra" che da ssh con con un bel ifconfig verifico che vengono effettivamente assegnati due diversi IP a wan ed a wan2. Purtroppo però non riesco a navigare da lan2. Se nel firewall invece della sezione lan2_wan2 metto lan2_wan, riesco a navigare anche da lan2, ma ovviamente tramite wan e non tramite wan2.
Secondo te debbo fare altro? Mi perdo qualche passaggio?

Aggiornamento su wan: il problema sembra che non riescano a funzionare contemporaneamente le due connessioni wan e wan2, il problema non è lan2, mi è infatti capitato che il desktop in lan2 avesse la connessione con l'ip di wan2, ma tutti i dispositivi in lan non riuscivano a navigare tramite wan. In pratica sembra possa funzionare solo una connessione pppoe. Ma potrei anche aver sbagliato io qualcosa (spero).

Ho anche provato a creare wan2 in questo modo:
Codice: [Seleziona]
config interface 'wan2'
        option auto '1'
        option proto 'pppoe'
        option demand '0'
        option password 'oscurato'
        option macaddr 'oscurato'
        option ipv6 '0'
        option peerdns '1'
        option reqopts '1 3 6 15 26 33 42 51 121 249'
        option keepalive_adaptive '0'
        option dns_metric '0'
        option ifname 'vlan2_wanptm0'
        option username 'oscurato'
        list dns '1.1.1.1'
        list dns '1.0.0.1'

config device 'vlan2_wanptm0'
        option type '8021q'
        option name 'vlan2_wanptm0'
        option macaddr 'oscurato'
        option ifname 'ptm0'
        option vid '835'
        option ipv6 '0'

ma così facendo non viene proprio assegnato l'ip né a wan né a wan2.
« Ultima modifica: 23 Gennaio 2020, 04:08 da Marvel »

Offline Marvel

  • Membro Anziano
  • ***
  • 200
    • Macoers
@LuKePicci , un aggiornamento per quanto riguarda la wan, con il comando route ho questo:
Codice: [Seleziona]
route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         192.168.100.1   0.0.0.0         UG    0      0        0 pppoe-wan
192.168.0.0     *               255.255.255.0   U     0      0        0 br-lan2
192.168.1.0     *               255.255.255.0   U     0      0        0 br-lan
192.168.100.1   *               255.255.255.255 UH    0      0        0 pppoe-wan2
192.168.100.1   *               255.255.255.255 UH    0      0        0 pppoe-wan
192.168.168.0   *               255.255.255.128 U     0      0        0 wl0_1
192.168.168.128 *               255.255.255.128 U     0      0        0 wl1_1

E pppoe-wan e pppoe-wan2 ricevono sempre correttamente un IP pubblico, lo verifico con ifconfig e da gui.

br-lan dovrebbe connettersi con pppoe-wan
br-lan2 dovrebbe connettersi con pppoe-wan2

L'interfaccia di default non è sempre la stessa, non ho capito in base a cosa ma all'avvio a volte è pppoe-wan, altre volte è pppoe-wan2.
Quando l'interfaccia di default è pppoe-wan, allora i dispositivi in br-lan riescono a connettersi ad internet, mentre i dispositivi in br-lan2 non riescono a connettersi ad internet.
Quando l'interfaccia di default è pppoe-wan2, allora i dispositivi in br-lan2 riescono a connettersi ad internet, mentre i dispositivi in br-lan non riescono a connettersi ad internet.

Potrebbe trattarsi di un problema di route? Devo impostare forse qualche regola per le rotte? Oppure ho proprio sbagliato l'approccio per realizzare wan2?
« Ultima modifica: 23 Gennaio 2020, 16:13 da Marvel »