Indice del forum www.zeroshell.net
Distribuzione Linux ZeroShell
 
 FAQFAQ   CercaCerca  GruppiGruppi   RegistratiRegistrati 
 ProfiloProfilo  Log inLog in   Messaggi privatiMessaggi privati 

Prestazioni HTTP Proxy su Alix (ZS 1.0b13)

 
Nuovo argomento   Rispondi    Indice del forum -> Dispositivi Embedded
Precedente :: Successivo  
Autore Messaggio
picov



Registrato: 16/09/10 09:01
Messaggi: 37

MessaggioInviato: Gio Set 16, 2010 3:55 pm    Oggetto: Prestazioni HTTP Proxy su Alix (ZS 1.0b13) Rispondi citando

Salve,
ho letto i vari posts sulle prestazioni e sui requisiti del proxy HTTP (HAVP/ClamAV) quindi vorrei riportare la mia esperienza con ZS b13 su un hardware limitato come l'ALIX in questione.

Ieri ho attivato il proxy HTTP disabilitando la scansione delle immagini (per alleggerire il carico visti i limiti dell'hardware) ed ho inserito qualche black-list.
Come si vede dai grafici, è successo che man mano l'utilizzo della memoria è aumentato e dopo circa 2 ore ha raggiunto il limite dei 256 MB, da li in poi anche l'utilizzo della CPU è schizzato alle stelle causando il kill di HVAP e il mancato restart di ClamAV. Durante questa fase critica il problema è stato che anche le VPN ed quindi i relativi BOND sono caduti e la risposta HTTP in amministrazione era lentissima. Alla fine sono riuscito ad entrare e disattivando il proxy HTTP tutto è tornato normale senza riavviare (CPU al 4% e memoria a 80MB).
Quello che vorrei capire è se proprio un problema di hardware limitato (nel qual caso forse queste info saranno utili per chi sta pianificando l'utilizzo del Proxy su dispositivi "ALIX like", oppure si tratta di altro (qualche bug?, magari sono strani quei timeout tutti relativi all'aggiornamento del NOD 32?, boh!).
Che ne dite?

Allego le immagini del carico di sistema ed i log del problema:



----------------------------------------------
Proxy Log:
19:46:39 Signal HUP received, reloading scanners and lists
20:04:37 Error: Some scanner has timed out! (lasturl: http://89.202.157.227/nod_eval/update.ver)
20:06:32 10.10.10.250 GET 200 http://89.202.157.227/nod_eval/update.ver 266+977 SCANERROR Scanner timeout
20:11:56 Error: Some scanner has timed out! (lasturl: http://89.202.149.36/nod_eval/update.ver)
20:19:09 Error: Some scanner has timed out! (lasturl: http://90.183.101.10/nod_eval/update.ver)
20:19:53 Error: Some scanner has timed out! (lasturl: http://93.184.71.27/nod_eval/update.ver)
20:20:27 10.10.10.239 GET 200 http://90.183.101.10/nod_eval/update.ver 268+977 SCANERROR Scanner timeout
20:20:27 10.10.10.239 GET 200 http://93.184.71.27/nod_eval/update.ver 268+977 SCANERROR Scanner timeout
20:23:02 ClamAV: Reloaded 828104 signatures (engine 0.96.1)
20:23:08 Could not fork proxychild: Cannot allocate memory
20:23:30 message repeated 2 times
20:23:40 Could not fork proxychild: Cannot allocate memory
20:24:20 message repeated 4 times
20:25:21 message repeated 6 times
20:25:41 message repeated 2 times
20:25:52 Could not fork proxychild: Cannot allocate memory


Kernel log:
20:12:40 =======================
20:12:40 Mem-info:
20:12:40 DMA per-cpu:
20:12:40 CPU 0: hi: 0, btch: 1 usd: 0
20:12:40 Normal per-cpu:
20:12:40 CPU 0: hi: 90, btch: 15 usd: 19
20:12:40 Active:18858 inactive:29159 dirty:0 writeback:0 unstable:0
20:12:40 free:806 slab:1476 mapped:788 pagetables:1194 bounce:0
20:12:40 DMA free:1072kB min:124kB low:152kB high:184kB active:5164kB inactive:5120kB present:16256kB pages_scanned:18335 all_unreclaimable? yes
20:12:40 lowmem_reserve[]: 0 238 238 238
20:12:40 Normal free:2152kB min:1908kB low:2384kB high:2860kB active:70268kB inactive:111516kB present:243840kB pages_scanned:287017 all_unreclaimable? yes
20:12:40 lowmem_reserve[]: 0 0 0 0
20:12:40 DMA: 2*4kB 1*8kB 0*16kB 1*32kB 0*64kB 0*128kB 0*256kB 0*512kB 1*1024kB 0*2048kB 0*4096kB = 1072kB
20:12:40 Normal: 74*4kB 6*8kB 1*16kB 0*32kB 2*64kB 1*128kB 0*256kB 1*512kB 1*1024kB 0*2048kB 0*4096kB = 2152kB
20:12:40 983 total pagecache pages
20:12:40 Swap cache: add 230488, delete 230487, find 220425/242357
20:12:40 Free swap = 0kB
20:12:40 Total swap = 131064kB
20:12:40 Free swap: 0kB
20:12:40 65536 pages of RAM
20:12:40 0 pages of HIGHMEM
20:12:40 1619 reserved pages
20:12:40 237979 pages shared
20:12:40 1 pages swap cached
20:12:40 0 pages dirty
20:12:40 0 pages writeback
20:12:40 788 pages mapped
20:12:40 1476 pages slab
20:12:40 1194 pages pagetables
20:12:40 Out of memory: kill process 26643 (havp) score 71146 or a child
20:12:40 Killed process 26658 (havp)
20:14:19 bonding: BOND00: link status up for interface VPN00, enabling it in 7000 ms.
20:14:19 bonding: BOND00: link status up for interface VPN01, enabling it in 7000 ms.
20:14:20 bonding: BOND00: link status definitely up for interface VPN00.
20:14:20 bonding: BOND00: link status definitely up for interface VPN01.
20:14:20 bonding: BOND00: first active interface up!
20:15:43 havp invoked oom-killer: gfp_mask=0x1201d2, order=0, oomkilladj=0
20:15:43 Pid: 26672, comm: havp Tainted: P 2.6.25.20 #1
20:15:43 [] ? printk+0x18/0x21
20:15:43 [] oom_kill_process+0x75/0x1f0
20:15:43 [] ? badness+0x148/0x1c0
20:15:43 [] out_of_memory+0x19e/0x1e0
20:15:43 [] __alloc_pages+0x377/0x3b0
20:15:43 [] __do_page_cache_readahead+0x111/0x220
20:15:43 [] do_page_cache_readahead+0x4b/0x70
20:15:43 [] filemap_fault+0x30d/0x3f0
20:15:43 [] __do_fault+0x56/0x3a0
20:15:43 [] handle_mm_fault+0xf4/0x5a0
20:15:43 [] ? __down_read_trylock+0x32/0x50
20:15:43 [] do_page_fault+0x261/0x790
20:15:43 [] ? vma_adjust+0x126/0x4b0
20:15:43 [] ? __dequeue_entity+0x2a/0xb0
20:15:43 [] ? set_next_entity+0x12b/0x160
20:15:43 [] ? hrtick_set+0x68/0x110
20:15:43 [] ? schedule+0x3a8/0x8e0
20:15:43 [] ? arch_get_unmapped_area_topdown+0x0/0x170
20:15:43 [] ? up_write+0x8/0x10
20:15:43 [] ? sys_mmap2+0x5c/0xc0
20:15:43 [] ? sys_mkdir+0x20/0x30
20:15:43 [] ? do_page_fault+0x0/0x790
20:15:43 [] error_code+0x72/0x78
20:15:43 =======================
20:15:43 Mem-info:
20:15:43 DMA per-cpu:
20:15:43 CPU 0: hi: 0, btch: 1 usd: 0
20:15:43 Normal per-cpu:
20:15:43 CPU 0: hi: 90, btch: 15 usd: 82
20:15:43 Active:3299 inactive:44451 dirty:0 writeback:0 unstable:0
20:15:43 free:783 slab:1456 mapped:781 pagetables:1130 bounce:0
20:15:43 DMA free:1068kB min:124kB low:152kB high:184kB active:5160kB inactive:5132kB present:16256kB pages_scanned:20915 all_unreclaimable? yes
20:15:43 lowmem_reserve[]: 0 238 238 238
20:15:43 Normal free:2064kB min:1908kB low:2384kB high:2860kB active:8036kB inactive:172672kB present:243840kB pages_scanned:425797 all_unreclaimable? yes
20:15:43 lowmem_reserve[]: 0 0 0 0
20:15:43 DMA: 1*4kB 1*8kB 0*16kB 1*32kB 0*64kB 0*128kB 0*256kB 0*512kB 1*1024kB 0*2048kB 0*4096kB = 1068kB
20:15:43 Normal: 46*4kB 3*8kB 2*16kB 1*32kB 2*64kB 1*128kB 0*256kB 1*512kB 1*1024kB 0*2048kB 0*4096kB = 2064kB
20:15:43 988 total pagecache pages
20:15:43 Swap cache: add 232523, delete 232523, find 221103/243283
20:15:43 Free swap = 0kB
20:15:43 Total swap = 131064kB
20:15:43 Free swap: 0kB
20:15:43 65536 pages of RAM
20:15:43 0 pages of HIGHMEM
20:15:43 1619 reserved pages
20:15:43 215201 pages shared
20:15:43 0 pages swap cached
20:15:43 0 pages dirty
20:15:43 0 pages writeback
20:15:43 781 pages mapped
20:15:43 1456 pages slab
20:15:43 1130 pages pagetables
20:15:43 Out of memory: kill process 26643 (havp) score 65194 or a child
20:15:43 Killed process 26663 (havp)
20:17:41 bonding: BOND00: link status definitely down for interface VPN00, disabling it
20:17:41 bonding: BOND00: link status definitely down for interface VPN01, disabling it
20:17:41 bonding: BOND00: now running without any active interface !
20:21:27 bonding: BOND00: link status up for interface VPN00, enabling it in 7000 ms.
20:21:27 bonding: BOND00: link status up for interface VPN01, enabling it in 7000 ms.
20:21:34 bonding: BOND00: link status definitely up for interface VPN00.
20:21:34 bonding: BOND00: link status definitely up for interface VPN01.
20:21:34 bonding: BOND00: first active interface up!
------------------------------------------------------------------


Qualora l'hardware limitato risultasse inadatto alle scansioni AV, è abbastanza ragionevole pensare che l'altra funzione molto utile del proxy che si occupa del filtro degli URL per bloccare alcuni siti non dovrebbe richiedere ingenti risorse.
A questo proposito però, se qualcuno pensasse di poter disabilitare l'antivirus lasciando attivo solo il filtro degli URL sappia che questo non si può fare. Il relativo menu a tendina di ZS è infatti disabilitato perché, come spiega Fulvio in un post del forum, HAVP è progettato per fare la scansione antivirus insieme a ClamAV (o comunque insieme ad uno scanner) quindi ad oggi non esiste nessun parametro nel file di configurazione per disabilitare questa funzione.

A questo proposito ho contattato lo sviluppatore di HAVP riportandogli le performance su ALIX e proponendogli di inserire la possibilità di disabilitare la scansione AV attraverso il file di configurazione in una prossima release del software in modo da poter sfruttare almeno il filtro degli URL su dispositivi con risorse limitate. Vedremo che ne pensa.

Grazie e saluti.
Top
Profilo Invia messaggio privato
picov



Registrato: 16/09/10 09:01
Messaggi: 37

MessaggioInviato: Sab Set 25, 2010 1:39 pm    Oggetto: Rispondi citando

Mi rispondo da solo proponendo una soluzione temporanea.

Visto che per ora non è possibile separare HAVP a ClamAV, mi è venuta l'idea di sostituire l'eseguibile di ClamAV con uno che riporta sempre il risultato di virus non trovato: questo velocizzerebbe la scansione AV, richiederebbe poca RAM e consentirebbe almeno di usare il proxy HTTP come filtro degli URL.

A parole:
ClamAV ha un demone clamdscan che si contatta tramite socket locale o porta TCP, oppure ha una libreria libclamav. Credo che HAVP su ZeroShell usi la libreria, quindi andrebbe modificata la configurazione in "/tmp/havp.config" per fargli usare la porta TCP ed il finto ClamAV dovrebbe essere un eseguibile, o più semplicemente uno script della shell che rimane in ascolto su quella porta e riporta la falsa risposta che tutto va sempre bene.

Nei fatti:
Il problema è farlo: chi si offre volontario?
Top
Profilo Invia messaggio privato
lannet2k



Registrato: 08/01/14 11:19
Messaggi: 24

MessaggioInviato: Ven Gen 17, 2014 3:06 pm    Oggetto: Rispondi citando

Riesumo il tuo post con dispiacere,
anche su ZS 3 con alix il problema persiste, abilitando il proxy la macchina muore sia sull'interfaccia di rete che sulla seriale
Sad
Un vero peccato Evil or Very Mad
Top
Profilo Invia messaggio privato
Mostra prima i messaggi di:   
Nuovo argomento   Rispondi    Indice del forum -> Dispositivi Embedded Tutti i fusi orari sono GMT + 1 ora
Pagina 1 di 1

 
Vai a:  
Non puoi inserire nuovi argomenti
Non puoi rispondere a nessun argomento
Non puoi modificare i tuoi messaggi
Non puoi cancellare i tuoi messaggi
Non puoi votare nei sondaggi


Powered by phpBB © 2001, 2005 phpBB Group
phpbb.it