• We value your experience with Plesk during 2024
    Plesk strives to perform even better in 2025. To help us improve further, please answer a few questions about your experience with Plesk Obsidian 2024.
    Please take this short survey:

    https://pt-research.typeform.com/to/AmZvSXkx

  • We are developing a new feature in Plesk that will help you promote your websites or business on social media. We want to conduct a one-hour online UX test to present the prototype and collect feedback. If you are interested in the feature, please book a meeting via this link.
    Thank you in advance!
  • The Horde webmail has been deprecated. Its complete removal is scheduled for April 2025. For details and recommended actions, see the Feature and Deprecation Plan.
  • We’re working on enhancing the Monitoring feature in Plesk, and we could really use your expertise! If you’re open to sharing your experiences with server and website monitoring or providing feedback, we’d love to have a one-hour online meeting with you.

Resolved plesk firewall rules do not show up in iptables -L

PeterKi

Regular Pleskian
I have blocked some spammer IPs using a custom rule and run the activation script.
At first I added 2 IPs and checked with IPtables -L
Everything was as expected
Then I added another 3 addresses and checked that the activation script lists the appropriate drop lines.
After running the activation script the plesk GUI shows the banned IPs correctly (see attached screenshot)
But if I do an iptables -l or ip6tables -L I do only see 3 of my blocked addresses.
iptables -L | grep DROP.*[0-9].*anywhere
DROP udp -- 149.154.100.84 anywhere
DROP udp -- 178.159.36.58 anywhere
DROP udp -- 185.234.219.30 anywhere
DROP tcp -- 149.154.100.84 anywhere
DROP tcp -- 178.159.36.58 anywhere
DROP tcp -- 185.234.219.30 anywhere

How can I fix the issue?
 

Attachments

  • 2018-10-01 09_47_57-Plesk Onyx 17.8.11.jpg
    2018-10-01 09_47_57-Plesk Onyx 17.8.11.jpg
    27 KB · Views: 8
Last edited:
I found that I did not check the output properly.
2 of the IP addresses in question did resolve to a name thus they did not show up in the iptables -L as IP adresses but as DNS records.
Sorry, for raising an issue which in fact an error by me.
Nevertheless I did find a bug in the version checking part of the firewall script /opt/psa/var/modules/firewall/firewall-active.sh
The line: iptables_version=`/sbin/iptables --version | awk -F '.' '{print $2$3}'`
does return the value 60 on version 1.6.0
Thus the version check if [ $iptables_version -gt 420 ] does the comparison [60 -gt 420 ] which of course leads to unwanted behavior.
The else part does the job too but results in an unnecessary longer run time of the script.
Version checking is not an easy task and it is implemented too optimistic.
May be it is easier to just check if the -w option is available by something like man iptables | grep -- --wait
 
Last edited:
Back
Top