Suponiendo servidor Apache y el modulo mod_rewrite esta activado, crea un fichero .htaccess con el siguiente contenido en el directorio público raíz de tu sitio web:
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^
http://www.tu.com [NC]
RewriteCond %{HTTP_REFERER} !^
http://tu.com [NC]
RewriteCond %{HTTP_REFERER} !^
http://tu2.com [NC]
RewriteCond %{HTTP_REFERER} !^
http://tu3.net [NC]
RewriteRule .*\.(gif|GIF|jpg|JPG)$
http://www.tu.com [R,L]
Esas reglas hacen que solo se pueda linkar a tus fichers GIF y JPEG desde "tu.com", "www.tu.com", "tu2.com" y "tu3.net".
Para permitir el linkado desde otras webs supongo que ya habrás pillado como funciona. Para denegar el linkado a tipos de ficheros adicionales, no tienes más que modificar la última regla:
RewriteRule .*\.(gif|GIF|jpg|JPG|png|mpeg|mp3)$
http://www.tu.com [R,L]
Si no te funcionan estas reglas... tienes más info en el manual de Apache:
http://httpd.apache.org/docs/mod/mod_rewrite.html
Probablemente si buscas algo asi como "rewrite rules hotlink" en google encontrarás otras muchas reglas que te serán de utilidad.