A M M A T T I K O R K E A K O U L U TUTKINTOTYÖRAPORTTI LINUX-KÄYTTÄJIEN TUNNISTUS ACTIVE DIRECTORY -PALVELUSSA. Jari Hyytiäinen



Samankaltaiset tiedostot
TIETOKONEYLIASENTAJAN ERIKOISAMMATTITUTKINTO

Windows Server 2012 asentaminen ja käyttöönotto, Serverin pyörittämisen takia tarvitaan

TEHTÄVÄ 4: Microsoft Windows Deployment Services asennus ja hallinta

Directory Information Tree

1. päivä ip Windows 2003 Server ja vista (toteutus)

Tikon Ostolaskujenkäsittely versio SP1

TIETOKONEYLIASENTAJAN ERIKOISAMMATTITUTKINTO

Historiaa. Unix kirjoitettiin kokonaan uudestaan C-kielellä Unix jakautui myöhemmin System V ja BSDnimisiin. Kuutti, Rantala: Linux

Lync Online. Järjestelmänvalvojan perusopas

FinFamily PostgreSQL installation ( ) FinFamily PostgreSQL

Turvallinen etäkäyttö Aaltoyliopistossa

Security server v6 installation requirements

Security server v6 installation requirements

WWW-PALVELUN KÄYTTÖÖNOTTO LOUNEA OY

Unix-perusteet. Tulostaminen

Harjoituksen aiheena on tietokantapalvelimen asentaminen ja testaaminen. Asennetaan MySQL-tietokanta. Hieman linkkejä:

Tikon Ostolaskujenkäsittely/Web-myyntilaskutus versio 6.4.0

Käytin tehtävän tekemiseen Xubuntu käyttöjärjestelmää aikaisemmin tekemältäni LiveUSB-tikulta.

MS Aamubrunssi Aktiivihakemiston uutuudet

Laitteessa tulee olla ohjelmisto tai uudempi, tarvittaessa päivitä laite

Käyttöoppaasi. F-SECURE PSB AND SERVER SECURITY

SSH Secure Shell & SSH File Transfer

Unix-perusteet. Unix/Linux-käyttöjärjestelmä ja sen ominaisuudet

Action Request System

Tikon Ostolaskujenkäsittely/Web-myyntilaskutus versio 6.3.0

Selvitysraportti. MySQL serverin asennus Windows ympäristöön

Olet tehnyt hyvän valinnan hankkiessasi kotimaisen StorageIT varmuuskopiointipalvelun.

Linux - käyttöoikeudet

Arkkitehtuurikuvaus. Ratkaisu ohjelmistotuotelinjan monikielisyyden hallintaan Innofactor Oy. Ryhmä 14

KYMENLAAKSON AMMATTIKORKEAKOULU Tietotekniikan koulutusohjelma / Tietoverkkotekniikka. Joni Korjala APACHE WWW-PALVELIN Seminaarityö 2012

1 (5) VUOKRALISENSSIN KÄYTTÖÖNOTTO JA PILVIPISTEET AUTODESK ACCOUNTISSA. Milloin vuokra-aika alkaa?

ASENNUSOHJEET INTERNET-ASENNUS. Navita Yritysmalli. YHTEYSTIEDOT Visma Solutions Oy Mannerheiminkatu LAPPEENRANTA Puh.

Mark Summary Form. Taitaja Skill Number 205 Skill Tietokoneet ja verkot. Competitor Name

KYMENLAAKSON AMMATTIKORKEAKOULU Tietotekniikan koulutusohjelma / Tietoverkkotekniikka

Jouko Nielsen. Ubuntu Linux

VERKKOKÄYTTÄJÄN OPAS. Tulostuslokin tallennus verkkoon. Versio 0 FIN

Coolselector Asennusohje

TIETOKONEYLIASENTAJAN ERIKOISAMMATTITUTKINTO

Aditro Tikon ostolaskujen käsittely versio 6.2.0

Yleinen ohjeistus Windows tehtävään.

Linux ylläpitäjän opas. Tärkeimmät komennot, logit ja muuta hömppä *^_^* by Hannu Laitinen ETA14KT

TEHTÄVÄ 3: * Tehtävä 1, ** Tehtävä 2

Office ohjelmiston asennusohje

Haka-palveluiden valvonta ja tilastointi AAIEye -työkalun avulla. Mika Suvanto, CSC

HARJOITUS 2: Käyttäjien ja käyttäjäryhmien luominen, Active Directory Users and Computers

Outlookin konfigurointi. Huoltamosähköposti Sonerahosted

LINUX-HARJOITUS, MYSQL

Työasemien hallinta Microsoft System Center Configuration Manager Jarno Mäki Head of Training Operations M.Eng, MCT, MCSE:Security, MCTS

Visma Nova. Visma Nova ASP käyttö ja ohjeet

Järjestelmän asetukset. Asetustiedostojen muokkaaminen. Pääkäyttäjä eli root. Järjestelmänhallinnan työkalut

DNS- ja DHCPpalvelut. Linuxissa. Onni Kytönummi & Mikko Raussi

Taitaja 2015 Windows finaalitehtävä

erasmartcardkortinlukijaohjelmiston

Asennusohjeet HIITed palvelun asentamiseen

Valppaan asennus- ja käyttöohje

Linux. 00 Keskeiset piirteet. Unix ja Linux Helsingin ammattikorkeakoulu Stadia Vesa Ollikainen (muokannut M.Mäki-Uuro) Kysymyksiä

Yleistä tietoa Windows tehtävästä

Sisältö IT Linux 2001:n uudet ominaisuudet IT Linux 2001:n yhteensopivuus Red Hat 7.0:n kanssa Asennuksen valmistelu

Ennen varmenteen asennusta varmista seuraavat asiat:

Linux rakenne. Linux-järjestelmä koostuu useasta erillisestä osasta. Eräs jaottelu: Ydin Komentotulkki X-ikkunointijärjestelmä Sovellusohjelmat

Objective Marking. Taitaja 2014 Lahti. Skill Number 205 Skill Tietokoneet ja verkot Competition Day 1. Competitor Name

Langaton Tampere yrityskäyttäjän asetukset

1 AinaCom Skype for Business / Lync 2010 / Lync for Mac 2011 asennusohje... 2

LINUX LINUX. Viisi hyvää syytä käyttää Linuxia MUISTA! GNU Free Documentation License

Tikon Ostolaskujenkäsittely versio 6.2.0

ICT-info opiskelijoille

Microsoft Online Portal. Järjestelmänvalvojan perusopas

Bitnami WordPress - Asenna WordPress koneellesi. Jari Sarja

Henkilökohtaista käyttäjäystävällistä tietoturvaa! NTG Solo Secure

AinaCom Skype for Business. Asennusohje

Salasanojen hallinta. Salasanojen hallintaopas RESTAURANT ENTERPRISE SOLUTION

Tietoturvan perusteet - Syksy SSH salattu yhteys & autentikointi. Tekijät: Antti Huhtala & Asko Ikävalko (TP02S)

SQL Server 2008 asennus

Lisenssin hakeminen PTC:n verkkosivun kautta

Nopean asennuksen ohje

Korkeakoulujen prosessipalvelin: mallintajan palvelinohje Versio 0.2

Autentikoivan lähtevän postin palvelimen asetukset

Viva-16. Käyttöohje Veikko Nokkala Suomen Videovalvonta.com

Alfa-ohjelmat, verkkoasennus, asennusohje 2006 syyskuu. Alfa-ohjelmat ASENNUSOHJE. Verkkoasennus-CD, versio Kielioppi & kirjallisuus

Web -myyntilaskutus Käyttöönotto v Toukokuu (17) Versio Web -myyntilaskutus Tikon Oy. All rights reserved.

Yleinen ohjeistus Linux tehtävään

WEIKKA. Asennus opas. Hannu-Matti Lemettinen HML Productions

Yleinen ohjeistus Windows tehtävään

Hosted.fi Virtuaalikokouspalvelu

AXXION OY. Hosting-palvelut Asiakasohjeistus Versio 1.0

NT4.0 palvelin- ja Windows 2000 työasemaasennus

Enigmail-opas. Asennus. Avainten hallinta. Avainparin luominen

CLOUDBACKUP TSM varmistusohjelmiston asennus

Unix-perusteet. Tiedosto-oikeudet

Mark Summary Form. Tulospalvelu. Competitor No Competitor Name Member

AinaUCX Lync - asennusohje

Vaivattomasti parasta tietoturvaa

HAMINETTI WLAN LIITTYMÄN KÄYTTÖÖNOTTO-OHJE

EASY Tiedostopalvelin Käyttöopas

Messenger. Novell 1.0 NOVELL MESSENGERIN OHJEET. PIKAOPAS

Sähköpostilaatikoiden perustaminen

D-Link DSL-504T ADSL Reitittimen Asennusohje ver. 1.0

Mathcad 15 asennus (rev.4)

Tietokone. Tietokone ja ylläpito. Tietokone. Tietokone. Tietokone. Tietokone

UCOT-Sovellusprojekti. Asennusohje

Transkriptio:

T A M P E R E E N A M M A T T I K O R K E A K O U L U TUTKINTOTYÖRAPORTTI LINUX-KÄYTTÄJIEN TUNNISTUS ACTIVE DIRECTORY -PALVELUSSA Jari Hyytiäinen Tietojenkäsittelyn koulutusohjelma Huhtikuu 2006 Työn ohjaaja: Harri Hakonen T A M P E R E 2 0 0 6

T A M P E R E E N A M M A T T I K O R K E A K O U L U Tekijä(t) Koulutusohjelma(t) Tutkintotyön nimi Jari Hyytiäinen Tietojenkäsittely Linux-käyttäjien tunnistus Active Directory -palvelussa Työn valmistumiskuukausi ja -vuosi Huhtikuu 2006 Työn ohjaaja Harri Hakonen Sivumäärä: 56 TIIVISTELMÄ Tämä raportti kuvaa Active Directory -palveluiden, erityisesti keskitetyn käyttäjätunnistuksen, hyödyntämistä kirjauduttaessa Windows-toimialueelle Linux-työasemalta. Koko käyttäjätunnistus perustuu opinnäytteessäni Lightweight Directory Access Protocol standardiin. Se on yleisesti käytetty tunnistamisprotokolla. Lightweight Directory Access Protocol tarvitsee tuekseen joukon aputyökaluja, koska Windows ja Linux käyttävät mm. eri levynkäsittelyprotokollaa. Nämä aputyökalut on myös kuvattu ja niiden määrittelyt on tallennettu työhön. Käyttämässäni Windows-verkossa palvelimena oli Windows 2003 Server käyttöjärjestelmällä varustettu palvelin. Palvelin ohjasi toimialuetta, jossa oli yksi Linux-työasema. Tältä työasemalta suoritettiin kirjautuminen hyväksi käyttäen Windowsin Active Directory -palvelua. Linux jakeluversioista käytin työssä Fedora Core 3 -jakelua sen vaivattoman saatavuuden, helppokäyttöisyyden, tunnettuuden ja laajan tuen vuoksi. Fedora Core 3 perustuu Linux Redhat -jakeluversioon ja on näin varsin perinteikäs versio Linuxista. Työn valmistuessa Fedora Coresta käytössä on jo versio 5. Alunperin työ piti toteuttaa Tampereen teknillisen yliopiston oppimisympäristön verkossa. Verkkoympäristössä tapahtui kuitenkin suuria muutoksia vuonna 2005 päätalon remontin vuoksi. Näin koeverkossa toimivaksi testatut kokoonpanot jäivät odottamaan sopivampaa toteutusajankohtaa. Avainsanat Active Directory LDAP Linux käyttäjätunnistus Windows

T A M P E R E P O L Y T E C H N I C Author(s) Degree Programme(s) Title Jari Hyytiäinen Business Information Systems Using the authentication service of Microsoft Windows' Active Directory for access to Linux workstations Month and year May 2006 Supervisor Harri Hakonen Pages: 56 ABSTRACT This report represents how to authenticate Linux users against Windows domain. At present Windows operating system for server are based to Active Directory. Active directory is centralized directory service for administration of Windows domain. Active Directory is based to open protocols. Actually Active Directory is an implementation of Lightweight Directory Access Protocol. I used a minimalist domain to configure operation systems. I had only two computers in it. The first one was server which was a Windows 2003 Server. The second one was a workstation with Fedora Core 3 Linux distribution. As mentioned the authentication is based Lightweight Directory Access Protocol. It is universally used authentication protocol. Lightweight Directory Access Protocol needs some tools as support, because Windows and Linux operating systems use different kind of file systems. These tools are described and all configurations can be found in this report. Keywords Active Directory LDAP Linux user authentication Windows

Sisällysluettelo 1. Johdanto... 5 2. Sanaselitykset... 6 3. Linux-käyttäjän tunnistus Windows-toimialueella... 9 3.1 UNIX palvelimena Windows verkossa... 9 3.2 Keskitetyn käyttäjätunnistuksen etuja... 10 4. Lightweight Directory Access Protocol (LDAP)... 12 4.1 Miksi LDAP pitäisi ottaa käyttöön?... 12 4.2 LDAP protokolla Active Directory -palvelussa... 13 4.3 Yleisesti käytössä... 13 4.4 Linuxin käyttäjäntilien hallintatyökalut... 13 5. Pluggable Authentication Modules (PAM)... 14 5.1 Pamin määrittely... 14 5.2 Työssä esiintyvien PAM-moduuleiden kuvaukset... 15 6. Name Service Switch (NSS)... 19 6.1 LDAP, PAM, NSS... 19 6.2 LDAP NSS -moduulien muutokset... 19 7. Samba... 20 8. Microsoft Windows Hakemisto Palvelut (Microsoft TechNet [online])... 21 8.1 Microsoft Active Directory (Microsoft TechNet [online])... 21 8.2 Windows Server 2003 LDAP toteutus (Microsoft TechNet [online])... 21 8.3 Active Directory -palvelun LDAP -hakemistopalvelu ja informaatiomalli... 21 8.4 Active Directory -palvelun schema eli kaava... 22 8.5 Services for UNIX Schema in Active Directory -laajennus käyttäjätietojen tallennuksessa... 22 8.6 Active Directory -palvelun muokkaaminen LDAP turvallisuus- ja hakemistopalvelinta tukevaksi (Microsoft TechNet [online])... 22 8.7 Tarvittavien työkalujen asennus (Microsoft TechNet [online])... 23 8.8 UNIX ja Linux Attribuuttien lisäys Active Directory -palvelun käyttäjille... 24 8.9 Uusi Linux käyttäjä Active Directory -palvelussa (Microsoft TechNet [online])... 25 9. Koeverkko... 26 9.1 Windows-palvelin... 26 9.2 Linux työasema... 27 10. Jakeluversion ja ohjelmistojen valinta... 28 10.1 Jakeluversioiden vertailu... 28 10.2 Ohjelmistojen valinta... 28 11. Linux konfigurointi... 29 11.1 NSS muutokset... 29 11.2 PAM -moduulien muutokset... 30 11.2.1 System-auth -tiedosto... 30 11.2.2 pam_smb -tiedosto... 31 11.2.3 pam_mount -tiedosto... 32 11.3 Ldap.conf muutokset... 33 11.3.1 Ldap.conf -tiedosto... 35 12. Windows-määritykset... 37 13. Onnistunut kirjautuminen... 40 14. Lopuksi... 41 Lähteet... 42 Liitteet... 44

1. Johdanto Tämän työn tarkoituksena oli selvittää miten Linux-työasemalta voi kirjautua Windows-toimialueella hyväksikäyttäen Microsoftin Active Directory -palvelun keskitettyä käyttäjätunnistusta. Työ oli alun perin Tampereen teknillisen yliopiston kirjaston tilaama keväällä 2005. Työskentelin tuolloin kirjastossa järjestelmäsuunnittelijana. Vastuulleni kuului n. 340 työasemaa luokissa ja auloissa ympäri TTY:n kampusta sekä ajoittain myös palvelinten ylläpito. Tämän verkon kaikki työasemat olivat Windows 2000 Pro -työasemia. Yksi kahdenkymmenen työaseman luokka oli tarkoitus muuttaa ns. Linux-luokaksi, koska opiskelijat olivat tällaista luokkaa useaan kertaan toivoneet. Luokan saaminen oli myös kirjattu TTY:n atk-tavoitteisiin. Aluksi tein koeverkon, johon loin koedomain.local -nimisen toimialueen. Sen toimimaan saattaminen TCP/IP -protokollien osalta oli vaivatonta. Tämän työn haaste oli saada kaksi erilaista käyttöjärjestelmää toimimaan yhdessä. Juuri kun sain verkkotunnistuksen toimimaan oikein ja luokan asennus olisi pitänyt alkaa, kampuksella toukokuussa 2005 aloitettu päätalon remontti sotki mikroluokkajärjestelyt. Luokan toteutuksesta luovuttiin tässä yhteydessä ainakin toistaiseksi. Siirryin itsekin toisen työnantajan palvelukseen 1.8.2005 alkaen, joten en tiedä tullaanko suunnitelmaa koskaan toteuttamaan. Nykyisin tietoa etsitään hyvin paljon internetistä. Varsinkin tietokoneisiin liittyvä tieto on helppo löytää sieltä. Niinpä eri hakukoneilla etsiessäni löysin paljon ohjeita siitä, miten Linux-järjestelmällä varustettu työasema voidaan liittää Windows-verkkoon. Seurasin muutamaa ohjetta, mutta varsin pian osoittautui, että ne olivat puutteellisia tai niissä oli virheitä. Lisää tietoa etsiessäni löysin kaksi tietolähdettä, joihin työni perustuu. Nämä lähteet ovat Roderick W. Smithin kirjoittama kirja Linux in a Windows World sekä Microsoftin verkkosivusto Microsoft Solution Guide for Windows Security And Directory Services for UNIX. Näiden lähteiden avulla ongelman ratkaisu sujui luontevasti. Opinnäytteessäni valitsin tunnistamisprotokollaksi Lightweight Directory Access Protocol -standardin. Se ei ole ainoa mahdollisuus Linuxista Windowstoimialueeseen liittymiseen, mutta sen avulla saadaan helpoiten verkon kaikki palvelut käyttöön.

6 2. Sanaselitykset CIF Configuration InterFace (CIF.) konfiguraatio liittymä. CIF:istä käsin esim. järjestelmän pääkäyttäjä hallinnoi palvelinta. DAP Directory Access Protocol hakemistopalvelujen käyttöön tarkoitettu verkkoprotokolla, johon LDAP perustuu. DNS DNS tulee sanoista Domain Name Service. Nimipalvelun perustehtävä on muuntaa nimet osoitteiksi. Fedora Core Linux-jakeluversio FTP File Transfer Protocol. TCP (Transmission Control Protocol) -protokollaa hyväksikäyttävä tiedostonsiirtomenetelmä kahden tietokoneen välillä. FTP - yhteys toimii asiakas-palvelin menetelmällä. Asiakas (client) ottaa yhteyttä palvelimeen (server), joka tarjoaa FTP -palvelun. GENTOO Linux-jakeluversio GID Group Identification number. UNIX-järjestelmässä vaadittu käyttäjäryhmän tunnistenumero. GNOME Linux-työasemissa käytössä oleva graafinen käyttöliittymä. GNU Projekti, jonka tarkoituksena on kehittää täydellinen Unixin kaltainen vapaisiin ohjelmistoihin perustuva käyttöjärjestelmä. Myös Linux perustuu tähän projektiin. GUI Graphical User Interface eli graafinen käyttöliittymä. Esim. Windowskäyttöjärjestelmät perustuvat graafiseen käyttöliittymään. IETF Internet Engineering Task Force. Järjestö, joka vastaa Internet-protokollien standardoinnista. Jakeluversio Eli levityspaketti (engl. distribution) on kunkin toimittajan kooste Linuxin ytimestä ja sovellusohjelmista helposti asennettavana kokonaisuutena. Yleensä ohjelmat ovat ns. vapaita, eli niiden käyttö, muokkaus sekä levitys ovat ilmaisia. On kuitenkin olemassa maksullisia jakeluversioita ja niissä on mukana maksullisen lisenssin varaisia ohjelmia. Jakeluversiot saattavat poiketa toisistaan paljonkin ja niiden ohjelmistopaketit eivät välttämättä ole yhteensopivia keskenään. Ns. vapaanlähdekoodin vuoksi kuka tahansa saa levittää Linuxia.

7 KDE Linux-työasemissa käytössä oleva graafinen käyttöliittymä. Klusterointi Klustereilla pyritään saavuttamaan jokin tai jotkut kolmesta tavoitteesta: palvelun korkea käytettävyys, järjestelmän skaalautuvuus suhteessa palvelun tietojenkäsittelykapasiteetin tarpeeseen tai kuorman tasaaminen klusterissa olevien tietokoneiden kesken. Siinä liitetään useampi tietokone yhteen niin, että palvelun käyttäjä luulee palvelun tulevan yhdeltä ja samalta palvelimelta. LDAP Lightweight Directory Access Protocol. Hakemistopalvelujen käyttöön tarkoitettu verkkoprotokolla. Linux Suomalaisen Linus Torvaldsin kehittämä käyttöjärjestelmän ydin. Ydin eli kernel on käyttöjärjestelmän keskeinen osa. Se mahdollistaa käyttöjärjestelmän muiden osien toiminnan. Ensimmäinen Linuxin versio julkaistiin vuonna 1992. Nimeä Linux käytetään myös puhuttaessa käyttöjärjestelmästä, jonka ydin on Linux. Ytimen lisäksi kokonaiseen käyttöjärjestelmään kuuluu myös joukko sovellusohjelmia, jotka Linuxin tapauksessa ovat useimmiten GNU -projektin tuottamia työkaluja. (Wikipedia Suomi [online]) Mandrake Linux-jakeluversio MS-DOS Microsoft Disk Operating System on Microsoftin vuonna 1981 kehittämä tekstipohjainen käyttöjärjestelmä IBM-yhteensopiviin työasemiin. PAM Pluggable Autetication Module. Käyttäjätunnistuksen apuväline Linuxkäyttöjärjestelmässä. POP Post Office Protocol on sähköpostin käsittelyyn tarkoitettu protokolla. RedHat Linux-jakeluversio Samba Windows-käyttöjärjestelmissä käytetystä SMB -tiedonsiirtoprotokol-lasta UNIX käyttöjärjestelmille muokattu avoin toteutus. SMB eli Server Message Block. SMB on oletusarvoinen menetelmä Windows-työasemien väliseen tiedostojen siirtoon. SSH Secure Shell on suosittu ja tehokas ohjelmistopohjainen tapa salattuun tiedonsiirtoon. Ohjelma toimii niin, että SSH-asiakaskoneesta otetaan etäyhteys SSH-palvelimeen, jonka resursseja voidaan sitten käyttää konsolin kautta. TCP/IP Transmission Control Protocol / Internet Protocol on tietoverkkoprotokollien yhdistelmä, jota käytetään verkkoliikennöinnissä.

Telnet Yhteysprotokolla, jota käytetään verkon ylitse tapahtuvaan toisen työaseman tai palvelimen hallintaan ns. pääteyhteyttä käyttäen. Telnet on salaamaton protokolla. Telnetiksi kutsutaan usein myös telnet-protokollaa käyttävää ohjelmaa. UID User Identification number. UNIX-järjestelmässä vaadittu käyttäjän numeerinen tunnus. UNIX Laitteistoriippumaton tietokoneiden käyttöjärjestelmä. Alkuperäisestä Unixista polveutuvia käyttöjärjestelmiä ovat mm. Mac OS X, Solaris, HP-UX ja AIX. GNU/Linux-käyttöjärjestelmä on Unix-yhteensopiva, muttei perustu samaan ohjelmakoodiin. Windows 2003 Server Microsoftin kehittämä palvelinkäyttöjärjestelmä, joka perustuu LDAP protokollaan. X500 Hakemistopalvelu, johon DAP ja LDAP perustuvat. 8

9 3. Linux-käyttäjän tunnistus Windows-toimialueella Tilanne, jota kuvaan työssäni, pakotti minut verkonylläpitäjänä miettimään tarkoin mikä on paras ratkaisu Linux-työasemien liittämiseksi Windows-verkkoon. TTY:llä oppimisympäristön verkossa on n. 12.000 käyttäjää. Tällä hetkellä verkossa on ainoastaan Windows-käyttöjärjestelmällä varustettuja koneita. Käyttäjille on luotu vain Windows-käyttöön tarkoitetut käyttäjä tunnukset. Näistä 12.000:sta käyttäjästä kuka tahansa saattaisi kirjautua Linux-työ-asemalle ja haluaisi työskennellä samalla tavoin kuin verkon Windows-työasemilla. Tälle käyttäjälle pitäisi pystyä takaamaan samat palvelut jo verkossa olemassa olevilla Windows 2000 Pro työasemilla. Näistä palveluista tärkeimmät ovat saman käyttäjätunnuksen ja salasanan käyttö, pääsy omaan verkkolevyasemaan ja tulostus. Tämä voidaan toteuttaa monella tavalla. Yksi tapa on, että olemassa olevien Windows-palvelinten rinnalle asennetaan Linux-käyttöjärjestelmällä varustettu palvelin. Tämän palvelimen tehtävänä on vastata kaikista verkon Linuxkirjautumisista. Näin toimittaessa menetetään jo olemassa olevan Windowstoimialueen hyödyt. Ongelma johon etsin ratkaisua oli siis varsin yksinkertainen: Käyttäjän pitäisi pystyä kirjautumaan Windows-toimialueeseen Linux-käyttöjärjestelmällä varustetusta työasemasta. Internetiä selatessani totesin, että tähän ongelmaan ovat etsineet ratkaisua monet muutkin verkonylläpitäjät. Erilaisia ratkaisuja löytyy esim. seuraavista internet-artikkeleista: 1. David "Del" Elson: Active Directory and Linux (Securityfocus.com [online]) 2. Eric Anderson: Unite your Linux and Active Directory authentication (Linux.com [online]) 3. William Henderson: Authenticating Linux against Active Directory (Windowsnetworking.com [online]) 3.1 UNIX palvelimena Windows verkossa UNIX/Linux-työasemien tai palvelinten liittäminen Windows-toimialueeseen vaihtelee järjestelmästä toiseen. Yleisin käyttötarkoitus on, että Samba-palvelimen kautta päästään käyttämään UNIX/Linux -palvelimilla sijaitsevia levyresursseja ja tulostuspalveluita. Jos tietokonetta halutaan käyttää muutenkin kuin Samban avulla levy- tai tulostinpalvelimena, täytyy luoda paikallisia UNIX/Linux -käyttäjätilejä. Jos verkossa käytetään jo Windows-toimialuetta autentikaatioon Windows-työasemille, tällainen malli on ongelmallinen, sillä kaikki Windows-toimialueen käyttäjätilit on luotava uudelleen, jotta käyttäjät pääsevät käsiksi Samba-palvelimen tarjoamiin palveluihin. Samban toiminta on selvitetty luvussa 7.

Kun ylläpitäjä pyörittää useampaa UNIX/Linux -palvelinta tai -työasemaa ja lisää niitä, niin pian hallittavana on useita erillisiä käyttäjätietokantoja. Vaihtoehtona on myös ottaa käyttöön jonkin muu tunnistusmekanismi. Pian järjestelmässä on kaksi tai jopa useampi käyttäjätietokanta, joiden ylläpitoon kuluu voimavaroja. Jos ylläpitäjä päätyy tällaiseen ratkaisuun, hän ei ole osannut hyödyntää Windows-toimialueen, ehkäpä parasta antia, keskitettyä käyttäjätunnistusta. 10 3.2 Keskitetyn käyttäjätunnistuksen etuja Windows-toimialueen käyttö käyttäjätilienhallinnassa on hyvä tapa minimoida tilienhallinnasta koituvat vaikeudet, kun Linux -työasemia lisätään verkkoon. Sen sijaan, että käytetään Unix-keskitettyä käyttäjätietokantaa, saati paikallisia käyttäjätietokantoja, käyttäjä voi kirjautua Active Directory -palveluun. Kun tämä on tehty huolellisesti niin Linux POP (Post Office Protocol) eli sähköpostipalvelin, SSH (Secure Shell) -palvelin, tai mikä tahansa muu palvelin, jota verkossa käytetään, hyväksyy automaattisesti sisäänkirjautumiset tarkistaen käyttäjän tiedot Windows-toimialueen käyttäjätietokannasta. Kirjautuminen on siis mahdollista samalla salasanalla ja käyttäjätunnuksella molempiin verkossa oleviin käyttöjärjestelmiin. Näin voidaan hoitaa jopa Linuxille tyypilliset konsoliin eli komentokehotteeseen kirjautumiset. (Smith R.W. s.146) Yleensä, joku tai jotkut tilit ovat kuitenkin paikallisesti määriteltyjä. Useimmiten tällainen tili on rootin eli pääkäyttäjän tili. Tämä käytäntö mahdollistaa kirjautumisen koneelle, vaikkei verkko toimisikaan. Se mahdollistaa myös pääkäyttäjälle eri salasanan asettamisen verkon jokaiselle työasemalle. Tämä menettely ei ole järkevää suurissa verkoissa, koska koneita voidaan hallita myös verkon yli eli käyttää ns. etähallintaa. Jos jokaiselle työasemalle on oma salasanansa, on lähes mahdotonta standardisoida asennusta. Malli tosin parantaa verkon tietoturvaa, sillä yhden salasanan joutuminen vääriin käsiin ei heti johda koko verkon tietoturvan radikaaliin heikkenemiseen. Jos yhden työaseman salasana paljastuu joudutaan vaihtamaan vain sen pääkäyttäjän salasana. Moni pääkäyttäjä katsoo kuitenkin käyttäjätietojen paljastumisen riskin olevan niin pieni, että käyttää mieluummin yhtä käyttäjätunnusta ja salasanaa kaikille verkon tietokoneille. Tietokoneiden ja käyttäjien liittyminen Windows-toimialueeseen suunniteltiin tietenkin Windows-kirjautumisia ajatellen. Näin kyseessä on Windowsin kannalta ihanne toimialue. Siinä Windows-palvelimet huolehtivat verkon resurssien jaosta ja ylläpidosta. Näihin palvelimiin kirjaudutaan Windowskäyttöjärjestelmän sisältämältä työasemalta. Tämä ei ole ainoa toimintamalli, sillä Windows-kirjautumistiedot sisältävät myös UNIXin ja Linuxin toimialueeseen kirjautumisessa tarvitsemia tietoja. Tällaisia tietoja ovat salasana ja käyttäjätunnus. Liittymäkohta näiden kahden järjestelmän välissä on siis olemassa. Eroavaisuuksia on ainakin yhtä paljon kuin yhtäläisyyksiä. Windows esimerkiksi salaa salasanan Linuxille vieraalla tavalla. Tämä tapa ei sisällä Linuxille kriittisiä tietoja kuten kotihakemiston polkua tai käyttäjän shelliä (Smith R.W. s.146) eli komentotulkkia.

Jotta verkon käyttäjätunnistus saadaan toimimaan jouhevasti ja turvallisesti, tarvitaan tehokas ja luotettava työkalu. Valittavana on kolme vaihtoehtoa Kerberos, LDAP ja Winbind, joista kaksi ensimmäistä ovat protokollia ja kolmas Samban palvelinohjelmisto. Windowsin Active Directory -palvelu perustuu LDAP -protokollaan. Siihen perustuva tunnistus oli siis luonteva valinta työni pohjaksi. Kun Linux-järjestelmä määritellään autentikoitumaan Windowstoimialueelle, ongelmana on se, että halutaan integroida kaksi erilaista systeemiä, Windows-toimialue ja Linuxin Pluggable Authentication Module (PAM). 11

12 4. Lightweight Directory Access Protocol (LDAP) Lightweight Directory Access Protocol (LDAP) on kooste avoimia protokollia, joiden avulla päästään käsiksi tietoverkossa sijaitseviin keskitettyihin tietohakemistoihin ja -kantoihin. Se perustuu X.500 standardiin, mutta on yksinkertaisempi ja tehokkaampi. Tästä syystä LDAP:ia kutsutaan joskus nimellä "X.500 Lite." (Red Hat Documentation [online]) Aivan kuten X.500, LDAP järjestää tiedon hierarkkisiin hakemistoihin. Nämä hakemistot voivat sisältää erilaista tietoa. Tätä tietoa voidaan käyttää LDAP:ia tukevassa järjestelmässä niin että kaikilla käyttäjillä on pääsy miltä tahansa työasemalta kaikkiin hakemistoihin. (Red Hat Documentation [online]) Usein LDAP:ia käytetään virtuaalisena puhelinluettelona niin, että käyttäjät pääsevät helposti verkon toisten käyttäjien kontaktitietoihin. Mutta LDAP on paljon moniulotteisempi kuin perinteinen puhelinluettelo, koska LDAP - palvelimet voivat tehdä kyselyjä toisiin LDAP -palvelimiin ympäri maailmaa. Nykyään kuitenkin LDAP:ia käytetään useimmiten yksittäisissä organisaatioissa kuten yliopistoilla, ministeriöissä ja yksityisissä yrityksissä. (Red Hat Documentation [online]) LDAP perustuu malliin, jossa asiakaskone ottaa yhteyttä palvelimeen. Palvelimella voi olla hyvinkin erilaisia tietokantoja, jotka on optimoitu nopeaan ja laajaan lukumenettelyyn. Kun LDAP -asiakas ottaa yhteyden LDAP -palvelimeen, tarkoituksena voi olla joko tiedon etsiminen tai sen muokkaus. Kun tietoa halutaan etsiä, palvelin vastaa joko paikallisesti tai kysely voidaan välittää palvelimelle, josta se löytyy. Jos taas LDAP hakemistossa sijaitsevaa tietoa halutaan muokata, palvelin tarkistaa, että käyttäjällä on oikeus muokata tietoja ja lisää tai päivittää tiedot. (Red Hat Documentation [online]) Alunperin LDAP määriteltiin Michiganin yliopistossa. Sen kuvaus löytyy dokumentista RFC 1487 (RFC.net [online]). Nykyinen LDAP -standardi on määritelty vuonna 1995 Internet Engineering Task Force (IETF) organisaation toimesta. Tätä versiota kutsutaan LDAPv2:ksi. Sen kuvas löytyy dokumentista RFC 1777 (IETF RFC documentation [online]). 4.1 Miksi LDAP pitäisi ottaa käyttöön? Suurin hyöty LDAP:in käytössä on se, että kaikki organisaation tiedot voidaan keskittää yhteen tietovarastoon. Esimerkiksi organisaation alayksiköiden ei tarvitse ylläpitää omia käyttäjätietokantoja, sillä LDAP:ia voidaan käyttää järjestelmän keskitettyyn käyttäjätunnistukseen. Lisäksi LDAP tukee salattuun tiedon siirtoon suunniteltuja protokollia kuten Secure Sockets Layer (SSL) ja Transport Layer Security (TLS). LDAP sisältää myös hyvin suunnitellun Application Programming Interface -toteutuksen eli ohjelmointirajapinnan. Tästä johtuen LDAP -sovellusten määrä on nyt jo suuri. (Red Hat Documentation [online]) X.500-standardi määriteltiin vuonna 1988. Directory Access Protocol - standardi (DAP) perustuu myös X.500-standardiin. LDAP on nimensä mukaisesti kevennetty versio DAP:ista. Kevennetty versio on tarpeen, koska DAP:in välittäessä tietoa koko OSI-mallin mukainen protokollapino on käytössä (kts. Kuva 4.1). Tällainen liikenne on hidasta ja vaatii paljon suorituskykyä niin palvelimelta kuin verkoltakin. Tätä varten kehitettiin LDAP, jonka avulla verkon

kaikki tärkeimmät palvelut saadaan käyttöön myös heikkotehoisilla työasemilla. LDAP siis tarjoaa ainoastaan tärkeimmät X.500-standardin palveluista. Se takaa nopeamman ja yksinkertaisemman yhteyden X.500-hakemistoon kuin DAP. (Chadwick D.W. x500book [online]) 13 Kuva 4.1. Protokollien LDAP ja DAP toimintamallit (MitLinX [online]) 4.2 LDAP protokolla Active Directory -palvelussa LDAP on siis hakemistopalveluprotokolla, joka määrittelee hakemistojen tietoyhteydet. Se toimii TCP/IP -protokollien päällä ja voi toimia myös UDP - protokollan (User Datagram Protocol) päällä ns. yhteydettömissä siirroissa. TCP -protokollaa hyväksi käyttäen LDAP -palvelimen asiakas voi kysellä, luoda, päivittää ja tuhota informaatiota, jota säilytetään hakemistopalvelussa. LDAP käyttää TCP -porttia 389. Active Directory -palvelussa LDAP on ainoa verkkoprotokolla, jolla on pääsy hakemistoon. 4.3 Yleisesti käytössä LDAP on varsin yleisesti käytössä. Esim. Netscape ja yli 40 muuta yritystä tukevat LDAP -protokollaa hakemistopalveluissaan (Netscape News [online]). Myös Cisco on Microsoftin kanssa julkaissut LDAP -laajennuksen, joka helpottaa tiedon replikointia verkoissa (News.com.com [online]). Työni kannalta olennaisinta on kuitenkin se, että Microsoftin käyttöjärjestelmät Windows 2000 ja 2003 sisältävät Active Directory -palvelun, jonka ydinprotokollana LDAP on (Microsoft 2000 s239). 4.4 Linuxin käyttäjäntilien hallintatyökalut Linuxissa on kaksi työkalua, joita käytetään käyttäjätilien hallinnassa: Pluggable Authentication Modules (PAM) ja Name Service Switch (NSS). PAM on näistä kahdesta järeämpi työkalu. Se mm. kertoo järjestelmälle kirjautuuko käyttäjä järjestelmään vai ei, sekä helpottaa salasanojen vaihtamista (Smith R.W. s.147). Tässä työssä käyn lyhyesti läpi sen perusteet ja esittelen paremmin vain ne osat, joita tarvitsin. PAM:in lisäksi käytössä on siis NSS. Se sisältää järjestelmän tarvitsemia yleisiä tietoja (Smith R.W. s.147). PAM kuten NSS on esitelty työssäni myöhemmin.

14 5. Pluggable Authentication Modules (PAM) Ohjelmat jotka myöntävät käyttäjille pääsyn järjestelmään tarkastavat jokaisen käyttäjän identiteetin. Tätä prosessia kutsutaan käyttäjätunnistukseksi. Aikaisemmin kaikki käyttäjätunnistusta tarvinneet ohjelmat toimivat omalla tavallaan, koska standardit olivat vielä määrittämättä. Fedora Core 3 ja sen muutkin versiot, kuten useimmat Linux-jakelut, on määritelty käyttämään keskitettyä tunnistusmekanismia, joka on nimeltään Pluggable Authentication Modules (PAM). (Red Hat Documentation [online]) Linuxin kehitysvaiheessa kaikki ohjelmat, jotka tarvitsivat tunnistusta, tekivät sen /etc/password-tiedosta. Toteutus oli yksinkertainen, mutta arka väärinkäytölle, sillä tämä tiedosto oli helppo paikallistaa ja murtaa. Tällainen tietoturvariski piti poistaa. Tilanne ratkaistiin PAM:in avulla. Sen myötä käyttäjän salasana tallennetaan ns. shadow password-muodossa. Salasana tallennetaan nykyisin tiedostoon, johon ainoastaan root-käyttäjällä on käyttöoikeus. Yleensä tämä on /etc/shadows-tiedosto. (Smith R.W. s.419). PAM on räätälöitävissä oleva työkalu, joka lukee tietoa kirjastoista hallitakseen kirjautumisessa tarvittavia tietoja ja osia. Eri Linux-järjestelmien PAM-kirjastot saattavat siis poiketa toisistaan hyvinkin paljon, sillä PAM määritetään aina kyseessä olevaa järjestelmää varten. (Smith R.W. s.420) PAM:in moduulit kertovat kirjautumispalvelulle, kirjautuuko käyttäjä verkkoon vai paikallisesti työasemalle. Ne helpottavat salasanojen vaihtoa ja käsittelevät niihin liittyviä tehtäviä. PAM:in eri osien avulla voidaan yhdistellä eri palveluita uusiksi kokonaisuuksiksi. Tämä on ns. modulaarista yhdistämistä. PAM on siis kirjastojen kokoelma, joka toimii eri sovellusten ja käyttäjätietokannan välissä autentikaatiota varten. (Smith R.W. s.420) 5.1 Pamin määrittely Kun PAM konfiguroidaan, muutoksia tehdään PAM-tiedostoihin. Fedora Core 3 -jakeluversiossa nämä tiedostot löytyvät /etc/pam.d-hakemistosta. Tiedostot näyttävät varsin yksinkertaisilta ja ne on hyvin kommentoitu, mutta silti muuttaessaan tiedostojen sisältöä asiaan vihkiytymätön henkilö voi saada aikaan melkoista sotkua. Koko käyttöjärjestelmä saattaa mennä niin lukkoon, ettei se käynnisty ollenkaan.

15 5.2 Työssä esiintyvien PAM-moduuleiden kuvaukset 5.2.1 pam_cracklib.so (Smith R.W. s. 426) Vastuualue Argumentteja Kuvaus salasana (password) use_authok ja Tarkastaa salasanojen turvallisuuden muut erikseen (mm. onko sitä käytetty asetetut tarkastelutaessa. aiemmin, pituus) niitä vaihdet- Näihin toimiin pam_cracklib.so käyttää libcrack kirjastoa ja systeemi sanastoa (/usr/lib/cracklib_dict). 5.2.2 pam_deny.so (Smith R.W. s. 426) Vastuualue Argumentteja Kuvaus autentikointi, käyttäjätili, Ilmoittaa kirjautumisessa tapahsanjen istunto ja salatuneet virheet, käytetään tietty- pinomuistien lopussa tai osana määrättyjä palveluita estämään luvattomat kirjautumiset. 5.2.3 pam_env.so (Smith R.W. s. 426) Vastuualue Argumentteja Kuvaus Autentikointi conffile=filename, Asettaa ympäristömuuttujat envfile=filename sisäänkirjautumista varten. Perustuu tiedostoon /etc/security/pam_env.conf.

16 5.2.4 pam_ldap.so (PADL Software, Open Source Software [online]) Vastuualue Argumentteja Kuvaus LDAP PAM moduulin LDAP PAM moduuli, autentikaation ja salasanan /usr/lib/security/pam_l hallintaväline dap.so.1, määrää kahden PAM-moduulin toiminnasta: autentikaation ja salasanan hallinnasta. Tämä moduuli (pam_ldap.so.1) on ns. jaettu objekti jonka voi ladata dynaamisesti huolehtiakseen tarpeellisesta toiminnallisuudesta sen mukaan mitä on pyydetty. Sen polku on määritelty PAMkonfiguraatio tiedostossa. Moduuleita pam_ldap.so.1 ja pam_unix.so.1 pitää käyttää yhdessä. Toinen osa tukee UNIX autentikointia. Moduuli pam_ldap.so.1 tukee suoraa tunnistusta LDAP -hakemistopalvelimeen käyttämällä mitä tahansa tuettua autentikointitapaa, kuten CRAM-MD5. Moduuli pam_ldap.so.1 on suunniteltu käytettäväksi suoraan pam_unix.so.1 moduulin jälkeen, kun sitä käytetään autentikointiin ja salasanan hallintaan. Kaikki muut sidonnaiset moduulit, jotka on ajateltu käytettäviksi tähän tyyliin, täytyy sijoittaa ladattaviksi pam_ldap.so.1 moduulin jälkeen. Jos tätä järjestystä ei noudateta UNIX autentikointi ja salasanan hallinta eivät toimi. Pam_ldap.so.1 moduuli tukee sekä autentikointia ja salasanan hallintakomponentteja.

17 5.2.5 pam_limits.so (Smith R.W. s. 426) Vastuualue Argumentteja Kuvaus istunto (session) conf=filename Rajoittaa käyttöoikeuksia, kuvaus löytyy yleensä /etc/security/limits.conf asetustiedostosta, käyttäjän resurssien käyttöön kuten muisti, prosessoriaika jne. Vaatii kerneltuen resurssirajoituksille. 5.2.6 pam_localuser.so (About.com: Library [online]) Vastuualue Argumentteja Kuvaus Edellyttää että käyttäjän tiedot löytyvät tiedostosta /etc/passwd debug Käynnistää debuggauksen file=file Pam_localuser.so on tehty helpottamaan site-wide sisäänkirjautumismenettelyjä. Tyypillinen tilanne on se, että työasemalle kirjaudutaan sekä verkkotunnuksilla että paikallisilla käyttäjätunnuksilla. pam_localuser.so ja pam_wheel.so tai pam_listfile.so käyttäminen on tehokas tapa vähentää joko paikallisten käyttäjien tai/ja verkkokäyttäjien kirjautumisia. 5.2.7 pam_mount.so (Sourceforge.net: Database [online]) Vastuualue Argumentteja Kuvaus Moduulin avulla Tämä moduuli on tarkoitettu voidaan ottaa levypalveluja käyttöön Samba palvelin tai Windows SMB -ympäristöihin (joko Linux NT-palvelin) tai ympäristöihin jossa on käytössä NCP (Netware or Mars-NWE) palvelin, johon Unix-käyttäjät haluavat päästä kivuttomasti käsiksi. Se helpottaa kiinnittymistä yksityisiin levyjakoihin ja muihin vastaaviin resursseihin.

18 5.2.8 pam_smb.so (Dave Airlie's Home Page: Projects [online]) Vastuualue Argumentteja Kuvaus Moduuli tai palvelin, Moduulia voidaan käyttää autentikoitumissa joka mahdollistaa erilliseen SMB - Windowstoimialueen käytön palvelimeen esim. tulostus- tai levypalveluihin kytkeydyttäessä. UNIX-käyttäjän autentikoinnissa. 5.2.9 pam_unix.so (Smith R.W. s. 426) Vastuualue Argumentteja Kuvaus autentikaation, käyttäjätilin, istunnon ja shadow, Linux) kirjautumisen työkalu. nullok, likeauth, Moduuli on perinteisen Unix (ja salasanan hallinta try_first_pass, Perustuu tiedostoihin use_first_pass, /etc/passwd ja /etc/shadow. use_authtok

19 6. Name Service Switch (NSS) PAM:in lisäksi Linux käyttää toistakin ohjelmakomponenttia käyttäjätilien tietojen hallintaan. Tämä komponentti on Name Service Switch (NSS). NSS tekee mahdolliseksi sen, että normaalit UNIX/Linux-järjestelmien autentikaatiossa käyttämät tiedostot (esim. /etc/passwd, /etc/group, /etc/hosts) voidaan korvata keskitetyllä käyttäjätietokannalla, kuten Windowsin Active Directory (Red Hat Documentation [online]). NSS ei siis varsinaisesti välitä autentikointitietoja vaan Linuxille ominaisia tietoja kuten käyttäjänimien UID-tunnisteen ja käyttäjän oletus shellin eli komentotulkin. (Smith R.W. s. 147) NSS on myös suunniteltu modulaariseksi ja toimii käyttäjätietokannan ja sieltä tietoa hakevien sovellutusten välissä. Tämä aputieto on kirjautumisen kannalta aivan yhtä tärkeää kuin PAM -moduulien kuljettama käyttäjätieto. 6.1 LDAP, PAM, NSS Kun LDAP:ia halutaan käyttää käyttäjätunnistukseen, täytyy nämä kaksi tunnistamisvälinettä, eli PAM ja NSS, muokata yhteensopiviksi LDAP:in kanssa. Tämä tehdään niin, että asennetaan PAM- ja NSS-moduulit ja määritellään ne kutsumaan LDAP -moduuleja. Nämä moduulit ovat FC3 -jakelussa pam_ldapja nss_ldap -nimiset. 6.2 LDAP NSS -moduulien muutokset NSS välittää perustietoa käyttäjätilistä Linux-järjestelmälle. NSS määritellään Linuxin etc-hakemiston nsswitch.conf-tiedostossa. Alla olevat rivit sisältävät työkalun, jota NSS käyttää etsiessään käyttäjätietoja. Määritys files ldap kertoo, että LDAP on käytössä: passwd: shadow: group: files ldap files ldap files ldap

20 7. Samba Samba on UNIX-järjestelmille tehty avoin toteutus Windowsissa käytetystä Server Message Block (SMB)-tiedostonsiirtoprotokollasta. Windows- työasemien väliseen levyjakoon ja verkkotulostukseen käytetään nimenomaan SMB- protokollaa. (Smith R.W. s. 33) Samba on työkalupakki, jota käyttämällä Linux-työasema pystyy hyödyntämään Windows-verkon tiedosto- ja tulostuspalvelut. Samba toimii myös toisin päin. UNIX/Linux-verkkojen palvelut on mahdollista saada käyttöön sen avulla Windows-työasemilla. Tämä onkin yleisin Samban käyttötarkoitus. Samba on mahdollista muokata myös palvelinohjelmistoksi ja sillä voi korvata kokonaan Windows-toimialueen kirjautumis- ja tiedostopalvelimen. (The Official Samba-3 HOWTO and Reference Guide [online]) Samba koostuu käytännössä smb-alkuisista työkaluista. Näitä ovat mm. Smbclient, joka on FTP -ohjelman tyyppinen tekstipohjainen työkalu. Smbmount, joka liittää eri koneiden jaetut tiedostot alihakemistoksi Linuxin tiedostojärjestelmään. Liittämisessä käytetään mount-komentoa ja Linuxin ytimen eli kernelin smb-tukea. 7.1 Samban palvelinohjelmistot (Smith R.W. s. 34) Sambassa on myös ns. palvelinohjelmistoja. Näistä neljä tärkeintä ovat: 1) smbd Tämä palvelinohjelma käsittelee tiedosto- ja printteripalvelin asiat. 2) nmbd Nmbd hoitaa sen osan SMB/CIFS toiminnallisuudesta, jota smbd ei hoida, tällaisia ovat mm. NetBIOS nimenselvitys- ja selaustoiminnot. Aina kun smbd on käytössä, myös nmbd toimii aktiivisesti. 3) SWAT SWAT eli Samba Web Administration Tool on graafinen käyttöliittymä Sambaan. Sambaa voi toki hallita tekstipohjaisilla tiedostoilla eli graafinen käyttöliittymä ei ole välttämätön. Se toki helpottaa montaa käyttäjää Samban hallinnassa. Erityisesti se helpottaa tavallista Samba käyttäjää, sillä SWAT auttaa salasanan muutoksissa. Oma kokemukseni on kuitenkin se, että käyttämilläni Samba-versioilla tekstipohjainen määrittely antaa heti vastauksen, kun graafisen muutoksen jälkeen täytyy lähes poikkeuksetta muokata tekstipohjaisia tiedostoja. 4) Winbind Winbindin avulla Linux työasemat osaavat käyttää NetBIOS nimiä ja muutakin Windows-toimialueen tietoa. Tärkein ominaisuus on se, että Winbindin avulla käyttäjä voi tunnistautua Windows-toimialueen käyttäjätietokantaa vasten ja saada käyttöönsä mm. levyjakoja. Vaikka Winbind on palvelinohjelma, se ei tarjoa palveluita muille työasemille, se tarjoaa ainoastaan lisäominaisuuksia työasemalle, jossa se on käytössä.