Ubuntu kiosk based on 9.10

Updated 05/24/2011: Click here for the newest kiosk build based on Ubuntu 10.04.1.

Below is a the link for a kiosk build of Ubuntu based on 9.10. This build is a specific configuration of Ubuntu that will automatically login as a kiosk user. The kiosk user's xsession consists only of a single Firefox Window.

Be sure to see the FAQ at the bottom.

It has been designed so that the kiosk user can only use this Firefox window. I have taken every measure I could think of to disable the opening of other windows and closing of others. If the Firefox window is closed, the session ends and restarts gdm.

Instructions
-----------
1). Boot to CD room. Press enter to boot to the live CD.

2). At the automatic login prompt, click cancel until a list of users appears. Click on itadmin and enter the following password:

changeme

3). Double click on prep-kiosk. This generates the SSH keys (lost during the remastersys process) and disables vt switching. At this point, it will restart gdm, so get ready to login again.

4). If you are using a wireless environment, double click on setup-wireless-network and follow the prompts. Network manager is not installed.

5). If you would like, install acrobat reader using the script install-acrobat, but be warned, it's not been tested.

6). Change the password for itadmin by double clicking on change-password.

At this point you are done. To have a seamless experience, double click lock-kiosk (but READ the following warning).

The script lock-kiosk will disable the login prompt. The machine will boot straight into the kiosk user's account to a full screen Firefox. The only way to manage the kiosk without "unlocking" it at this point is through ssh to port 22022 of the kiosk.

To unlock the kiosk, boot to the live CD, login as itadmin with the default password, and double click the unlock-host script (not unlock-kiosk). Boot to the disk, and you should again get the login prompt.

ubuntu-9.10-kiosk-public-r1.iso

MD5 hash: 6d86af9f0fd449013f3a31b3f2a60180

Thank you to my employer (Everett Community College) for allowing me to develop this, and thanks Alex for hacking it.

FAQ
----
How do I change the home page for the kiosk user?

To change the home page, change the associated settings in /home/kiosk/.mozilla/firefox/obw0c5n2.default/user.js. The three settings are towards the top and are browser.startup.homepage, browser.startup.homepage_override_url, and browser.startup.homepage_welcome_url. I have made note to create a script that does this.

Can the wallpaper be changed?

For the itadmin account, yes. Not for the kiosk user. The kiosk user's xsession only loads metacity and firefox, not gnome.

How do I restrict web browsing to only one or a few websites?

See http://jacob.steelsmith.org/content/blocking-websites-using-dansguardian



Touch screen kiosk

Hi, The solution is great and I cant wait for the release based on 10.04.
I have some issues with the curent release with installing touch screen (touch screen is Samsung LD220Z) and with the wireless network. I hope in the new release this will work fine.
Thanks again for the great work.

WEP key

Hi and thanks for this great project. I have one problem though, I can't put in a WEP key for Wireless network (for Kiosk user). Im allways asked for keyring password that I don't have. In the script (on the Desktop), I'm not asked for wep key so is there a way?

re: WEP key

Yes, but it's not easy. I'll work on a script or some way to automate that setup. Using wpa_supplicant should do the trick but it's not easy to setup. You could also try installing and running network-manager from itadmin, setting up the connection, and make it available for everyone.

Kudos and questions

This is the best I have seen yet, and will work great for my Job Application kiosk....great job!

Just a couple of config questions;

The Audio for Kiosk Mode appears to be muted. I need to unmute for my application (Flash Video Startup Screen)

Is there a way to hide the Google Search field? My proxy won't allow this function to be used, but it would be great if it wasn't there at all..

Once again, fantastic!

John

Do you want Firefox to remember the password for ...

Jacob, thanks so much for your work on this. I was wondering if there is any way to prevent the kiosk from asking to remember passwords? I imagine it would be something in User.js or Pref.js but I've tried adding user_pref("signon.rememberSignons", false);, which I thought is supposed to disable the password manager, but it still asks to remember passwords in kiosk mode. Thanks!

Problems

I installed the latest version and ran all updates, including up to 10.04.1 LTS.

I followed the instructions, including the "lock-kiosk" script.

After a reboot, firefox starts up but has a close button in the upper right. If you click on it, you can close it and go back to a logon. During this logon you can go to the bottom and change the session from xsession to gnome and it will go straight to a desktop.

Did upgrading to 10.04 screw something up? I am assuming that firefox should not be able to be closed?

Thanks,
Rob

Hi, great work. I tried to

Hi, great work.
I tried to substitute firefox with opera, so I modified .xsession in this way :
#/usr/bin/firefox
/usr/bin/opera --kioskmode --kioskresetstation

but when enter with kiosk user, the system automatically restart

what's wrong ?!

Did you install Opera?

It's not installed by default.

right mouse button

How can I enable right mouse button in itadmin session ?
Thanks for this great distrib !

right mouse button

How can I enable right mouse button in itadmin session ?
Thanks for this great distrib !

How can I save the settings

How can I save the settings permanently (even after reboot) once I've updated the .xsession/user.js file?

Display Settings

How can I access the display settings for user "kiosk" and make them stick?

root access

I'm keen on setting the root password to be in line with our other systems here, but can't do so as 'itadmin'. how can I do this?

root access

never mind, I changed it with sudo.. thanks anyway

re: root access

You can use this for any Ubuntu based system:

sudo su

type in your password and you'll be root. Then use:

passwd

to change your password.

Smaller image...

If I wanted to re-create an .ISO with Remastersys and I wanted to uninstall applications. Which apps would release the most space, thereby making the ISO smaller?

dpigs

The command dpigs is what you're looking for. I used it to trim Ubuntu down. It's already installed. Use 'man dpigs' at the command prompt for more information.

Network Manager

Can't seem to install Network Manager on this build. Any ideas?Thoughts? Thanks in advance.

sudo apt-get install

sudo apt-get install network-manager

Many Thanks!

Many thanks Jacob,

This is exactly what I was searching for. I do event photography and needed something simple (and free) that I could use as part of my on-site printing workflow.

I'll be tweaking this to make it work for me, and let you know how it goes.

Thanks again!

Updated to 10.10

...update...

I was able to upgrade to 10.10 - just make sure note to replace any existing configs when prompted.

Also, needed to update the R-Kiosk Firefox add-in. Other than that, all works like a charm.

Thanks

Update and disabling mouse clicks

Be aware that, according to http://blog.burlock.org/ubuntu/186--disabling-the-mouse-scroll-wheel-lef... the procedure has changed for disabling left clicks.

Update

Thanks for letting us know. I will be working on a 10.04 LTS build soon with more scripts.

keyboard indicator

Hi,
I have a Web Kiosk machine
and one Key on the keyboard to simulate ALT + shift(change the language)
Well, when the ALT key is disabled,this button does not work and user can not change language.
What solution do you recommend?

re: ALT is disabled

It is disabled using xmodmap commands in /home/kiosk/.xsession

ALT is disabled

And I don't remember off hand how I did it. I will reply again and let you know how I disabled it and how to enable it.

How to add language pack and deny some web site?

Hi Jacob,

Very good job! Great project! I install it in a restaurant! :)

Works wireless.

2 tiny questions for you :

1) How can add language pack to the already installed kiosk?

2) How to deny web site (like porn, sexual content,..) for the kiosk?

Thanks and waiting your answers.

Re: How to add language pack and deny some web site?

1). I believe you would install language-pack-*language* where *language* is the two character representation of your language.

2). Try opendns.com for the easiest solution.

Update Re: How to add language pack and deny some web site?

Hi Jacob,

I was able to setup a Squid/Dansguardian/iptables solution.

Working fine.

Link : www.zephyrsoft.net/files/linux-filtering-monitoring-howto.pdf

I am working on the language pack. :)

I am having fun with that. I will experiment more.

Thanks you very much.

Simon

window pop up

Hello. You did great! But I have a question. How can I allow window to pop up. I am having certificate issue in Firefox. How can I add an exception for certificates. I it not allowing the pop up window for adding exceptions. Thanks in advance.

The certificate issue might

The certificate issue might be solved by adding a security exception while logged in as itadmin, then copy the exception from the cert_override.txt file in

/home/itadmin/.mozilla/firefox/h47srl69.default/cert_override.txt

and paste it into the bottom of

/home/kiosk/.mozilla/firefox/obw0c5n2.default/cert_override.txt

certificate issue

Hello,

Is there a way to install a root certificate for the kiosk user ?

Best Regards

adobe reader in the kiosk account

Hi,
great tool but i too am have a similiar problem that i cannot resolve.
Basically for our application, we need the pdf function to work.
We have an internal site that links to a folder with pdf's and we want firefox to display the pdfs. I am using apache to serve the page and localhost is the url. It works great in itadmin with adobe reader but in kiosk mode, only a blank page is displayed. I think adobe is trying to run for the first time but i cannot see any windows other then firefox in kiosk mode so i cannot permit the adobe box from doing its first startup procedure. i have tried commenting out the line in .xsession and no luck.
do you have any advice on how i could achieve this?
Thanks

re: window pop up

You will probably need to either edit /home/kiosk/.devilspie, or comment the line devilspie & in .xsession to prevent devilspie from closing all non-firefox windows.

shutdown button

The tool is great, baut i have some problems. I'd like to draw shutdown button so user kiosk can just restart firefox or shutdown pc. I have some problem to install Huawei e1550 for 3g. I try to install network-manager-gnome, but it does not recognise my usb key.

This tool is excellence!

This tool is excellence! Will you create 10.4 lts version in the future?

re: This tool is excellence!

Yes, I am planning on working on a version based on 10.04.1. You can try upgrading the kiosk, and if it fails, just reinstall from the iso.

Amend the image

Hi ,

This tool is excellent . Question though , how does one build the image like this, or other words , can I install sth like office or another daemon and then make it into an alternate CD ?

ta,
gabliver

re: Amend the image

You will want to look into remastersys. This is what I used to build the kiosk image.

network-manager and usb-modeswitch

Hi Jacob, great job.

I'm need to activate a 3G modem with the kiosk. So I installed the network-manager and usb-modeswitch on the itadmin account, but is not working yet. I also need to activate it on the kiosk account but is asking for a password wich I can't find. Any suggestions?

Cheers.

re: network-manager and usb-modeswitch

You can use the itadmin account to change the password for the kiosk user. I don't remember what I set it to. =) At the command line, type:

$ sudo passwd kiosk

And you should be prompted to enter the new password.

I'm not sure about the hardware. If it works with a live CD, that would be very strange. I didn't do anything that would affect hardware use, that I know of.

Kiosk mode login screen website go to background

I have installed your ubuntu image with kiosk. When i go in firefox to a website with login screen. the login screen disappear to the backgrond and i can t login. I can t find de parameter to change this behavior

Have you suggestions

re: Kiosk mode login screen website go to background

See the comment below about disabling devilspie. If that doesn't work, then it's the rkiosk add-on for firefox. You'll want to start a full session (See below) for the kiosk user and remove that add on.

link broken?

This looks like an excellent tool. However, the iso download isn't working for me?

Change the screensaver

We are testing this out to replace our card catalog only pcs. So far it is working a lot better than the Windows XP boxes. Is there a way to disable the power save options and add a screen saver?

Thanks.

re: Change the screensaver

The power management options should be configurable by logging in as itadmin and using "Power management" under the System -> Preferences menu.

To configure the screensaver, you can edit the /home/kiosk/.xsession file as itadmin, and comment out the line that calls firefox and add gnome-session. Log out, then let the kiosk user log in. You should get a full desktop. The screen saver can be configured under System -> Preferences -> Screensaver.

re: Change the screensaver

Staff really likes the Kiosk system. We are still having issues with the power management and the scrensaver. We unlocked and edited the /home/kiosk/.xsession file then logged in as kiosk and made the changes. Logged out and back in as itadmin and edited the /home/kiosk/.xsession back but when you reboot as kiosk it appears that it didn't save any of the changes. Is there another step we need to do? Thanks.

Screensaver/ Power Options

Hi, I have been having the same problem and I think this may help you.
gksudo gedit /etc/X11/xorg.conf
-run this from the itadmin account and paste this into the file:

Section "ServerFlags"
Option "BlankTime" "0"
Option "StandbyTime" "0"
Option "SuspendTime" "0"
Option "OffTime" "0"
EndSection

I still can't change the screensaver but at least now the screen doesn't go blank.

not exist solution to set up

not exist solution to set up screensaver ?

Thanks for a great

Thanks for a great build.

One question: Is it possible to redirect the browser to its homepage after some x time of inactivity?

I know about one add-on that does that (Refresh2Page). Maybe it's possible to allow only this one add-on?

Many thanks,
Finnur