LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Software (https://www.linuxquestions.org/questions/linux-software-2/)
-   -   eKiosk (https://www.linuxquestions.org/questions/linux-software-2/ekiosk-207946/)

lramos85 07-21-2004 01:11 PM

eKiosk
 
Hi, I have several old computers (P-II, 233mhz, 128mb ram) that I want to make them into kiosk, more specifically I need the computers to open up a browser in full screen in a specific website and they can only browse that website (I think I know how to make it so it brose only one website) but the problem is that I need it to lock everything else, they cannot go into the browser preferences or quit the browser, any Ideas on how to do this? Another question would be which Distribution to use for these computers, I was thinking Gentoo. Thanks.

btw...this computers are going to be used in a library and should only browse the library catolog.

-Luis R.

oot 07-21-2004 01:37 PM

Hmm... IIRC, you can run a program directly under X, without a window-manager. I don't remember how to do that though, but you can probably look it up somewhere on this site.

What I would do is have the command to do this inside of a loop in the login script of a user account on that computer (as tempting as it may be, do not set up your kiosk so that your day-to-day users are root... if somebody figures out how to break out of our loop, that would be huge trouble for you).

Anyway, your script should do the following (this is psuedo-code, not any particular lanugaue):
Code:

exit=0;
while(exit == 0)
{
        <command to start browser as only X program>
        exit=chk_passwd();
}

int chk_passwd()
{
        echo "Please enter your password. If you do not have a password, just press enter."
        get(password);
        if(checksum(password)==<whatever you calculate to be the checksum of your chosen password>)
                return 1;
        else
                return 0;
}

Put it in .bashrc or .profile for the user you've decided is the kiosk user. Then, to get the computers started, all you have to do is log in as that user in the morning. This is not a 100% secure solution (for example, if the user presses ctrl+c while being asked for a password, they can break out of the loop... you may be able to trap this somehow in a bash script, but I'm not sure...), but it'll keep most of your users where they belong (I assume you are protecting against ignorance, not maliciousness).

Also, if you want to let it only access the library catalog, set up a firewall using iptables and allow just the appropriate server(s) and block everything else.

lramos85 07-21-2004 01:53 PM

Hey, Smart, I didn't know you can do that, I need to learn more Bash Programming, I'll try it anyways, and Hope it works. Thanks, feel free to give more ideas :).

oot 07-21-2004 02:07 PM

No problem.

I'm away from my Linux box at the moment... this evening, when I'm there and able to test things, I'll try to give you more detailed instructions.

oot 07-21-2004 06:58 PM

Hmm... this is easier to set up than I thought. I've already got the main script written. I'll write a few little things to go with it to help set it up, and then put the whole thing in a package for you. I should have it up sometime either this evening or tomorrow evening.

lramos85 07-22-2004 02:18 PM

Hey, Thanks ALOT oot, I really appreciate what youre doing, I've been testing somethings too but your idea for locking it is the best, I'll check your code when you send it and I can try adding somethings, again Thanks.

oot 07-22-2004 04:58 PM

You're welcome. It's a fun challenge to work on this.

I wound up putting together a package of scripts useful for running a kiosk that I've named QuickLinuxKiosk. You can download it here . Please be sure to follow the instructions in "INSTALL" before running setup.

I'll probably be making improved versions of this later... email me if you want update announcements.

lramos85 08-03-2004 11:59 AM

Hey, Sorry I haven't posted back or given you any feedback or whatever but I'm in the process of moving to a new appartment and its going to take like one week, plus my DSL connection needs to transfer :*(. See you.

-Luis


All times are GMT -5. The time now is 07:56 PM.