What are SLD files?
According to this Wikipedia entry, “a Styled Layer Descriptor (SLD) is an XML schema specified by the Open Geospatial Consortium (OGC) for describing the appearance of map layers.”
How do you produce them?
For the brave you can manually create SLD files. For help with this, visit GeoServer’s SLD Cookbook. Unfortunately, for most people this approach is difficult and error prone.
For those with ArcGIS, the Arc2Earth extension is the easiest tool I have used to create SLD files. Their blog post Export Map Symbols to Styled-Layer Descriptor (SLD) describes the process. For small projects their Community Edition is available for free.
How do I upload them?
On Style page select the layer to be styled, and then click the Upload option in the lower-right panel.
You will be prompted with a file dialog where you’ll select the SLD file to upload. You have two options here. The first is a plain old SLD file without any external graphics. If you have external graphics to upload (for example, if the output of the Arc2Earth SLD export included a graphics directory) include a graphics directory containing the referenced graphics with the SLD file in a ZIP file.
Once successfully uploaded the style of the selected layer will be refreshed to the show the style defined in the file.
Warning: there are known problems with reading SLD files that define style rules depending on data with less than and greater than symbols (< and >). Currently GeoServer treats these as XML tag delineators which cause obvious problems.