[icecast-dev] icecast2 ogg vorbis client request headers

Michael Smith
Fri, 06 Aug 2004 14:57:40 -0000

On Friday 02 April 2004 16:00, Dave St John wrote:
> hmmm. never heard of svn
> so we can no longer use cvs?

Xiph.Org has started using 'Subversion' (commonly abbreviated
'SVN') instead
of CVS - so all new development is happening in the subversion repository.

>
> >Let me know if you want more details.
>
> Absolutely, spill the beans im all ears :)

Well, we now have client authentication. Off by default, of course.

The design allows plugging in new authentication modules (though not
dynamically loading them) relatively easily. Currently only one method is
implemented - "htpasswd".

With this authentication method, there's one configuration parameter:
"filename" - pointing at an htpasswd file. This is similar to
apache's
htpasswd files (though more limited, I think).

Each line in the file consists of a username, and an md5 hash of the password.
We don't currently have a tool to create these automatically. Writing one
would be fairly simple.

To configure it, open your main icecast config file, and add a <mount>
section
as normal for the mountpoint you want this on. Then add an authentication
node inside it, so it'll look something like this:

<mount>
  <mount-name>/authenticated-mountpoint.ogg</mount-name>
  <authentication type="htpasswd">
    <option name="filename"
value="/path/to/your/password/file"/>
  </authentication>
</mount>

All pretty straightforward apart from the lack of a tool to create the
password file. Using fairly standard unix tools, you can use this to get the
md5sum you'll need (using a test password of 'foobar':
   echo -n "foobar" | md5sum

This will print out something like
  3858f62230ac3c915f300c664312c63f  -

You can then add it to your password file as follows (in this example, the
user is called "testuser"). Open up the password file, and add a new
line,
containing:
testuser:3858f62230ac3c915f300c664312c63f

So, there you go.

Proper tools for creating this file will be added eventually.

Mike