Although Ubuntu 9.10 (aka Karmic Koala) ships with a command line firewall script – ufw (Uncomplicated FireWall) – for configuring IPTables (netfilter), the firewall application built into the Linux kernel, it does not come with a graphical firewall client for use by those not comfortable with managing IPTables from the command line. So in order to configure IPTables using a graphical interface, you will have to install one yourself.
Luckily, the graphical interface to ufw, Gufw, is in the main repository, and you can install it from a shell terminal, via Synaptic, or via the new Ubuntu Software Center. For this tutorial, let’s install it from Ubuntu Software Center.
From the menu click on Applications > Ubuntu Software Center, and type in ‘gufw’ in the search bar. You may type in ‘firewall’ if you want to see all the other (graphical) firewall clients available. The screenshot below shows the results of my search. Select Gufw and click on the arrow at the end of the line.
On this next screen shown below, click on the Install button. After authenticating, it will only take about a minute for the installation to complete.
An entry for Gufw will be placed in the menu tree at System > Administration > Firewall configuration. By default, Gufw is not enabled as shown in the screenshot below. To enable it, click on the check box next to Enabled.
Gufw – disabled
The default firewall policy is to deny all connections to the PC on which Gufw is guarding. Outbound connections are permitted. If you need to, you may modify the default policy by clicking on the ‘Add’ button. Gufw has several preconfigured services and programs that you may select from, or you may just create one.
For each program or service, you may choose to Allow, Deny, Reject, or rate Limit it. Denying a connection will silently drop it while rejecting a connection will drop it and send a message back to the source address. For obvious reasons, it is better to Deny rather than Reject (Note: There is more to this than my simple explanation here, but in the spirit of ufw, I have chosen to keep the explanation uncomplicated).
Several services – FTP, IMAP, POP3, SMTP, IPP, VNC, NFS, ssh, Telnet, and Netbios-ssn – are already preconfigured.
Some programs – Amule, Deluge, Nicotine, Transmission, KTorrent, qBittorent – preconfigured programs.
The ‘Simple’ configuration tab allows you to set very basic policies. For example. you may Allow, Deny, Reject, or rate Limit a TCP or UDP connection by port number or port range.
On the ‘Advanced’ configuration tab, you can set more specific policies as shown below.
This is a screenshot of the main window showing example policies added from the last two screenshots above.
Compared to other graphical firewall clients, Gufw is very simple to use. However, it offers fewer “advanced” configuration options, and it is not minimized to the system tray when you close the application window. If you need a firewall client with more configuration bells and whistles, you should try Firestarter or KMyFirewall. Both are available in Ubuntu’s repository.