Op 15 maar heb ik een post gemaakt met volgende tekst
“Ik heb hier een Samba 3 server draaien als PDC voor windows XP clients, ik werk met een NTconfig.POL in mijn Netlogonshare. De NTconfig.POL maak ik nu aan met poledit.exe. Ik heb gehoord, dat hier voor linux ook een tooltje voor is.. Weet iemand hier meer van? En heeft er iemand nog goeie tips (of weet handige tools) om policies toe te passen of te beheren voor windows xp, met betrekking tot deze situatie? (In dit net werk draait geen ADS, dus ik kan hem niet aan de AD hangen)”
Ik heb er nog steeds geen goed antwoord op, maar kreeg wel de vraag hoe ik dit gedaan heb, en of ik goeie tutorials wist..
In plaats van alles wat ik zit te vergeten, ben ik maar eens een keer gaan documenteren, en heb ik onderstaande tekst getypt. Hierin word beschreven hoe ik mijn werkende Samba PDC en XP clients heb opgezet.. Er zijn veel verschillende manieren om zoiets te configureren, dit is dus niet “de” manier, maar “een” manier.
Ik hoop dat anderen die zoiets ook willen, hier wat aan hebben.
Als ik grote fouten gemaakt heb, meld dit dan even
Deze tekst is als word-document te downloaden op http://www.nolles.com/lindoc/
(staan er wat minder vreemde tekentjes tussen
)
Ik heb hiervoor verschillende howto’s gebruikt, maar zal het even in het kort uit proberen te leggen wat ik gedaan heb. Ik gebruik Debian Linux.
Ik ga er hier vanuit dat je de basiskennis van windows en linux al hebt, want ik heb geen zin om hier een boek te schrijven
.
Ook neem ik aan, dat Samba 3 compilen voor je geen probleem is.. Het puzzelwerk begint bij het configureren en hier zal ik nu verder op in gaan
De volgende stappen heb ik doorlopen
1. Installeer samba
2. Maak useraccounts aan
3. Maak direcories aan waarnaar je in smb.conf gaat verwijzen
4. smb.conf configureren
5. Windows xp configureren
6. Policies
=+=+=+=+=+=+=+=+=+=+=+=+=+
2 .. maak useraccounts aan
Om een gebruiker in te kunnen laten loggen op samba, hebben de gebruiker en de computer van de gebruiker een account nodig op linux. Het account voor de computer wordt automatisch aangemaakt in de onderstaande smb.conf, dus daar hoef je verder niks mee te doen.
De gebruikersaccounts aanmaken, doe ik met webmin, maar als je dit niet hebt draaien, kan je het gewoon doen met het adduser commando met de juiste opties of met linuxconf. Laat ook een homedir aan. Als je de voorbeelden in deze tekst volgt, worden de homedirs aangemaakt in /samba/homes(zie volgend punt)
Na het aanmaken van de user op linux, moet de user ook nog worden toegevoegd aan de sambapasswordfile, dit doe je met het commando: smbpasswd –a testuser1
Waarbij testuser1, dus een willekeurige username kan zijn, die je al hebt aangemaakt bij de vorige stap. Na het invoeren van dit commando wordt er gevraagd, om een password voor de gebruiker in te voeren.
!!!BELANGRIJK ==> Maak voor de user root ook een smbpassword aan!! Dit is nodig om straks jezelf met je windows xp kist te kunnen aanmelden bij het domain.. Dus:
smbpasswd –a root
Als dit gedaan is, heb je users klaar om straks in te kunnen loggen op samba
(Het aanmaken van users kan natuurlijk ook op andere manieren.. En user aamaken in linux en in samba kan ook in 1 x.. Maar dit behandel ik niet in deze tekst. Zelf maak ik gebruik van webmin, als ik hierin een nieuwe linuxuser aanmaak, is die user ook meteen automatisch samba user (debianpaketten: webmin, webmin-samba))
=+=+=+=+=+=+=+=+=+=+=+=+=+
3 .. Maak directories aan waarnaar je in je smb.conf gaat verwijzen
Ik heb op mijn linuxkist 3 dir’s voor samba aangemaakt
1: /samba/homes
In deze dir staan de homedirectories van de users. De homedir van een user heb je al aangemaakt bij stap 2
2: [netlogon] ==> /samba/scripts
In deze dir staan de opstartscripten(wat ook via smb.conf kan, maar in deze text via een scipt geregeld is)De opstartscripten zijn *.bat bestanden. Deze scripten maak ik handmatig aan en hebben de naam van de gebruiker.. dus voor een gebruiker met de naam testuser1 is het script testuser1.bat hier aanwezig
Voorbeeld van script testuser1.bat:
------
echo Mapping Network Drives to Samba Server TestPDC...
net use z: \\testpdc\U%.bat
------
Door dit script zie je in windows onder “deze computer” de sambahomedir van de user als harddisk z:. de U% staat voor de username.. Deze wordt automatisch ingevuld.
Ook zet je in deze directory de NTConfig.POL (windows policies, hier kom ik later in deze tekst nog op terug.) en de Map “Default User”.
3: [profile] ==>/samba/profiles
In deze map wordt de eerste keer als een gebruiker inlogt, automatisch een profiel gemaakt. Als je een map “Default User” in je netlogon hebt staan, wordt de inhoud hiervan automatisch toegepast op het nieuwe profiel, en als de eerste keer uitlogt, word dit weggeschreven naar de profileshare.
Dit profiel kun je vergelijken met het profiel wat je lokaal op je computer hebt staan, namelijk in Documents and Settings.. maar het verschil met dit profiel is, dat het profiel dat je op de server in de profile share hebt staan een “roaming-profile” is.
Roaming profile wil zeggen, dat je op alle computers waarop je in dat netwerk inlogt, je eigen settings,desktop,documenten, etc hebt. Dit wordt bij het inloggen van de server opgehaald, en bij het uitloggen, worden de veranderingen naar de server geschreven.
=+=+=+=+=+=+=+=+=+=+=+=+=+
4 .. De smb.conf configureren
Voor debian gebruikers, deze kan je vinden in je /etc/samba/ dir..
De standaard conf heb ik verwijderd en deze conf heb ik daarneergezet.
---------------
[global]
null passwords = no
log file = /var/log/samba/log.%m
loglevel = 2
debug timestamp = yes
bind interfaces only = yes
max log size = 250
#interfaces = 192.168.xxx.xxx/255.255.255.0
domain master = yes
#onderstaande regel zorgt voor het
#automatisch aanmaken van machineaccounts.
add user script = /usr/sbin/useradd -g machines -c NTMachine -d /dev/null -s /bin/false -n '%m$'
locking = yes
domain logons = yes
preferred master = yes
encrypt passwords = yes
password level = 0
logon path = \\testpdc\profile\%U
serverstring = Samba on %L
#socket address = 195.83.xxx.xxx
#hosts allow = 192.168.xxx. localhost
#hosts allow = IP-address, 127.0.0.1/255.255.255.0
#mijn domainname is testnetwork
workgroup = testnetwork
smb passwd file = /etc/samba/smbpasswd
logon script = %U.bat
socket options = TCP_NODELAY IPTOS_LOWDELAY SO_SNDBUF=8192 SO_RCVBUF=8192
read raw = yes
write raw = yes
netbios name = testpdc
load printers = no
local master = yes
security = user
os level = 65
oplocks = True
deadtime = 1
lock directory = /tmp/samba
domain admin group = root @admins
[netlogon]
#hier staan scripts en policyfile
#Bepaalde hosts alleen toegang geven.
# allow hosts = 192.168.xxx.
max connections = 8
comment = The domain logon service
path = /samba/scripts
browseable = no
[profile]
#hier worden de windowsprofielen opgeslagen
comment = User profiles
path = /samba/profiles
create mode = 0600
directory mode = 0700
read only = no
writable = yes
browseable = no
[homes]
#homedirectory van user
comment = Home Directory of %u
path = /samba/homes/%U
writable = yes
browseable = yes
-------------------
Deze dus opslaan als smb.conf en daarna je samba een schop geven.
(in debian: /etc/init.d/samba restart )
=+=+=+=+=+=+=+=+=+=+=+=+=+
5 .. Windows XP configureren voor Samba.
Om Windows XP te kunnen laten communiceren met samba moet je eerst een registerkey veranderen. Dit kun je doen, door volgend bestand toe te passen op je winxp.
http://us1.samba.org/samb...stry/WinXP_SignOrSeal.reg
Daarna stel je als domein in testnetwork (dat is de domeinnaam die ik gebruik in mijn smb.conf) druk op ok, nu word er gepromt om username en password van de admin. Vul hier in als username: root
Password: password van je rootgebruiker
Nu is t even wachten, en als je alles goed hebt gedaan, krijg je de welkomsboodschap van het domain. Als dit niet gebeurt, kan dit o.a. de volgende redenen hebben..
- Machine account is niet goed aangemaakt in linux of samba
- Root gebruiker is niet toegevoegd met smbpasswd.
- Je hebt de bovenstaande signorseal registerypatch nog niet gerunt
Kan natuulijk door andere dingen komen.. maar dit zijn veelvoorkomende.
Als het wel gelukt is, start je de machine opnieuw op, en kan je inloggen met je samba account.
=+=+=+=+=+=+=+=+=+=+=+=+=+
6. Policies
Als je wil, dat de gebruikers die inloggen op je sambamachine speciale rechten krijgen, ander startmenu, geen items meer op desktop.. of zelfs helemaal gelokt, kan je dit doen met policies.
De policies voor alle users and groups op de samba server worden in 1 bestand opgeslagen, namelijk de NTconfig.POL Dit bestand zet je in je netlogon share. In mijn voorbeeld is dat dus /samba/script.
Dit bestand kan je aanmaken met de windows policy editor, poledit.exe dit prog zit standaard bij NT4 servers en Win2k servers.. Als je m niet hebt, kan je m ook wel op internet vinden..
http://www.google.com/sea...UTF-8&oe=UTF-8&hl=nl&lr=/
Gebruik voor winxp policies wel een van de nieuwste versies van poledit. WinXP zal je met deze policies niet helemaal kunnen locken, maar je kunt een heel eind komen.
!!WARNING!! Als lekker met policies wil gaan klooien op je eigen machine, dan is het verstandig om eerst even een herstelpunt of image te maken, omdat sommige settings wel eens willen doorslaan naar de rest van je profielen.. zou toch jammer zijn als je als administrator niet meer bij het configuratiescherm mag komen he
Eindnoot:
als je heel diep wilt gaan met policies in windows xp, zal je met mmc moeten gaan werken maar samba zegt dit nog niet officieel te ondersteunen, en ik ben er zelf ook niet echt ver mee gekomen.. komt ook dichter in buurt van AD. En samba kan niet voor ADS spelen. Het is met samba 3 wel mogelijk om te verbinden met een ADS en dan policies uit de active directory te trekken, dan kom je ook dingen als LDAP tegen. Hier ben ik in deze tekst niet op in gegaan. want dat gaat dus stukje dieper denk ik. Zijn genoeg andere tutorials over te vinden.
Eindnoot2: Het voorbeeld in deze tekst, werkt ook in sambaversies >2.2.x
“Ik heb hier een Samba 3 server draaien als PDC voor windows XP clients, ik werk met een NTconfig.POL in mijn Netlogonshare. De NTconfig.POL maak ik nu aan met poledit.exe. Ik heb gehoord, dat hier voor linux ook een tooltje voor is.. Weet iemand hier meer van? En heeft er iemand nog goeie tips (of weet handige tools) om policies toe te passen of te beheren voor windows xp, met betrekking tot deze situatie? (In dit net werk draait geen ADS, dus ik kan hem niet aan de AD hangen)”
Ik heb er nog steeds geen goed antwoord op, maar kreeg wel de vraag hoe ik dit gedaan heb, en of ik goeie tutorials wist..
In plaats van alles wat ik zit te vergeten, ben ik maar eens een keer gaan documenteren, en heb ik onderstaande tekst getypt. Hierin word beschreven hoe ik mijn werkende Samba PDC en XP clients heb opgezet.. Er zijn veel verschillende manieren om zoiets te configureren, dit is dus niet “de” manier, maar “een” manier.
Ik hoop dat anderen die zoiets ook willen, hier wat aan hebben.
Als ik grote fouten gemaakt heb, meld dit dan even
Deze tekst is als word-document te downloaden op http://www.nolles.com/lindoc/
(staan er wat minder vreemde tekentjes tussen
Ik heb hiervoor verschillende howto’s gebruikt, maar zal het even in het kort uit proberen te leggen wat ik gedaan heb. Ik gebruik Debian Linux.
Ik ga er hier vanuit dat je de basiskennis van windows en linux al hebt, want ik heb geen zin om hier een boek te schrijven
Ook neem ik aan, dat Samba 3 compilen voor je geen probleem is.. Het puzzelwerk begint bij het configureren en hier zal ik nu verder op in gaan
De volgende stappen heb ik doorlopen
1. Installeer samba
2. Maak useraccounts aan
3. Maak direcories aan waarnaar je in smb.conf gaat verwijzen
4. smb.conf configureren
5. Windows xp configureren
6. Policies
=+=+=+=+=+=+=+=+=+=+=+=+=+
2 .. maak useraccounts aan
Om een gebruiker in te kunnen laten loggen op samba, hebben de gebruiker en de computer van de gebruiker een account nodig op linux. Het account voor de computer wordt automatisch aangemaakt in de onderstaande smb.conf, dus daar hoef je verder niks mee te doen.
De gebruikersaccounts aanmaken, doe ik met webmin, maar als je dit niet hebt draaien, kan je het gewoon doen met het adduser commando met de juiste opties of met linuxconf. Laat ook een homedir aan. Als je de voorbeelden in deze tekst volgt, worden de homedirs aangemaakt in /samba/homes(zie volgend punt)
Na het aanmaken van de user op linux, moet de user ook nog worden toegevoegd aan de sambapasswordfile, dit doe je met het commando: smbpasswd –a testuser1
Waarbij testuser1, dus een willekeurige username kan zijn, die je al hebt aangemaakt bij de vorige stap. Na het invoeren van dit commando wordt er gevraagd, om een password voor de gebruiker in te voeren.
!!!BELANGRIJK ==> Maak voor de user root ook een smbpassword aan!! Dit is nodig om straks jezelf met je windows xp kist te kunnen aanmelden bij het domain.. Dus:
smbpasswd –a root
Als dit gedaan is, heb je users klaar om straks in te kunnen loggen op samba
(Het aanmaken van users kan natuurlijk ook op andere manieren.. En user aamaken in linux en in samba kan ook in 1 x.. Maar dit behandel ik niet in deze tekst. Zelf maak ik gebruik van webmin, als ik hierin een nieuwe linuxuser aanmaak, is die user ook meteen automatisch samba user (debianpaketten: webmin, webmin-samba))
=+=+=+=+=+=+=+=+=+=+=+=+=+
3 .. Maak directories aan waarnaar je in je smb.conf gaat verwijzen
Ik heb op mijn linuxkist 3 dir’s voor samba aangemaakt
1: /samba/homes
In deze dir staan de homedirectories van de users. De homedir van een user heb je al aangemaakt bij stap 2
2: [netlogon] ==> /samba/scripts
In deze dir staan de opstartscripten(wat ook via smb.conf kan, maar in deze text via een scipt geregeld is)De opstartscripten zijn *.bat bestanden. Deze scripten maak ik handmatig aan en hebben de naam van de gebruiker.. dus voor een gebruiker met de naam testuser1 is het script testuser1.bat hier aanwezig
Voorbeeld van script testuser1.bat:
------
echo Mapping Network Drives to Samba Server TestPDC...
net use z: \\testpdc\U%.bat
------
Door dit script zie je in windows onder “deze computer” de sambahomedir van de user als harddisk z:. de U% staat voor de username.. Deze wordt automatisch ingevuld.
Ook zet je in deze directory de NTConfig.POL (windows policies, hier kom ik later in deze tekst nog op terug.) en de Map “Default User”.
3: [profile] ==>/samba/profiles
In deze map wordt de eerste keer als een gebruiker inlogt, automatisch een profiel gemaakt. Als je een map “Default User” in je netlogon hebt staan, wordt de inhoud hiervan automatisch toegepast op het nieuwe profiel, en als de eerste keer uitlogt, word dit weggeschreven naar de profileshare.
Dit profiel kun je vergelijken met het profiel wat je lokaal op je computer hebt staan, namelijk in Documents and Settings.. maar het verschil met dit profiel is, dat het profiel dat je op de server in de profile share hebt staan een “roaming-profile” is.
Roaming profile wil zeggen, dat je op alle computers waarop je in dat netwerk inlogt, je eigen settings,desktop,documenten, etc hebt. Dit wordt bij het inloggen van de server opgehaald, en bij het uitloggen, worden de veranderingen naar de server geschreven.
=+=+=+=+=+=+=+=+=+=+=+=+=+
4 .. De smb.conf configureren
Voor debian gebruikers, deze kan je vinden in je /etc/samba/ dir..
De standaard conf heb ik verwijderd en deze conf heb ik daarneergezet.
---------------
[global]
null passwords = no
log file = /var/log/samba/log.%m
loglevel = 2
debug timestamp = yes
bind interfaces only = yes
max log size = 250
#interfaces = 192.168.xxx.xxx/255.255.255.0
domain master = yes
#onderstaande regel zorgt voor het
#automatisch aanmaken van machineaccounts.
add user script = /usr/sbin/useradd -g machines -c NTMachine -d /dev/null -s /bin/false -n '%m$'
locking = yes
domain logons = yes
preferred master = yes
encrypt passwords = yes
password level = 0
logon path = \\testpdc\profile\%U
serverstring = Samba on %L
#socket address = 195.83.xxx.xxx
#hosts allow = 192.168.xxx. localhost
#hosts allow = IP-address, 127.0.0.1/255.255.255.0
#mijn domainname is testnetwork
workgroup = testnetwork
smb passwd file = /etc/samba/smbpasswd
logon script = %U.bat
socket options = TCP_NODELAY IPTOS_LOWDELAY SO_SNDBUF=8192 SO_RCVBUF=8192
read raw = yes
write raw = yes
netbios name = testpdc
load printers = no
local master = yes
security = user
os level = 65
oplocks = True
deadtime = 1
lock directory = /tmp/samba
domain admin group = root @admins
[netlogon]
#hier staan scripts en policyfile
#Bepaalde hosts alleen toegang geven.
# allow hosts = 192.168.xxx.
max connections = 8
comment = The domain logon service
path = /samba/scripts
browseable = no
[profile]
#hier worden de windowsprofielen opgeslagen
comment = User profiles
path = /samba/profiles
create mode = 0600
directory mode = 0700
read only = no
writable = yes
browseable = no
[homes]
#homedirectory van user
comment = Home Directory of %u
path = /samba/homes/%U
writable = yes
browseable = yes
-------------------
Deze dus opslaan als smb.conf en daarna je samba een schop geven.
(in debian: /etc/init.d/samba restart )
=+=+=+=+=+=+=+=+=+=+=+=+=+
5 .. Windows XP configureren voor Samba.
Om Windows XP te kunnen laten communiceren met samba moet je eerst een registerkey veranderen. Dit kun je doen, door volgend bestand toe te passen op je winxp.
http://us1.samba.org/samb...stry/WinXP_SignOrSeal.reg
Daarna stel je als domein in testnetwork (dat is de domeinnaam die ik gebruik in mijn smb.conf) druk op ok, nu word er gepromt om username en password van de admin. Vul hier in als username: root
Password: password van je rootgebruiker
Nu is t even wachten, en als je alles goed hebt gedaan, krijg je de welkomsboodschap van het domain. Als dit niet gebeurt, kan dit o.a. de volgende redenen hebben..
- Machine account is niet goed aangemaakt in linux of samba
- Root gebruiker is niet toegevoegd met smbpasswd.
- Je hebt de bovenstaande signorseal registerypatch nog niet gerunt
Kan natuulijk door andere dingen komen.. maar dit zijn veelvoorkomende.
Als het wel gelukt is, start je de machine opnieuw op, en kan je inloggen met je samba account.
=+=+=+=+=+=+=+=+=+=+=+=+=+
6. Policies
Als je wil, dat de gebruikers die inloggen op je sambamachine speciale rechten krijgen, ander startmenu, geen items meer op desktop.. of zelfs helemaal gelokt, kan je dit doen met policies.
De policies voor alle users and groups op de samba server worden in 1 bestand opgeslagen, namelijk de NTconfig.POL Dit bestand zet je in je netlogon share. In mijn voorbeeld is dat dus /samba/script.
Dit bestand kan je aanmaken met de windows policy editor, poledit.exe dit prog zit standaard bij NT4 servers en Win2k servers.. Als je m niet hebt, kan je m ook wel op internet vinden..
http://www.google.com/sea...UTF-8&oe=UTF-8&hl=nl&lr=/
Gebruik voor winxp policies wel een van de nieuwste versies van poledit. WinXP zal je met deze policies niet helemaal kunnen locken, maar je kunt een heel eind komen.
!!WARNING!! Als lekker met policies wil gaan klooien op je eigen machine, dan is het verstandig om eerst even een herstelpunt of image te maken, omdat sommige settings wel eens willen doorslaan naar de rest van je profielen.. zou toch jammer zijn als je als administrator niet meer bij het configuratiescherm mag komen he
Eindnoot:
als je heel diep wilt gaan met policies in windows xp, zal je met mmc moeten gaan werken maar samba zegt dit nog niet officieel te ondersteunen, en ik ben er zelf ook niet echt ver mee gekomen.. komt ook dichter in buurt van AD. En samba kan niet voor ADS spelen. Het is met samba 3 wel mogelijk om te verbinden met een ADS en dan policies uit de active directory te trekken, dan kom je ook dingen als LDAP tegen. Hier ben ik in deze tekst niet op in gegaan. want dat gaat dus stukje dieper denk ik. Zijn genoeg andere tutorials over te vinden.
Eindnoot2: Het voorbeeld in deze tekst, werkt ook in sambaversies >2.2.x