
l Linux Patch Management: Comparison of Practical Implementations Teemu Pulliainen 2016 Master’s Degree Programme in Information Technology Author Type of publication Date Pulliainen, Teemu Master’s thesis May 2016 Language of publication: English Number of pages: 71 Permission for web publication: x Title of publication Linux Patch Management: Comparison of Practical Implementations Degree programme Master’s Degree Programme in Information Technology Supervisors Rantonen, Mika Häkkinen, Antti Assigned by Maatalouden Laskentakeskus Oy Abstract Recent public, high-profile vulnerabilities in widely used IT architecture components pose a sig- nificant risk to IT systems. As far as public vulnerabilities are concerned, In most cases a mitiga- tion is readily available in a form of a software patch. The remaining issues are thus how to get informed about released patches, how to deploy them in a timely manner and how to ensure the patches are applied to all affected targets. The answer is usually some form of a patch man- agement system. Within a heterogeneous Linux Linux environment no established, industry standard way of de- ploying a patch management system exists. The objective was to study different deployment methods and select the most appropriate one according to the employer requirements, but also to give an insight on the others for the general public. An example implementation of three dif- ferent patch management approaches was carried out in a test environment and each one re- searched and compared to the others. The first approach was creating a system from scratch the second using general-purpose configuration management software and the last was using a ded- icated patch management software. The research was successful. A functional implementation was accomplished with each ap- proach and valuable experience was gained on each one. The positive and negative aspects of all alternatives were examined and recommendation for the overall best solution based on the em- ployer requirements was also given. One should note, however, that such a recommendation is heavily dependent on the environment. The actual implementation to employer environment was not covered. Keywords Patch management, Configuration management, Linux Tekijä Julkaisun laji Päivämäärä Pulliainen, Teemu Opinnäytetyö, ylempi AMK 05 2015 Sivumäärä Julkaisun kieli englanti Verkkojulkaisulupa myönnetty: x Työn nimi Linux Patch Management: Comparing by Practical Implementations Tutkinto-ohjelma Master’s Degree Programme in Information Technology Työn ohjaajat Rantonen, Mika Häkkinen, Antti Toimeksiantaja Maatalouden Laskentakeskus Oy Tiivistelmä Viimeaikaiset laajaa julkisuutta saaneet haavoittuvuudet kriittisissä tietoteknisten jär- jestelmien komponenteissa aiheuttavat merkittävän riskin tietojärjestelmien toiminnalle. Yleiseen tietoon tulevien haavoittuvuuksien osalta korjauspäivitykset ovat useimmiten saatavilla. Jäljelle jäävät kysymykset koskevat siis sitä, kuinka saada tieto päivitysten julkaisemisesta, kuinka päivitykset asennetaan järkevässä ajassa ja kuinka varmistua päivi- tysten asentumisesta. Usein vastauksena toimii päivitysten hallintajärjestelmä. Useita jakeluversioita käsittävien Linux-ympäristöjen osalta ei ole olemassa vakiintunutta tapaa ottaa käyttöön järjestelmä päivitysten hallintaa varten. Tavoitteena oli tutkia erilaisia tapoja hallintajärjestelmän käyttöönottoon ja valita niistä toimeksiantajan kriteereihin parhaiten sopiva toteutus. Toisena tavoitteena oli tarjota suurelle yleisölle tietoa eri tavoista päivitysten hallintaan Linux-ympäristöissä. Kolme erilaista esimerkkitoteutusta otettiin käyttöön testiympäristössä. Eri toteutustapoja tutkittiin ja verrattiin muihin. Ensim- mäisenä toteutustapana toimi täysin itse kehitetty järjestelmä, toisena yleisten asetusten- hallintatyökalujen käyttöön perustuva järjestelmä ja kolmantena nimenomaan päivitysten hallintaan tarkoitettu järjestelmä. Tutkimus onnistui ja jokaisella tutkitulla toteutusvaihtoehdolla saatiin otettua käyttöön mekanismi päivitysten hallintaan. Vaihtoehdoista saatiin kerättyä hyödyllistä tietoa, niiden hyviä ja huonoja puolia punnittiin ja toimeksiantajan vaatimusten perusteella saatiin aikaan suositus toteutettavasta järjestelmästä. Myös yleistä tietoa ja suosituksia eri järjestelmien soveltuvuudesta erilaisiin ympäristöihin saatiin tuotettua. Avainsanat (asiasanat) Linux, muutoksenhallinta, konfiguraation hallinta, tietoturvapäivitys 1 Contents 1 Introduction.......................................................................................4 1.1 Assigner................................................................................................................4 1.2 Motivation and Background.................................................................................4 1.3 Thesis Execution Phases.......................................................................................5 1.4 Objectives and Methods of the Research............................................................5 1.5 Research Scope, Delimitation and Known Challenges.........................................7 2 Background to the Research................................................................8 2.1 Vulnerabilities and Attack Vectors.......................................................................9 2.2 Theory and Processes of Patch Management....................................................10 2.3 Architecture of Patch Management Software...................................................16 2.4 Introduction to Linux Software Management....................................................21 3 Test Environment..............................................................................22 3.1 Overview............................................................................................................22 3.2 Internal Software Repository.............................................................................22 4 Implementation Options...................................................................24 4.1 Self-created........................................................................................................24 4.1.1 Preparation.........................................................................................................................24 4.1.2 Testing Patch Automation on Command Line.....................................................................25 4.1.3 Patch automation on CLI: an interactive approach.............................................................26 4.1.4 Creating a Proof-of-Concept Web Interface.......................................................................29 4.1.5 Creating the Patching Application.......................................................................................31 4.2 Automatizing with Configuration Management Software.................................39 4.2.1 Introducing Configuration Management Systems..............................................................39 4.2.2 Deploying Ansible...............................................................................................................41 4.3 Patch Management Software.............................................................................50 4.3.1 Introduction to Spacewalk..................................................................................................50 4.3.2 Installing and Configuring Spacewalk.................................................................................50 4.4 Comparison........................................................................................................57 5 Conclusions.......................................................................................59 5.1 Self-Created PatchApp.......................................................................................59 2 5.2 Configuration Management Approach..............................................................61 5.3 Spacewalk...........................................................................................................62 5.4 Final Conclusions................................................................................................63 5.5 Reflections on the Research and Further Study.................................................64 References...........................................................................................66 Appendices..........................................................................................68 Figures Figure 1. Architecture proposal (Nicastro, 2011, Chapter 3)........................................12 Figure 2. Architecture proposal from White (2004, 2).................................................19 Figure. 3. Test network topology...................................................................................23 Figure 4. Running apt-get on Debian cluster................................................................28 Figure 5. Running uname on all clusters.......................................................................28 Figure 6. Initial PSSH output on browser......................................................................31 Figure 7. Front page with host listing...........................................................................36 Figure 8. Confirmation dialog before update...............................................................37 Figure 9. Deploying updates.........................................................................................38 Figure 10. Semaphore hosts definition.........................................................................48
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages74 Page
-
File Size-