Deixe-me dar um pouco mais de técnica para isso. Considere que ufw
é apenas um front-end user-friendly (ish) para o sistema subjacente netfilter
/ iptables
embutido no kernel.
Isso em mente, vamos ler suas regras em uma perspectiva iptables
.
Sua primeira regra seria esta:
iptables -A INPUT -p tcp --dport 80 -s 95.95.95.95 -j ACCEPT
Sua segunda regra seria esta:
iptables -A INPUT -p tcp --dport 80 -s 95.95.95.95 -d 207.15.15.15 -j ACCEPT
Em seu núcleo, no entanto, ambos aceitam a porta 80 no protocolo TCP a partir de 95.95.95.95. A única diferença é que você especifica o endereço IP de destino no filtro.
Se o seu sistema tiver apenas um endereço IP voltado para o público e o sistema não estiver atrás de um roteador ou NAT, as regras serão idênticas. Ou seja, supondo que o seu endereço IP de 207.15.15.15 permaneça o mesmo o tempo todo. Se o endereço IP mudar, a segunda regra que você inseriu não funcionará mais corretamente.
No entanto, se o seu sistema estiver por trás do NAT, você deve não usar o segundo método, que designa o endereço IP de destino, porque o sistema NAT não lerá os pacotes de maneira apropriada que corresponderia à regra "ACEITAR". Nesse caso, você deve usar apenas o primeiro. (Porque NAT reescreve o destino do pacote para o endereço IP interno, então em vez de 207.15.15.15 seu sistema verá um destino de 192.168.6.6 por exemplo, então a correspondência 'destino' extra que você adicionou irá impedir que o ACCEPT do pacote .)
Essencialmente, a menos que você esteja executando vários endereços IP e serviços diferentes em cada um deles com diferentes portas e conjuntos de regras, não é necessário especificar o endereço IP de 'destino' na regra ufw
com a parte to 207.15.15.15
.