ACL with multiple CIDRs does not honor rule id
- Lingua principale
- Java
- Stelle
- 3.1k
- Fork
- 1.4k
- Merge medio
- 6g 19h
- PR unite (30g)
- 32
Descrizione
### problem
If you have a CIDR list like:
rule 1: [ "1.2.3.4/32", "2.3.4.5/32"] tcp allow port 22
rule 65535: [ "0.0.0.0/0"] deny port any
What you end up with when inspecting the VR is:
```
-A ACL_OUTBOUND_eth12 -d 1.2.3.4/32 -p tcp -m tcp --dport 22 -j ACCEPT
-A ACL_OUTBOUND_eth12 -j DROP
-A ACL_OUTBOUND_eth12 -d 2.3.4.5/32 -p tcp -m tcp --dport 22 -j ACCEPT
```
This is clearly not the desired behavior.
### versions
Cloudstack 4.22.0
### The steps to reproduce the bug
See description
### What to do about it?
Don't use more than one CIDR per rule
Guida per i contributori
Apri la guida per i contributori
Direzione di ricerca
Riproduci il problema utilizzando le due regole ACL del report, quindi ispeziona la catena ACL_OUTBOUND_eth12 generata nel router virtuale. Traccia l’ordine di più CIDR in una regola e verifica che il DROP della regola non preceda la corrispondenza CIDR rimanente; l’attività è completata quando tutti i CIDR nella regola di allow vengono valutati prima della regola successiva.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Ambito
- authorization, networking, security
- Tipo di issue
- Bug
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Stato di attività
- Tranquilla
- Chiarezza
- Abbastanza chiara
- Idoneità per principianti
- 45/100