Bloquear serviço smtp para um centos de IPs 7 Firewall

2

Eu gostaria de saber como bloquear um IP para usar o serviço smtp em um servidor com centos 7 firewall. Eu tento usar algo assim:

   firewall-cmd --permanent --zone="public" --add-rich-rule='rule family=ipv4 source address=[ipadress] --remove-service=smtp'

mas não é a sintaxe correta

Ou devo bloquear as portas TCP 25, 465 e 587?

também se alguém puder me dizer como fazer isso automaticamente, obter ip de um arquivo (se possível) seria ótimo

    
por Mik 16.05.2015 / 20:09

1 resposta

1

A sintaxe correta, conforme descrito na manpage firewalld.richlanguage(5) , é:

# firewall-cmd --zone="FedoraWorkstation" \
  --add-rich-rule='rule family=ipv4 source address=1.2.3.4 service name=smtp reject'
success

# iptables-save | grep 1.2.3.4
-A IN_FedoraWorkstation_deny -s 1.2.3.4/32 -p tcp -m tcp --dport 25 -m conntrack --ctstate NEW -j REJECT --reject-with icmp-port-unreachable

Observe que isso se aplica ao tráfego de entrada na porta 25 / tcp, conforme descrito no arquivo de serviço /usr/lib/firewalld/services/smtp.xml :

<?xml version="1.0" encoding="utf-8"?>
<service>
  <short>Mail (SMTP)</short>
  <description>This option allows incoming SMTP mail delivery. If you need to allow remote hosts to connect directly to your machine to deliver mail, enable this option. You do not need to enable this if you collect your mail from your ISP's server by POP3 or IMAP, or if you use a tool such as fetchmail. Note that an improperly configured SMTP server can allow remote machines to use your server to send spam.</description>
  <port protocol="tcp" port="25"/>
</service>
    
por 17.05.2015 / 13:22