woensdag 22 juli 2009

Account maken voor kiosk-pc

Op mijn huidige project kreeg ik onlangs het verzoek om voor de opendagen een account aan te maken, waarmee bij het inloggen een website getoond wordt en dit verder zo veel mogelijk dicht te timmeren. Een leuke uitdaging dus.

Het eerste wat ik gedaan heb om dit te realiseren, is het klonen van een standaard account en met het nieuwe account een keer inloggen, zodat er op de profielenserver een gebruikersprofiel aangemaakt wordt.

Iets wat ik zelf niet wist, is dat je de gebruikersinstellingen in een profiel (NTUSER.DAT) kan openen in de Registry Editor. Om dit te doen, klik je HKEY_USERS aan en ga je in het menu naar File > Load Hive... en dan blader je naar de NTUSER.DAT van de gebruiker in kwestie. Als je deze gekozen hebt, moet je een naam opgeven, dit is de tekst die je te zien krijgt in de Registry Editor dus het is niet echt van belang wat je hier invult. Vervolgens kan je de registersettings van de gebruiker gaan aanpassen.
Als eerste pas je in Software/Microsoft/Windows NT/CurrentVersion/Winlogon de waarde Shell aan. Deze verwijst standaard naar explorer.exe, maar in dit geval wordt het C:\Program Files\Internet Explorer\iexplore.exe -k http://www.call2.nl/. De parameter -k zorgt ervoor dat Internet Explorer in kiosk-mode gestart wordt, dus zonder controls. Helaas kan je door rechtermuisknop op een link en Open in new window... alsnog een 'normale' IE tevoorschijn toveren, dus is het tijd om wat policies in te stellen.
Maak in Software/Policies/Microsoft/Internet Explorer/Restrictions de volgende DWORD-waarden aan, allemaal met 1 als data.

NoBrowserClose - Alt-F4 werkt niet meer.
NoBrowserContextMenu - Rechtermuisknop geeft geen menu meer weer.
NoFavorites - Favorieten uitschakelen.
NoFileOpen - Ctrl-O uitgeschakeld.
NoHelpMenu - Helpfunctie uitschakelen. (het is mogelijk om via de help-browser een programma te starten!)
NoOpeninNewWnd - Ctrl-N opent geen nieuw venster meer.
NoPrinting - Printen via Ctrl-P blokkeren.

Hiermee is Internet Explorer voldoende dichtgetimmerd, maar dmv ctrl-alt-del is de Task Manager nog op te starten, waarmee ook eenvoudig nieuwe processen op te starten zijn. Maar uiteraard zijn ook daarvoor policies te vinden die vanalles onmogelijk maken voor de gebruiker. In de sleutel Software/Microsoft/Windows/CurrentVersion/Policies/System kan je onder andere de volgende DWORD-waarden aanmaken met 1 als data:

DisableChangePassword
DisableLockWorkstation
DisableTaskMgr

De namen van deze waarden lijken mij voldoende uitleg over de functionaliteit van deze policies ;-)
Dit zou voldoende moeten zijn om de gebruiker op de ingestelde pagina te houden - tenzij er in de pagina natuurlijk links worden opgenomen, maar dat is de verantwoordelijkheid van de ontwerper van de pagina. Het enige wat een gebruiker nu nog kan doen is via ctrl-alt-del uitloggen of het systeem afsluiten, maar bij mijn opdracht is er specifiek voor gekozen om dat open te houden. Mocht iemand weten in welke registry key dat uit te schakelen is, dan is dat uiteraard een welkome aanvulling op dit verhaal.

Om de hier ingestelde beperkingen te kunnen testen, moet je onder HKEY_USERS de door jouw opgegeven naam selecteren en File > Unload Hive... kiezen en het bestand NTUSER.DAT renamen naar NTUSER.MAN, zodat het een mandatory profile wordt en de settings niet door de user gewijzigd kunnen worden.
Vervolgens kan je inloggen met het account en zou je niets anders moeten kunnen, dan de ingestelde website bekijken.

5 opmerkingen:

  1. Het is NoOpeninNewWnd, niet NoOpeninNewWindow.
    Zal zodadelijk (morgen?) uitzetten hoer je hier doorheen prikt ;)

    BeantwoordenVerwijderen
  2. CONTROL + H -> Add to favorites pijltje naar beneden -> Import & Export -> Import from files -> Cookies -> Browse... -> surf naar c:\windows -> right-click explorer.exe -> Open / Run

    Voor extra veiligheid zou je explorer.exe, cmd.exe, mmc, msc etc als proces kunnen blokkeren, waardoor je de meest voor de hand liggende processen uitsluit van dergelijke trucks.

    Ook kan je alle drive letters (incl. C:) afschermen. De gebruiker hoeft er immers toch geen een te kunnen zien. Zie hiervoor een eerder topic van Kok Shang!

    En, om op de uitnodiging voor een aanvulling in te gaan:

    "Mocht iemand weten in welke registry key dat uit te schakelen is, dan is dat uiteraard een welkome aanvulling op dit verhaal."

    In het geval dat het niet nodig is om uit te kunnen loggen zou ik in een keymap voor het toetsenbord alle control en alt keys gewoon mappen naar bijvoorbeeld de rechter shift. Zo kunnen deze actie keys helemaal niet meer gebruikt worden. Voor wat voor doeleinde dan ook.

    Meer informatie hierover is te vinden op:
    http://www.microsoft.com/whdc/archive/w2kscan-map.mspx

    Of, afhankelijk van de functies op de betreffende kios pagina kan je het toetsenbord helemaal uitschakelen. Zie mijn laatste topic hiervoor.

    BeantwoordenVerwijderen
  3. Nice! :D Ik had de helpfunctie al uitgeschakeld omdat je daar op een zelfde manier executables mee kon starten. De driveletters ga ik nog wel uitschakelen, dat zou al heel veel schelen.
    Toetsenbord geheel uitschakelen is geen optie, aangezien toekomstige studenten op deze systemen een intake-toets moeten kunnen doen.

    Het belangrijkste was bij dit account dat gebruikers van de systemen niet zomaar kunnen gaan zitten internetten, maar als je zoiets doet, moet het natuurlijk zo goed mogelijk ;-)

    BeantwoordenVerwijderen
  4. Dank je :)
    Probeer ook eens CTRL + WinKey + F

    Heb nu hier mijn testomgeving niet tot mijn beschikking, maar dat zou wellicht gebruikers ook nog access kunnen geven tot ongewenste resources.

    BeantwoordenVerwijderen
  5. Vergeet je ook niet tabbed browsing op IE7 of hoger uit te zetten? Met CTRL+T kan je een nieuwe tab openen waar een link staat "Open an InPrivate Browsing window" hier kan je wel een adres invoeren bijv. C:\ ofzo

    BeantwoordenVerwijderen