A software firewall inspects incoming and outgoing network packets to determine whether they should be allowed or blocked based on configured firewall rules. The document describes a training report on implementing a graphical user interface (GUI) version of iptables using Perl and the dialog tool. Key features of the SYS firewall implemented include authorizing users, limiting service access, filtering packets, network address translation (NAT), and masquerading. The GUI allows configuring and customizing firewall rules to block ping requests, drop all policies, and implement SNAT, masquerading, and DNAT.