ACL with multiple CIDRs does not honor rule id
- Linguagem predominante
- Java
- Estrelas
- 3.1k
- Forks
- 1.4k
- Merge médio
- 7d 14h
- PRs com merge (30d)
- 31
Descrição
### 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
Guia de contribuição
Direção de pesquisa
Reproduza o problema usando as duas regras ACL do relatório e, em seguida, inspecione a cadeia ACL_OUTBOUND_eth12 gerada no roteador virtual. Rastreie como vários CIDRs em uma regra são ordenados e verifique se o DROP da regra não precede a correspondência CIDR restante; considera-se concluído quando todos os CIDRs na regra de allow são avaliados antes da próxima regra.
Escrita pelo modelo de indexação a partir do texto da issue.
Avaliação
- Domínio
- authorization, networking, security
- Tipo de issue
- Bug
- Dificuldade
- 4/5
- Tempo estimado
- 3-5 dias
- Status de atividade
- Pouca atividade
- Clareza
- Razoavelmente clara
- Facilidade para iniciantes
- 45/100