[Note: to install the following programs on Ubuntu, make sure that you have the Universe repository enabled. You can either use the terminal, or Synaptic. For more information on how to install software on Ubuntu, see this article. Generally you can just type the following in the terminal: sudo apt-get install program.]
If you don't already have Web hosting, I recommend Site5 for Linux Web hosting. Site5 can run popular content management systems like Drupal and WordPress.
Quanta Plus and Kompozer (formerly NVU) both have WYSIWYG editing features. I highly recommend writing your HTML by hand though. WYSIWYG editing is not a good way to make web sites. Quanta Plus probably has the most features of any visual HTML editor on Linux.
It isn't finished yet, but there is a version of HTMLkit for Linux in development. HTMLkit is a great program and it will be interesting to see how this project turns out.
The GIMP is the classic image editing program for Linux (and Windows/Mac). It comes with Ubuntu. You can use it to slice up images for the Web with the following menu option: Filters —> Web —> Pyslice.
Inkscape is a great vector graphics program for Linux (and Windows/Mac). You can use it to make web site layouts, clip art, buttons, etc.
It's still in beta, but there is a GPL version of Xara Xtreme for Linux now. I've installed version 0.7 on my computer and it looks like an excellent option for working with graphics on Linux. I highly recommend giving Xara Xtreme a try.
UPDATE on 19 May 2008: Filezilla FTP for Linux is now out! Filezilla is a great FTP program for Windows that has been ported to Linux. I highly recommend trying it. It supports sFTP too. I downloaded it through Synaptic on Ubuntu Hardy Heron.
I used to use Konqueror on Ubuntu (GNOME) as my main FTP program. It works really well. I can split the Konqueror window (right click on the status bar) and FTP to several servers at once. I have it set up to open my PHP and CSS files in Quanta on a double-click for remote editing.
gFTP is another good FTP program, but I prefer Konqueror because I can quickly access multiple servers at once. Filezilla (mentioned above) is probably a better choice than gFTP.
Try KImageMapEditor. The GIMP also has a tool for this under Filters —> Web —> ImageMap.
There are many free open source content managment systems. I recommend Drupal and WordPress. There are also many free photo gallery scripts available. For information about other PHP/MySQL content management systems, check out OpenSourceCMS.com.
There are also many web application frameworks to choose from, such as Ruby on Rails (Ruby) and Django (Python). Wikipedia has a long list of web application frameworks, including ones written in PHP like CakePHP, CodeIgniter, and Symfony.
Installing PHP, MySQL, Postgresql, Ruby, Python, and other web development tools on Linux is very easy. If you are using Ubuntu, see the article how to install anything on Ubuntu for more information.