Nieuws:

Welkom, Gast. Alsjeblieft inloggen of registreren.
Heb je de activerings-mail niet ontvangen?

Auteur Topic: hoe inlogscript met userinput naar samba?  (gelezen 1055 keer)

knurft

  • Gast
hoe inlogscript met userinput naar samba?
« Gepost op: 2009/03/20, 11:24:08 »
Hallo samen,
Ik ben een linux newbie en zit met de volgende situatie:
Wij hebben op ons activiteitencentrum een kleine computerwerkplaats met een aantal windows XP systemen. We hebben een Mac met OS X leopard als samba file server. Clienten loggen in d.m.v script dat vraagt naar hun inlog (is ook de mapnaam op de server) en wachtwoord. Werkt prima. In dat script staat dus verder alleen het ip-nummer van de server...)
Ik kreeg een aantal pentium 3 bakjes waar ubuntu lekker op draait (veilig internetten, tekstverwerken in open office etc.)
Inloggen op de server gaat hier ook prima met "locaties" en "verbinden met server". Graag wil ik dit ook doen met een script.

Waar te beginnen?  ???

Gerard

Gerard Poels

Offline testcees

  • Documentatieteam
    • testcees
    • www.testcees.nl
  • Steunpunt: Nee
Re: hoe inlogscript met userinput naar samba?
« Reactie #1 Gepost op: 2009/03/20, 11:51:36 »
Hoi Knurft, Welkom op dit forum.

Bedoel je een script hebt wat de share's koppelt aan windows drivemappings?

Ik Ubuntu kan dat ook anders:
- voor iedere share maak je een koppelpunt (mounting point) in /mnt:sudo mkdir /mnt/samba
In bestand /etc/fstab kan je aangeven welke share's gemount moeten worden tijdens het opstarten. Per share komt er aan bij regeltje als:
//ntserver/share /mnt/samba smbfs username=username,password=password 0 0

Er zijn nog meer mogelijkheden en/of andere opties in de /etc/fstab regel.

Kan je hier iets mee?
`Wie wil de Nederlandstalige Ubuntu documentatie wiki onderhouden? https://wiki.ubuntu-nl.org

Offline woteb

  • Lid
  • Steunpunt: Nee
Re: hoe inlogscript met userinput naar samba?
« Reactie #2 Gepost op: 2009/03/20, 11:52:44 »
Ik heb even wat voor je opgezocht:

Citaat
Samba shares mounten
Bijgedragen door Frederik Vos
Tuesday 06 February 2007
Samba shares, of die zich nu bevinden op een Windows machine of op een andere Samba machine, laten zich op
diverse manieren vanuit Linux benaderen. Zowel Nautilus als Konqueror kunnen er mee overweg.
 Je kunt een share ook mounten zoals je dat bijvoorbeeld doet met een diskette doet.
 Maak een mount point aan, de FHS standaard is niet duidelijk waar dit precies moet, maar ik prefereer hier de /mnt
structuur. mkdir -p /mnt/smb/personal
 Je kunt nu de share als root, met het volgende commando mounten: mount -t smbfs -o
username=login,password=wachtwoord,rw,gid=users //machine/login /mnt/smb/personal
 (Let op: dit moet allemaal op 1 regel, d.w.z geen enter er tussen !)
Je moet uiteraard login, wachtwoord etc aanpassen. Als het niet op machine naam lukt, probeer het dan eens op ip.
 Een andere mogelijkheid is om de gegevens in fstab te steken: //machine/personal /mnt/smb/personal smbfs
auto,gid=users,fmask=0664,dmask=0775,iocharset=iso8859-15, credentials=/etc/samba/smbpassword 0 0
(bovenstaande moet eveneens allemaal op 1 regel)
Maak nu een bestand aan /etc/samba/password met de volgende inhoud:        username=login
   password=wachtwoord
 Beperk vervolgens de rechten op dit bestand: chmod 600 /etc/samba/smbpassword


Wat je ook kunt doen is (als je de Ubuntu systemen altijd wilt mounten aan de server):

Volg deze link: http://forums.fedoraforum.org/showthread.php?t=92887

Als je het meteen wil zien:
Citaat
I see that you are trying to mount an external Samba share. I don't think you can do that in fstab. You need to create a shell script similar to this:

Code:

#! /bin/bash
/bin/mount -t smbfs -o username=foo,password=bar,gid=100,fmask=664,dmask=777 //source  /dest

Place the script in /etc/rc.d/init.d. Then create a symbolic link to the file in /etc/rc.d/rc5.d and prefix S99 to the file name. For example, if you name the script foobar then name the symbolic link S99foobar.

S99 gives the script the lowest priority during boot time.

You just need a random username and password if your share is public.

wat je ook kunt doen is geciteerde regels in het bestandje /etc/rc.local opnemen en dan boven de laatste regel met exit 0 plaatsen.
Laptop, HP 550, Dual Core 1 GB RAM/2 Ghz:: Debian 5.0 Testing (Squeeze)  (lite-blokkendoos editie) Fluxbox / IceWM / XFCE4 / Openbox / LXDE.
3 Werkstations + 1 laptop: Debian 5.0 Testing (Squeeze)  (lite-blokkendoos editie Gnome/XFCE/IceWM)
Server: Debian 5.0 Stable (Lenny)

knurft

  • Gast
Re: hoe inlogscript met userinput naar samba?
« Reactie #3 Gepost op: 2009/03/20, 12:16:53 »
Bedoel je een script hebt wat de share's koppelt aan windows drivemappings?

Hallo testcees,
Dat is niet wat ik bedoel. Ik zal proberen de zaak wat duidelijker te stellen...

Een gebruiker moet kunnen inloggen als bijvoorbeeld user a. Hij komt dan in de map ä"op de server. Die is persoonlijk en niet public. Daarvoor log je in en geef je aan dat de map waar je in wilt "a" is en bij server geef je het ip adres op. Ubuntu vraagt dan netjes om het wachtwoord voor "a" en logt in.

Ik weet dus niet niet wie er komt en waar hij inlogt. Dingen vastleggen is dus niet de bedoeling. De optie "bladwijzer toevoegen" in het "verbind met server" menu is dus ook niet toepasbaar. Je zou dan een lijst met tientallen verwijzingen (van al die verschillende inloggen) krijgen op iedere computer.

Ik wil dus 1 script dat vraagt om de inlog (= ook mapnaam) en het wachtwoord.

Op windows gaat dat zo (heb ik als amateur even geknutselt :-)

Set objNetwork = WScript.CreateObject("WScript.Network")
strLocalDrive = "M:"
strUsr = InputBox("je naam graag")
strPas = InputBox("je super geheime wachtwoord")
strRemoteShare = "\\192.168.1.223\" & strUsr
strPer = "FALSE"
objNetwork.MapNetworkDrive strLocalDrive, strRemoteShare, strPer, strUsr, strPas

Maakt dit mijn probleem wat helderder?

Gerard

Offline testcees

  • Documentatieteam
    • testcees
    • www.testcees.nl
  • Steunpunt: Nee
Re: hoe inlogscript met userinput naar samba?
« Reactie #4 Gepost op: 2009/03/20, 13:00:30 »
De optie "bladwijzer toevoegen" in het "verbind met server" menu is dus ook niet toepasbaar. Je zou dan een lijst met tientallen verwijzingen (van al die verschillende inloggen) krijgen op iedere computer.
Ik zal het mogelijk nog niet helemaal begrijpen (en een windows script lezen is al helemaal niets voor mij) maar 1 ding valt mij op:

Ik zie ook geen echte oplossing in "bladwijzer toevoegen" maar "bladwijzers" zijn persoonlijk. Dus iedere gebruiker zou 1 bladwijzer hebben naar ZIJN map op de server. Of hebben je gebruikers op de ubuntu pc GEEN eigen gebruikersnaam/wachtwoord?
`Wie wil de Nederlandstalige Ubuntu documentatie wiki onderhouden? https://wiki.ubuntu-nl.org

Offline track

  • Lid
  • Steunpunt: Nee
Re: hoe inlogscript met userinput naar samba?
« Reactie #5 Gepost op: 2009/03/20, 13:18:30 »
Hoi Gerard,

normaal heeft iedere gebruiker zijn account op zijn (client-) computer.  Je moet tenslotte met een naam inloggen.
Normaal heb je dus je thismap op je eigen computer staan. Dat is bij jou nu juist niet de bedoeling als ik het goed begrijp ?

Wat jij wilt hebben is een "kiosk-computer" dan ?  Een soort betere terminal ?
Misschien moet jij even duidelijk beperken hoeveel van het beheer in de individuele computer mag / moet zitten.
Want bij Linux kun je van alles configureren. Je moet maar weten waar je precies naar toe wilt.

track

Offline woteb

  • Lid
  • Steunpunt: Nee
Re: hoe inlogscript met userinput naar samba?
« Reactie #6 Gepost op: 2009/03/20, 14:32:37 »
Je kunt natuurlijk bij het opstarten alles in één keer mounten, voor iedere gebruiker een eigen mountpoint in /mnt aanmaken

Dus:

/mnt/gebruiker-a
/mnt/gebruiker-b
/mnt/gebruiker-c
enz.

Op deze directories voor iedere gebruiker de goede rechten zetten. Dus:
sudo chown gebruiker-a /mnt/gebruiker-a && sudo chmod 0700 /mnt/gebruiker-a
sudo chown gebruiker-b /mnt/gebruiker-b && sudo chmod 0700 /mnt/gebruiker-b
enz.

Vervolgens in het bestandje /etc/fstab alles automatisch laten mounten:

Je voegt regels toe met het volgende:
//ntserver/share /mnt/samba smbfs username=username,password=password 0 0

Voorbeeld:
//ntserver/share-a /mnt/gebruiker-a smbfs username=gebruiker-a,password=password-gebruiker-a 0 0
//ntserver/share-b /mnt/gebruiker-b smbfs username=gebruiker-b,password=password-gebruiker-b 0 0
enz.

Meer informatie: http://www.cyberciti.biz/faq/configure-a-system-to-automount-a-samba-share-with-etcfstab/

Wat je allemaal doet is het volgende;

Op de Ubuntu systemen de gebruikersmappen van de server mounten aan de directories in /mnt.
Deze directories zijn alleen toegankelijk voor de gebruikers.

Via het bestandje /etc/fstab worden de gebruiersmappen van de server aan de directories in /mnt gekoppeld. Alles volautomatisch en alleen toegankelijk voor de betreffende gebruikers.
« Laatst bewerkt op: 2009/03/20, 14:39:41 door woteb »
Laptop, HP 550, Dual Core 1 GB RAM/2 Ghz:: Debian 5.0 Testing (Squeeze)  (lite-blokkendoos editie) Fluxbox / IceWM / XFCE4 / Openbox / LXDE.
3 Werkstations + 1 laptop: Debian 5.0 Testing (Squeeze)  (lite-blokkendoos editie Gnome/XFCE/IceWM)
Server: Debian 5.0 Stable (Lenny)

knurft

  • Gast
Re: hoe inlogscript met userinput naar samba?
« Reactie #7 Gepost op: 2009/03/20, 17:26:54 »
Citaat
Of hebben je gebruikers op de ubuntu pc GEEN eigen gebruikersnaam/wachtwoord?

Precies. We komen er wel :-)
Het is inderdaad een kiosk computer. Er is maar 1 inlog. Iemand komt in die simpele omgeving en krijgt een inlogscript voor zń kiezen dat om naam en wachtwoord vraagt. Zijn map op de server wordt gemount en daar kan hij zń spullen openen en opslaan.

GErard