I don't see a huge pile of stuff you _NEED_ to do, but there are some things worth mentioning, based on that output.
1) It says there are no nameservers in your /etc/resolv.conf file. I find this odd, unless this machine is not connected to the internet. nameservers are used to resolve IP addresses, like when you type "google.com" into your browser, a nameserver converts that name into an IP address. NOT having them in the file is not a security concern in and of itself, that I'm aware, but I suppose, theoretically, some malicious process could stick some bad addresses in there, to hijack your DNS queries and send you to a wrong website, or to a malicious website. But if you don't have a lot of unneeded net-connected services running and listening for connections, and you don't run as root when browsing the internet, and you don't leave the machine unlocked and unattended in a public area, you should be OK. Having no entries in /etc/resolv.conf generally means you may have problems browsing the net, which evidently you are having no trouble doing
2) It says iptables modules are loaded, but no rules are active. This means that you are apparently not running an iptables firewall, but the kernel modules are loaded anyways. Having unused modules loaded is common, and not really bad news, but it would be prudent of me to suggest you look into some sort of firewall if you are not running one. On a secure server, unused kernel modules would likely not even be built, but on a desktop, especially an Ubuntu desktop machine, there are usually a LOAD of modules plugged in by default. No big deal.
3) Password aging: I don't know if ANYONE puts an automatic expiration date on their own user account on a home desktop computer, or on the root account on the home desktop either. It would be a wise suggestion for a server though, that allows user logins. It forces people to change their passwords once in a while, which is a good idea in general.
4) the /tmp folder: it's telling you that if /tmp ever gets full (either by normal use, or by someone maliciously putting a bunch of crap in there) it could cause problems because /tmp is in the same partition as the root filesystem itself.
Not a huge thing to worry about on a desktop machine especially, but you might consider checking /tmp occasionally and cleaning old stuff out of it, or coming up with a way of cleaning out /tmp completely at startup, or just before shutdown. Not an emergency anyhow. I don't know what *most* people do, but my /tmp folder is on the same partition as the rest of my OS.
5) disabling drivers for USB and firewire when not in use? Hmmm.. Overkill in my humble opinion. If you use a password on your machine, and don't leave it unattended in a place where unauthorized people can play with it, I wouldn't worry about this.
6) Logging: in the event that your machine ever gets hacked, and maybe gets the logs deleted, it could be handy to have the logs stored elsewhere than on the machine itself. This allows you to not only have access TO the logs in the event that your machine gets wiped, but also may prevent people who happen to hack into your machine, from covering their tracks by deleting logs. However, this becomes pointless if someone manages to get root access to the machine, because then they could likely wipe your remote logs too, if they were really determined. Remote logs storage is a good idea, but in my humble opinion, not required for a desktop machine, unless you just want to store a long long long history of logs without them occupying a lot of space on your machine.
7) auditd.. This is one of many system auditing tools, that monitors the machine for changes to things that should not be changing. Someone else may have some comments on this. I don't use auditd, so I don't want to comment either way.
8) ntpq.. NTP is a method of getting the correct time of day from a remote time server. It's a decent idea to configure the NTP client (daemon) on your machine, so your time of day is correct. Otherwise, you will need to check the time once in a while and adjust as necessary. Not a big deal, but ntpd is handy to use.
9) file integrity tool. Common tools for monitoring file integrity on a machine, include "rkhunter", "chkrootkits", and "tripwire". It's wise to run one or more of these on a somewhat regular basis, to make sure that nobody or nothing has rootkitted your machine (which means, a bad program has hidden itself inside some program or code on your machine) or that no hidden process has modified parts of your system without your knowledge. I use both rkhunter and chkrootkits on a semi-regular basis..
10) removing unnecessary compilers.. This is ridiculous for a desktop machine, particularly if you want to be able to build (compile) software yourself. On a server, YES, this is a good idea, for the reason mentioned in your report. But unless you want to run two systems in parallel, one to compile stuff on, and one to use and run stuff on, like I said, a desktop machine does not need to have its compilers removed.
Hope this clears some things up for you! And you'll surely get other feedback too, so stay tuned
Welcome to LQ,
Sasha