Ho il seguente script di bash per leggere i registri e controllare la forza bruta, quindi bloccare l'IP che viola usando iptables.Comandi di script Bash non funzionanti in cron
#!/bin/bash
#blah blah run some commands to get the IP
iptables -A INPUT -s $p -j REJECT --reject-with icmp-host-prohibited
echo "BANNED $p FOR $COUNT ATTEMPTS" |wall
ho fatto chmod 755. Quando eseguo il comando dal terminale funziona benissimo. Ma quando imposto un cronjob usando crontab -e
come root, ottiene l'IP ed echos il messaggio "BANNED ..." al muro ma nulla viene aggiunto all'elenco di iptables.
PS. Ho provato sia #!/bin/bash
e #!/bin/sh
ma senza fortuna.
perché avete bisogno di aggiungere regole di iptables in cron, se si desidera aggiungere iptables rulesand si desidera che siano persistenti è possibile aggiungerli a/etc/sysconfig/iptables o rc.local –
È necessario impostare correttamente il PERCORSO per trovare 'iptables'. –
che richiederebbe il riavvio del servizio iptables sì? –