Very simple, either go to your firefox profile folder and create a file called user.js and place the following code in your user.js file.
user_pref("general.appversion.override", "5.0 (X11)");
user_pref("general.buildID.override", "20140421162246");
user_pref("general.oscpu.override", "Linux i686");
user_pref("general.platform.override", "Linux i686");
user_pref("general.useragent.override", "Mozilla/5.0 (X11; Linux i686; rv:24.0) Gecko/20100101 Firefox/24.0");
Upon first boot up, the above settings will be replaced with your custom settings, obviously change them to suit your needs, if they are ever inadvertently modified as long as the user.js is still in your Firefox profile, they will be replaced upon next boot up. Another option is to load up about:config in the Firefox browser and manually alter those settings. you can't just modify one, you have to modify all of them, modifying the user agent to say Linux but not modifying oscpu so it still says Windows would not further anonymity you but but make it way easier to fingerprint and identify you.
Any website which uses browser fingerprinting can still identify your browser and operating system correctly, all browsers and operating systems send data in a certain manner, regardless of your http headers sent, analyzing this data can still correctly identify this information.
Bottom Line: Modifying HTTP headers may protect you in 5 or 10% of hacking attempts by websites run by amateurs by confusing them which vulnerabilities to check for, but any website designer with a half decent knowledge of website design and programming will still be able to correctly identify your OS and browser and you will actually be increasing your uniqueness by trying to fool them not decreasing it.