Como faço para bloquear portas com iptables em sistemas operacionais Linux?
Os números de portas que são reconhecidas pela Internet e outros protocolos de rede, permitindo que o computador possa interagir com os outros. Cada servidor Linux tem um número de porta (veja o arquivo /etc/services. Por exemplo:
1. Porta TCP 80 - Servidor HTTP
2. Porta TCP 443 - Servidor HTTPS
3. Porta TCP 25 - Servidor de email
4. Porta TCP 22 - Servidor remoto chamado OpenSSH
5. Porta TCP 110 - Servidor de entrega de emails v3 chamado POP3 (Post Office Protocol)
6. Porta TCP 143 - Servidor de mensagens - gerencia mensagens de email chamado IMAP (Internet Message Access Protocol)
7. Porta TCP / UDP 53 - Servidor de domínios chamado DNS (Domain Name System)
Bloquear porta de entrada
A sintaxe é a seguinte para bloquear a porta de entrada usando o iptables:
/sbin/iptables -A INPUT -p tcp --destination-port {NÚMERO-DA-PORTA} -j DROP
### Usar a interface eth1 ###
/sbin/iptables -A INPUT -i eth1 -p tcp --destination-port {NÚMERO-DA-PORTA} -j DROP
### Apenas bloquear a porta para o IP ou para a subnet ###
/sbin/iptables -A INPUT -i eth0 -p tcp --destination-port {NÚMERO-DA-PORTA} -s {ENDEREÇO-IP} -j DROP /sbin/iptables -A INPUT -i eth0 -p tcp --destination-port {NÚMERO-DA-PORTA} -s {ENDEREÇO-IP/SUBNET-AQUI} -j DROP
Para bloquear a porta 80 (servidor HTTP), digite na linha de comando (ou adicione em seu script iptables):
# /sbin/iptables -A INPUT -p tcp --destination-port 80 -j DROP # /sbin/service iptables save
Bloquear entrada para porta 80, com exceção para o endereço IP 1.2.3.4
# /sbin/iptables -A INPUT -p tcp -i eth1 -s ! 1.2.3.4 --dport 80 -j DROP
Bloquear porta de saida
A sintaxe é a seguinte:
/sbin/iptables -A OUTPUT -p tcp --dport {NÚMERO-DA-PORTA} -j DROP
### Usar a interface eth1 ###
/sbin/iptables -A OUTPUT -i eth1 -p tcp --dport {NÚMERO-DA-PORTA} -j DROP
### Apenas bloquear a porta para o IP ou para a subnet ###
/sbin/iptables -A OUTPUT -i eth0 -p tcp --destination-port {NÚMERO-DA-PORTA} -s {ENDEREÇO-IP} -j DROP /sbin/iptables -A OUTPUT -i eth0 -p tcp --destination-port {NÚMERO-DA-PORTA} -s {ENDEREÇO-IP/SUBNET-AQUI} -j DROP
Para bloquear a porta de saida # 25, digite:
/sbin/iptables -A OUTPUT -p tcp --dport 25 -j DROP /sbin/service iptables save
Voce pode bloquear a porta # 1234 para o endereço IP específico exemplo 192.168.1.2
/sbin/iptables -A OUTPUT -p tcp -d 192.168.1.2 --dport 1234 -j DROP /sbin/service iptables save
Como posso registrar um log das portas?
A sintaxe é a seguinte:
### Registrar log ####
### Se você gostaria de registrar pacotes bloqueados para o syslog, devemos registrá-lo primeiro ###
/sbin/iptables -A INPUT -m limit --limit 5/min -j LOG --log-prefix "PORTA 80 BLOQUEADA: " --log-level 7
### Agora bloqueamos ###
/sbin/iptables -A INPUT -p tcp --destination-port 80 -j DROP







