SSH: Secure SHell

In computing, Secure Shell or SSH is both a computer program and an associated network protocol designed for logging into and executing commands on a networked computer. This protocol provides secure encrypted communications between two untrusted hosts over an insecure network.

SSH in radio streaming

In a radio streaming environement, we can use SSH to control a streaming server running on an Internet machine, and we can eventually control a remote listener, in a scenario where the listener's computer is not being used by a human, but is a "standing alone" computer that could pass audio to a radio antenna in an automated environement!

Remotely contolled server

On a server running GNU/Linux or a Macintosh OS, we can fully control the streaming server software with SSH.

Let's have a closer look to a scenario where a server in the Internet is running the Icecast 2 software:

The client and the broadcaster Operating Systems contact via SSH an Internet server, running GNU/Linux or Macintosh OS, where the SSH service is active and running.

Prerequisites
  • The server has SSH activated (standard by GNU/Linux OS)
  • The remote user has a username and a password for accessing the server
  • The registered username has the right to control the streaming software

Activation of SSH on a streaming server must be performed by the server's Administrator. It is however a normal standard for servers in the Internet.

To gain access to a server via SSH, we must have a valid account on the server: username and password are required.

The username and password correspond to a user account with own rights. We need the right to manipulate the streaming server software's own configuration files, and the right to start/restart the streaming service. In the case of an Icecast 2 server, the server administrator could to add the User ID to the "icecast2" the Group ID !

Access via SSH the Icecast 2 service

The client has an SSH service running on his/her computer. On GNU/Linux and Macintosh OSs this installed by default. On a Microsoft OS, the SSH software has to be installed: a reliable and simple way to do it is using the PuTTY.exe software for windows, using the SSH protocol.

To gain a login you should open a terminal:

user@host:~$ ssh user@server

If it's the first time that your machine contacts this host, you will be prompted for a confirmation, you can safely answer "Yes" to any confirmation question.

There you are! If your username and password are exact, than you already gained access. The Icecast 2 configuration files are, in a normal GNU/Linux distribution, located in the /etc/icecast2 directory. To edit it you can use the "vim" editor:

user@server:~$ vim /etc/icecast2/icecast.xml

<>The "vim" editor is a bit tricky... To start writing, press the Insert button on your keyboard. Once you are finished editing, to exit the editor saveing the modifications, you should press (in sequence): Esc : x
To exit the editor without saving the modifications, you should press (in sequence): Esc : q !

Now you can restart the Icecast 2 service typing:

/etc/init.d/icecast2 restart