diff --git a/conf/icecast.xml.in b/conf/icecast.xml.in index 481c7ff2c7859536fca531ee5b5fdb272bb63148..2575542c9599344e8194f1c1c9c40a11f800db37 100644 --- a/conf/icecast.xml.in +++ b/conf/icecast.xml.in @@ -110,6 +110,11 @@ + + diff --git a/doc/icecast2.hhc b/doc/icecast2.hhc index 5c97e220f2ab9c07269f416b413eb141f1722655..3f9618d37ca5d53f9cb229efa3790226724af26c 100644 --- a/doc/icecast2.hhc +++ b/doc/icecast2.hhc @@ -41,6 +41,10 @@ +
  • + + +
  • diff --git a/doc/icecast2_listenerauth.html b/doc/icecast2_listenerauth.html new file mode 100755 index 0000000000000000000000000000000000000000..25280622dadf71350e3760b74c789d69895f3684 --- /dev/null +++ b/doc/icecast2_listenerauth.html @@ -0,0 +1,53 @@ + +
    + +

    Icecast 2 Listener Authentication

    +
    +
    +
    +
    +

    Listener Authentication

    +

    Listener authentication is a feature of icecast which allows you to secure certain mountpoint so that in order to listen, a listener must provide a username and password. With this feature a simple pay-for-play operation can be setup. This section will show you the basics of setting up and maintaining this component.

    + +
    +
    +
    +

    HTPASSWD Listener Authentication

    +

    Config File Entries

    +

    In order to use listener authentication, you MUST configure a mount specific option. This means that you have to provide a <mount> section in the main icecast config file. The following is an example :

    +
    +    <mount>
    +        <mount-name>/example-complex.ogg</mount-name>
    +        <authentication type="htpasswd">
    +                <option name="filename" value="myauth"/>
    +        </authentication>
    +    </mount>
    +
    +

    To support listener authentication you MUST provide at a minimum <mount-name> and <authentication>. The mount-name is the name of the mountpoint that you will use to connect your source client with and authentication configures what type of icecast2 authenticator to use. Currently, only a single type "htpasswd" is implemented. New authenticators will be added later. Each authenticator has a variable number of options that are required and these are specified as shown in the example. The htpasswd authenticator requires only a single parameter, filename, which specifies the name of the file to use to store users and passwords. Note that this file need not exist (and probably will not exist when you first set it up). Icecast has built-in support for managing users and passwords via the web admin interface. More on this later in this section.

    + +

    Icecast supports a mixture of streams that require listener authentication and those that do not. Only mounts that are named in the config file can be configured for listener authentication.

    +
    +
    +
    +

    Configuring Users and Passwords

    +

    Once the appropriate entries are made to the config file, connect your source client (using the mountpoint you named in the config file). To configure users and passwords for this stream you must use the web-based admin interface. Navigate to http://server:ip/admin/stats.xsl to begin. If you have configured everything properly, you should see a screen like the following :

    + +

    You will see a red key in front of all mountpoint configured for listener authentication. Also note that this page will only show CONNECTED mountpoints.

    +

    To manage users and passwords for this mountpoint, click on the red key or follow the "Manage Authentication" link. The following screen will be shown :

    + +

    This screen will show all the users configured for this mountpoint. Adding users is as simple as entering a username and password in the fields and clicking "Add New User". Note that usernames MUST be unique and there are NO restrictions on passwords. You can delete users by clicking the appropriate delete link next to each user.

    +
    +
    +
    +

    Finishing it all off

    +

    Ok, so you've created your users, and you have everything setup properly, how do your users login ? Well, we've provided a simple login form that you can use for this purpose. This page (http://server:port/auth.xsl) will bring up a form that users can use to enter their username and password.

    + +

    This page will serve a m3u with the username and password and in most cases should open the correct media player and begin playing your stream

    +
    +
    +
    +

    A note about players and authentication

    +

    We do not have an exaustive list of players that support listener authentication. We use standard HTTP basic authentication, and in general, many media players support this if they support anything at all. Winamp and Foobar2000 support HTTP basic authentication on windows, and XMMS supports it on unix platforms.

    +
    + + diff --git a/doc/index.html b/doc/index.html index 45077d570f1d8720a57101929ddc67d1549ec84f..dd8a571d3f86393631695bf1134735b1df3bf4cc 100755 --- a/doc/index.html +++ b/doc/index.html @@ -11,6 +11,7 @@
  • Server Statistics
  • Relaying
  • Listing in a YP directory +
  • Listener Authentication
  • Win32 specific documentation
  • Glossary
  • FAQ diff --git a/doc/listener_auth1.jpg b/doc/listener_auth1.jpg new file mode 100644 index 0000000000000000000000000000000000000000..39e15fe35e1b89b28b1777c4c277f2bf0945bdeb Binary files /dev/null and b/doc/listener_auth1.jpg differ diff --git a/doc/listener_auth2.jpg b/doc/listener_auth2.jpg new file mode 100644 index 0000000000000000000000000000000000000000..3dfb6081423b458ca572b6c0aad1ac094c3c040d Binary files /dev/null and b/doc/listener_auth2.jpg differ diff --git a/doc/listener_auth3.jpg b/doc/listener_auth3.jpg new file mode 100644 index 0000000000000000000000000000000000000000..1a2cc1b4f688e4d168eeb1c381b5337574549e95 Binary files /dev/null and b/doc/listener_auth3.jpg differ