Vous êtes sur la page 1sur 108

LETUDEDECAS

InformatiqueetRseaux NiveauLicence/Bachelor/DEES

SOMMAIRE Sommaire.................................................................................................................................................................... 3 PrsentationdelasocitXSa............................................................................................................................ 4 Casn1:Systmesinformatiquesetrseaux...................................................................................................... 6 Casn2:Basesdedonnesrelationnelles(Casamaroc).................................................................................... 16 Casn3:OnlinePOOetBDD.............................................................................................................................. 26 Casn4:Insascuritinformatique.................................................................................................................. 33 Casn5:Administrationsystmesrseauxsouslinux...................................................................................... 41 Casn6:Dveloppementdesapplicationsinformatiques(POO)..................................................................... 51 Casn7:ConceptionetmodlisationdesSI...................................................................................................... 59 Casn8:RseauxetprogrammationShell........................................................................................................ 65 Casn9:Rseautiqueetlogiquedeprogrammation......................................................................................... 76 Casn10:Administrationrseauetscuritinformatique................................................................................ 85 Cas n11: Administration et mise en uvre des rseaux (CCNA) et programmation autour des bases de donnes............................................................................................................................................................... 92 Cas n12: Administration et mise en uvre des rseaux (CCNA) et programmation autour des bases de donnes............................................................................................................................................................. 102

20102011FEDUCASARueduRhne1161204Genve

PRESENTATIONDELASOCIETEX.SA Le groupe X. SA est un groupe franais dont le sige social se trouve Paris. Il s'est construit l'origine, en 1971, autourdel'activitd'dition. Ilestimplantaujourd'huidans10paysets'estfortementdiversifierautourdecinqactivitsprincipales: Formation Edition Tlcommunicationsetmdias Informatiqueetrseaux Dveloppementdurableetraisonn,nergiesrenouvelables. LegroupeX.SAestctenbourse. X.SAestundesleadersdansledomainedueLearningavecsafiliale"X.SAonline". En intgrant progressivement dans sa politique de diversification une dmarche ambitieuse et structure en matire de dveloppement durable et raisonn, X. SA s'engage concilier les impratifs de rentabilit conomique et les impratifs environnementaux de l'ensemble de ses activits. A cet effet, l'innovation et la recherche, comme moteurs essentiels du dveloppement de l'entreprise font parties intgrantes du systme de managementdelaqualitmisenplacedanstouteslesentitsconstitutivesdugroupeX.SA. Activitsdugroupe: CAconsolid:3753millionsd'euros.

Activits
Formation

Services/Produits
Servicesdeformation,elearning,activitsdeconseil.

Edition

Productionditoriale(papier,online,audiovisuelle),activitsdeconseil

Tlcommunications,mdias

Tlphoniemobile,productionpublicitaireetinternet Recherche et ingnierie, produits informatiques Grande consommation et rseaux, commercialisation des produits informatiques, activits de conseil.

Informatiqueetrseaux

Dveloppement durable et raisonn, Grandeconsommation,activitsdeconseil,ingnierieetrecherche. nergierenouvelable CapitalX.SA: Le capital de X. SA est dtenu 53 % par le groupe Y. SA, le public 31 %, les salaires du groupe 15.9 % et 0.1 % et enautocontrle.

20102011FEDUCASARueduRhne1161204Genve

Chiffred'affairesenmillionsd'euros: Exercice N N1 Chiffred'affaires(CA) 3753 3115

Nombretotaldecollaborateurs: Lenombretotaldecollaborateursestde4900personnes,dont: 1500enFrance 3400traversleresteduMonde. Lesprincipalesfilialesdugroupe: LegroupeX.SAdisposede5principalesfiliales,dontchacunes'estspcialisedansundomained'activit: Luxembourg :X.SAOnLine(elearning) Allemagne :ALSA(Energiesrenouvelables) Maroc :CaSA(Informatiqueetrseaux) Inde :InSA(Tlcommunications,mdias) USA :UsSA(Energiesrenouvelables).

20102011FEDUCASARueduRhne1161204Genve

CASN1:SYSTEMESINFORMATIQUESETRESEAUX Prsentationgnraleduthme: Le rseau du groupe X. SA est compos d'un site central Paris et de 5 sites correspondants aux diffrentes filialesdugroupe. Unschmadtailldurseauestprsentciaprs. Au niveau du site central, on a install 3 contrleurs de domaine Windows 2003. Les noms respectifs des 3 serveurssont: 1. paris1.region1.groupexsa.net. 2. paris2.region1.groupexsa.net. 3. paris3.region1.groupexsa.net.

Missions: 1 Expliquerlesdiffrentespartiesdunom:paris1.region1.groupexsa.net. 2 Afin de scuriser l'accs au domaine et de mettre place un ensemble de restrictions (ACL) sur certaines ressources partages, l'administrateur a dcid de crer un ensemble de groupes et/ou OU (OrganizationalUnit). a. Donner les diffrents types de groupes de scurit qu'il est possible de crer dans un annuaire Active Directory d'une infrastructure Windows 2003. (on doit tenir compte du niveau fonctionnel).Expliquerlesprincipalesdiffrencesentrecesdiffrentstypesdegroupes. b. Quels sont les points de similitude et de divergence entre une OU (Organizational Unit) et un conteneurstandard(Users,Computers,)? c. Proposerl'administrateurdevotresystmeunestratgiefiablepourrsoudreceproblme. 3 Lesautressitespossdentchacununcontrleurdedomaine a. Qu'estce qu'une relation d'approbation ? Expliquer dans quels cas, une relation d'approbation estimpliciteetesttransitive?Exemplifiervotrerponse. b. Enquoiconsistelarplicationintrasite?Expliquerlesprincipesdefonctionnement. Proposerunschmafonctionnel. c. Donner le rle de chacun des types d'enregistrement de ressource suivants : A, CNAME, PTR, SOAetMX.Exemplifiervotrerponse d. Expliquerlerled'uneGPO,toutendonnantsonordred'application. ExisteilunlienentrelesdroitsNTFSetlaGPO?Sioui,enquoiconsistecelien? e. Le groupe X. SA prvoit une extension de ses structures, il possde un site central Tours et trois sites secondaires (filiales) situs Paris, Grenoble et Nice. Il a inscrit le nom de domaine "owis.net"pourlagestiondesonespacedenoms.

20102011FEDUCASARueduRhne1161204Genve

Dans le but d'amliorer l'administration de son rseau actuel, le responsable informatique a dressunelistedel'ensembledesbesoins: Chaquesitedoitavoirsazonedenomsissuedunomdedomaineprincipal"groupexsa.net". Pourchaquesite,ondevrainstallerundomaineActiveDirectory. Tout utilisateur cr au niveau d'un site, doit pouvoir se connecter partir de n'importe quel autresite. Une tolrance aux pannes doit tre assure au niveau de chacun des sites, notamment pour l'accsauxdomaines. L'accs aux ressources partages disperses physiquement sur diffrents sites devra tre transparentpourlesutilisateursetsurtoutrpertoridansl'annuaireActiveDirectory. Leschmafonctionneldurseauestprsentauniveaudel'annexe. Lesfilialesdisposentd'unecentainedepostesenvironetdequatreserveursaumaximum. Lesitecentralestdotde250postesetd'unedizainedeserveurs. En matire d'administration, chaque site possde un administrateur autonome, mais les administrateursdusigedoiventavoirlamainsurtouslessitessecondaires. Proposer une solution permettant de rpondre aux attentes de cette socit compte tenu des contraintescites.Argumentertousleschoixetsolutions.

20102011FEDUCASARueduRhne1161204Genve

ANNEXE1 SCHEMAFONCTIONNELDURESEAU
Sige social Paris

Luxembourg

Maroc

Inde Allemagne USA

20102011FEDUCASARueduRhne1161204Genve

CASN1:SYSTEMESINFORMATIQUESETRESEAUX CORRIGE 1 Expliquerlesdiffrentespartiesdunom:paris1.region1.groupexsa.net. Ce nom est un nom DNS (Domain Name server) ou ce qu'on appelle communment un FQDN (Fully Qualified DomainName)qu'onpourraittraduireparNomd'htepleinementqualifi. Cenomestcomposdeplusieursparties: .:Lenomdudomaineracine. Net:Estunnomdedomainedeniveausuprieur,appelTLD(TopLevelDomain),toutdomaineTLDestrattach laracinepoint. groupexsa:reprsenteundomainedeniveauinfrieur,propreunestructureouuneorganisation,ilconstitue galementunespacedenommagedesressourcesd'unestructureoud'unentreprise. region1 : Constitue un sousdomaine ou une zone appartenant au domaine groupexsa fait partie de l'espace de nommage. paris1:Reprsentelenomd'unserveuroud'unestation. 2 Afin de scuriser l'accs au domaine et de mettre place un ensemble de restrictions (ACL) sur certaines ressources partages, l'administrateur a dcid de crer un ensemble de groupes et/ou OU (OrganizationalUnit). a. Donner les diffrents types de groupes de scurit qu'il est possible de crer dans un annuaire Active Directory d'une infrastructure Windows 2003. (on doit tenir compte du niveau fonctionnel).Expliquerlesprincipalesdiffrencesentrecesdiffrentstypesdegroupes. Lesgroupesdescuritpermettentdeuxtypesdedroitsquidoiventsecorrlerentreeux. Assignerdesdroitsutilisateurs Assignerdesautorisationssurdesressources Envoyerdesmailsaugroupe(commelesgroupesdedistribution) Ilexiste3typesd'tenduesdegroupedescuritsousWindows2003Server: Groupeglobal. Groupededomainelocal Groupeuniversel Groupeglobal: Il doit servir contenir des comptes utilisateurs ou d'autres groupes globaux. Le but de l'utilisation de type d'tendue est de pouvoir regrouper des utilisateurs ayant des droits similaires quant aux accs certaines ressources. Cetyped'tenduesestautorispourlesniveauxfonctionnels:mixteetnatif. Groupededomainelocal: Ce type d'tendue permet de regrouper des utilisateurs, des groupes globaux et aussi des groupes de domaine local,afind'attribuerdesdroitsd'accsauxdiffrentesressourcespartages. Cetyped'tendueestautorispourlesniveauxfonctionnels:mixteetnatif.
20102011FEDUCASARueduRhne1161204Genve

Ungroupededomainelocalpeutcontenirungroupeglobal,maispasl'inverse. Groupeuniversel Ce type de groupe peut contenir des comptes de tout domaine de la fort, de groupes globaux de tout domaine delafort,ainsitoutgroupeuniversel. Cetyped'tendueestautorispourlesniveauxfonctionnels:natifetwindows2003. b. Quels sont les points de similitude et de divergence entre une OU (Organizational Unit) et un conteneurstandard(Users,Computers,)? Un conteneur standard (Computers, Users, ) permet seulement de stocker des objets de l'annuaire des fins d'organisation,lesUOgalementmaispermettentenplusdegrerplusfinementlesobjetscontenus. Troisraisonsprincipalesfontladiffrenceentrel'OUetlesconteneursstandards: Organiserlesobjetsd'undomainedansl'annuaired'unefaonplusordonne Permettreladlgationdetchesd'administrationcertainsmembresd'uneUO Mettreenplacedesstratgiesdegroupe(GPO)quis'appliqueronttouslesmembresd'uneUO c. Proposerl'administrateurdevotresystmeunestratgiefiablepourrsoudreceproblme. Solution1 Regroupementdescomptesdudomainedansdesgroupesglobaux Crationdegroupesdedomainelocalenyaffectantlesdiffrentsgroupesglobaux CrationdesACLetattributionauxgroupesdedomainelocal Solution2 Regroupementdescomptesdudomainedansdesgroupesglobaux Crationd'uneunitd'organisation(OU) Affectationdesgroupesglobauxauseindel'OUcre Crationd'uneGPO(GlobalPolicyObjet) Applicationdelastratgiel'OUcre 3 Lesautressitespossdentchacununcontrleurdedomaine a. Qu'estce qu'une relation d'approbation ? Expliquer dans quels cas, une relation d'approbation estimpliciteetesttransitive?Exemplifiervotrerponse. Les relations d'approbation permettent un utilisateur d'un domaine d'accder aux ressources d'un autre domaine et un administrateur de pouvoir grer les utilisateurs de l'autre domaine. Il y a deux proprits principalespourunerelationd'approbationqu'ilfautconnatreafindemieuxcomprendrelefonctionnement: Ladirection Ilyadeuxpossibilitspourunerelationd'approbation,soitelleestunidirectionnellec'estdiredansunseulsens ou alors bidirectionnelle c'est dire dans les deux sens. Une relation unidirectionnelle permet d'approuver un domaine partir d'un autre domaine sans que l'inverse soit appliqu. C'est dire que si un domaine A approuve un domaine B, alors un utilisateur du domaine A pourra accder aux ressources du domaine B mais l'inverse sera impossible.
20102011FEDUCASARueduRhne1161204Genve

10

Latransitivit Ce terme fait rfrence la notion mathmatique au sens propre du terme, c'est dire que si un domaine A approuve un domaine B et que le domaine B approuve lui mme un domaine C et bien alors implicitement le domaineAapprouveraledomaineC!Touteslesrelationsd'approbationsnesontpasforcmenttransitives.C'est cequenousallonsvoir. Unerelationd'approbationestimpliciteetesttransitivedanslescassuivants: Domaineparent/Domaineenfant(infosup.lanetpedago.infosup.lan) Racined'arborescence(infosup.netetesi.net) b. Enquoiconsistelarplicationintrasite?Expliquerlesprincipesdefonctionnement. Proposerunschmafonctionnel. Larplicationintrasitecorrespondladuplicationdelabased'annuaireActiveDirectoryl'intrieurd'unmme sitec'estdireentrecontrleursdedomaineconnectspardesliaisonsrapidesetfiables. Afin de permettre la rplication de la base d'annuaire Active Directory dans un site, les contrleurs de domaine utiliserontleprotocoleRPCoverIP(RemoteProceduresCalloverInternetProtocol). Ceprotocolepermetunetransactiond'informationsdemaniresre,rapide,etnoncompresse.Ilestdoncbien adaptpourlarplicationintrasite. Une rplication intervient lorsque la base d'annuaire Active Directory sur l'un des contrleurs de domaine est modifie.Lesmodificationspouvantdonnerlieuunerplicationsontlessuivantes: Ajoutd'unobjetActiveDirectory(ex:crationd'uncompteutilisateur) Modificationdesvaleursd'attributd'unobjet(ex:modificationduprnomd'unutilisateur) Modificationdunomd'unconteneurd'objet(ex:modificationdunomd'uneunitd'organisation) Suppressiond'unobjetdel'annuaireActiveDirectory(ex:suppressiond'uncompteutilisateur) Suite une modification de la base d'annuaire sur un contrleur de domaine, un temps de latence observ avant quecedernierenvoieunmessagedenotificationdemodificationauxautrescontrleursdedomaine(partenaires derplicationdirects)dummesite. Lorsque les partenaires de rplication reoivent la notification, ils demandent les modifications auprs du contrleurdedomaine. Le contrleur de domaine, partir duquel la mise jour d'origine a eu lieu, envoie alors les modifications ses partenairesderplication. Ilestnoterqu'aprsletempsdelatencede5minutes,touslespartenairesderplicationnesontpasnotifisen mmetemps:undespartenairesderplicationsdirectsseranotifienpremierdelamodificationpuislesautres serontnotifisleurstoursintervallesde30secondes.Celapermetdenepassaturerlecontrleurdedomaine sourcelorsdedemandedemisesjoursimultanesdelapartdeplusieurspartenairesderplication.

20102011FEDUCASARueduRhne1161204Genve

11

c. Donner le rle de chacun des types d'enregistrement de ressource suivants : A, CNAME, PTR, SOAetMX.Exemplifiervotrerponse Les enregistrements de ressources constituent les enregistrements de la base de donnes DNS (Domain Name Server).Ilssontdeplusieurstypes,ondistingue: A : type tablissant la correspondance entre un nom canonique et une adresse IP. Par ailleurs, il peut exister plusieursenregistrementsA,correspondantauxdiffrentesmachinesdurseau(serveurs). CNAME (Canonical Name) : Il permet de faire correspondre un alias au nom canonique. Il est particulirement utile pour fournir des noms alternatifs correspondant aux diffrents services d'une mme machine. MX (Mail eXchange) : correspond au serveur de gestion du courrier. Lorsqu'un utilisateur envoie un courrier lectronique une adresse (utilisateur@domaine), le serveur de courrier sortant interroge le serveur de nom ayant autorit sur le domaine afin d'obtenir l'enregistrement MX. Il peut exister plusieurs MX par domaine, afin de fournir une redondance en cas de panne du serveur de messagerie principal. Ainsi l'enregistrementMXpermetdedfiniruneprioritavecunevaleurpouvantallerde065535: PTR:unpointeurversuneautrepartiedel'espacedenomsdedomaines. SOA (Start Of Authority) : le champ SOA permet de dcrire le serveur de nom ayant autorit sur la zone de nommage, ainsi que l'adresse lectronique du contact technique (dont le caractre "@" est remplac par un point). d. Expliquerlerled'uneGPO,toutendonnantsonordred'application. ExisteilunlienentrelesdroitsNTFSetlaGPO?Sioui,enquoiconsistecelien? Lesstratgiesdegroupe(ouGPOpourGroupPolicyObject)sontdesfonctionsdegestioncentralisedelafamille MicrosoftWindows.Elles permettentlagestiondesordinateurs etdesutilisateursdansun environnementActive Directory. Bien que les stratgies de groupe soient rgulirement utilises dans les entreprises, elles sont galement utilises dans les coles ou dans les petites organisations pour restreindre les actions et les risques potentiels comme par exemple le verrouillage du panneau de configuration, la restriction de laccs certains dossiers, la dsactivationdelutilisationdecertainsexcutables. L'ordred'applicationdesstratgiesdegroupe(GPO): 1. Stratgiedescuritlocale 2. Stratgiedusite 3. Stratgiedudomaine 4. Stratgiedel'unitd'organisationParent(OU) 5. Stratgiedel'unitd'organisationEnfant(SousOU) PourlaconfigurationdesGPO,plusieursoutilssontdisponibles,notammentl'outilgpmc. Oui, il existe un lien entre les GPO et les droits NTFS. Il faut savoir que les GPO permettent de grer la scurit NTFS. Ainsi, partir d'une console GPMC ou d'un diteur de stratgie, on pourra dfinir un ensemble d'ACL (AccessControlList),basesurdesdroitsNTFS.

20102011FEDUCASARueduRhne1161204Genve

12

e. Le groupe X. SA prvoit une extension de ses structures, il possde un site central Tours et trois sites secondaires (filiales) situes Paris, Grenoble et Nice. Elle a inscrit le nom de domaine"owis.net"pourlagestiondesonespacedenoms. Dans le but d'amliorer l'administration de son rseau actuel, le responsable informatique a dressunelistedel'ensembledesbesoins: Proposer une solution permettant de rpondre aux attentes de cette socit compte tenu des contraintescites.Argumentertousleschoixetsolutions. PourrpondretouslesbesoinsdugroupeX.SA,lestapessuivresontrsumsdanscequisuit: Crationdedomaineenfant/filiale Pourchacunedesfiliales,ondoitcrerundomaineenfantdelamaniresuivante: insa.groupexsa.net FilialeInde alsa.groupexsa.net FilialeAllemagne casa.groupexsa.net FilialeMaroc Montagedescontrleursdedomaines Pour chaque filiale, on doit monter deux contrleurs de domaine, afin d'assurer une certaine tolrance aux pannespourlesitecentraletpourlesfiliales. Au niveau du sige, on doit installer deux serveurs en tant que contrleurs de domaine. Le premier contrleur doitpossderlerleFSMOdematred'oprations.FSMO(FlexibleSingleMasterOperation). Dfinirlesrelationsd'approbationinterdomaines Comme l'infrastructure dfinie est une infrastructure d'arborescence, on utilisera les relations d'approbation prdfiniesoucequ'onappellelesrelationsd'approbationimplicites. Lesrelationsd'approbationimplicitessontpardfautbidirectionnellesettransitives. Ainsi, n'importe quel compte de n'importe quel site pourra se connecter sur n'importe quel autre site et inversementvrai. Crationdessitesetdessousrseaux Dans le but de raliser une rplication inter sites, dans les conditions es plus favorables, l'administrateur doit configurerplusieurssites(ausensWindows2003Server)etdfinirpourchacundessites,dessousrseaux. L'administration des sites et sousrseaux est totalement prise en charge par la console Microsoft "Sites et servicesActivedirectory".
20102011FEDUCASARueduRhne1161204Genve

Chaquesitedoitavoirsazonedenomsissuedunomdedomaineprincipal"groupexsa.net". Pourchaquesite,ondevrainstallerundomaineActiveDirectory. Tout utilisateur cr au niveau d'un site, doit pouvoir se connecter partir de n'importe quel autresite. Une tolrance aux pannes doit tre assure au niveau de chacun des sites, notamment pour l'accsauxdomaines. L'accs aux ressources partages disperses physiquement sur diffrents sites devra tre transparentpourlesutilisateursetsurtoutrpertoridansl'annuaireActiveDirectory. Leschmafonctionneldurseauestprsentauniveaudel'annexe. Lesfilialesdisposentd'unecentainedepostesenvironetdequatreserveursaumaximum. Lesitecentralestdotde250postesetd'unedizainedeserveurs. En matire d'administration, chaque site possde un administrateur autonome, mais les administrateursdusigedoiventavoirlamainsurtouslessitessecondaires.

13

Administrationdescomptes,desgroupesetdesOU L'administrateursedoitdecrerpourlesigesocial,desgroupesglobauxpourregrouperlescomptesparservice etdesgroupesdedomainelocalpourdfinirlesACLsurlesdiffrentesressources. Parcontrepourlesfiliales,l'administrateurdusigedoitcrerdesOU(Unitsd'Organisation)pourchacunedes5 filiales,afindepouvoirdlguerl'administrationdesfilialesauxadministrateursinternes. Ainsi, la cration des groupes globaux et des groupes de domaine local au niveau des filiales, se fera par les administrateurs prsents sur place. Par rplication inter sites, on pourra les rcuprer au niveau de toutes les autresfiliales,ycomprisauniveaudusigesocial.

20102011FEDUCASARueduRhne1161204Genve

14

Outilsetcomptencesutiliss:

Comptencesetoutilsabords
SystmeMicrosoftWindows AdministrationWindows2003/2008 Gestiondesutilisateurs,desgroupes,desdroitsNTFSetdespartages Architecturedel'annuaireActiveDirectory ConfigurationetadministrationduDNSdel'AD OU(OrganizationalUnit)etdedlgationd'administration Notionsdefortsetd'arborescences Relationsd'approbationsentrelesdomaines NotionsderplicationsdansAD

20102011FEDUCASARueduRhne1161204Genve

15

CASN2:BASESDEDONNEESRELATIONNELLES(CASAMAROC) Prsentationgnraleduthme:

PartieI
La filiale CaSA du Maroc, spcialise dans le dveloppement informatique et l'administration des systmes et rseaux, a t sollicit par un organisme de location d'appartements du type HLM, pour la ralisation d'une base de donnes lui permettant de grer l'ensemble des locataires. Aprs une tude du rel peru et des diffrents liens entre les donnes manipules par cette application, il en dcoule le MRD (Modle Relationnelle des Donnes)suivant: L'valuation des diffrents candidats lors des formations dispenses par le groupe X. SA, met en uvre une base dedonnesOracle,dontlemodlephysiqueestprsentciaprs. Modlerelationnel

Locataire
(l_code,l_nom,l_prn,l_age,l_adresse,l_telephone) Immeuble (i_code,i_nbetage,i_codeacc) Appartement (a_code,a_etage,a_etat,a_imm#,a_loc#,a_type#) Type_App (t_code,t_designation,t_superf,t_loyer)
N.B Lespropritssoulignessontdesclsprimaires Lespropritssuiviesdusymbole"#"reprsententdesclstrangres Missions: 1 Exprimer en quoi consiste la normalisation d'un modle relationnel et donner l'avantage de cette normalisation. 2 EcrireunscriptSQLcomment,permettantlacrationdelabasededonnesprcdente. 3 Lister dans un ordre croissant les appartements (code, tage, immeuble, code accs) dont les codes sont compris entre 210 et 270 et ne se trouvant pas au rezdechausse. Si le code d'accs est vide, il doittreremplacparlavaleur0. 4 Afficherlalistedeslocataires(nom,prnom,ge,adresse)pourleslocatairesdel'immeuble10,touten masquant l'adresse des locataires des autres immeubles. Trier les rsultats obtenus par ordre alphabtiquesurlenom. 5 Calculer le loyer le plus lev, le moins lev et la moyenne des loyers appliqus, en ralisant l'affichagesuivant
20102011FEDUCASARueduRhne1161204Genve

16

6 Listerleslocatairesdunimmeubledonn. Exemplepourl'immeuble10,lersultatestlesuivant: NomImmeuble ALAIN10 ESTELLE10 MICHEL10 7 Listerleslocatairesdunimmeubledonn. Le plus souvent l'accs aux coordonnes d'un locataire s'effectue en rcuprant les informations suivantes: Codeetnomdulocataire Rfrencedesonappartement Lenomdesontyped'appartement Numrodesonimmeuble Sontage Lecoded'accsl'immeuble Proposerunmoyenrapidepourpouvoiraccderl'ensembledesinformationscitescidessous. 8 Crerunecopiedelatable"Immeuble". 9 Afficher l'immeuble contenant le plus d'appartements (avec le nombre d'appartements) et ayant un nombred'tagessuprieurougal5. PartieIIPOO(ProgrammationOrientObjet) Dans le but dautomatiser le calcul des impts locaux pour les habitations, le service informatique de la mairie a opt pour le dveloppement dune application objet en langage JAVA. La ralisation de cette application a t configalementlafilialeCaSAduMarocdugroupeX.SA. Unetudedelexistantapermisdlaborerlasynthsesuivante: Toutehabitationestcaractriseparlesattributssuivants: Propritaire:nomdupropritaire, Adresse:adressedelhabitation, Surface:surfacedelhabitationservantcalculerlemontantdelimpt. calculImpot() qui permet de calculer le montant de limpt que doit payer le propritaire de lhabitation raisonde15parm2. afficherHabitation()quipermetdafficherlesattributsdelaclasseHabitation. Unconstructeurpermettantdinitialiserleschampsdinstancedelaclasse. Par ailleurs, on sest rendu compte que le calcul de limpt tait rgi par dautres critres autre que la superficie et ce, fonction du type dhabitation concern. Ainsi, on distingue deux catgories dhabitation: Habitation personnelle et locaux professionnels. Pour le premier type, limpt est calcul en fonction de la superficie, du nombredepices(75/pice)etdelaprsenceounondunepiscine(250). Pourcequiestdusecondtypedhabitation,limptestcalculenfonctiondelasuperficieoccupeetdunombre demploystravaillantdanscetteentreprise(450/tranchede10employs).
20102011FEDUCASARueduRhne1161204Genve

17

Missions: 1 CrerlaclasseHabitation. 2 CrerlesdeuxclassesconcrtesHabIndivetHabProf 3 Proposeruneclassepermettantderaliserdessimulationsdesclassesprcdentes.

20102011FEDUCASARueduRhne1161204Genve

18

CASN2:BASEDEDONNEESRELATIONNELLES(CASAMAROC) CORRIGE

PartieI
1 Exprimer en quoi consiste la normalisation d'un modle relationnel et donner l'avantage de cette normalisation. Unmodlerelationnelestnormalis,s'ilestsoumisauxtroisformesnormales: Premireformenormale(1FN) Unerelationesten1FN,siellenecontientquedespropritsatomiquesoulmentaires. Deuximeformenormale(2FN) Une relation est en 2FN, si elle est en IFN et, si en plus, il nexiste pas de dpendance fonctionnelle entre une partiedunecletunepropritautrequelacl. Troisimeformenormale(3FN) Une relation est en 3FN, si elle est en 2FN et si, en plus, il n'existe aucune dpendance fonctionnelle transitive entre les proprits autre que la cl. Autrement dit, les attributs nappartenant pas la cl ne dpendent pas dattributquinappartiennentpasnonplusdelacl. 2 EcrireunscriptSQLcomment,permettantlacrationdelabasededonnesprcdente. Crationdelatablelocataire Createtablelocataire( l_codenumber, l_nomvarchar2(35), l_prnvarchar2(55), l_agenumber(2), l_adressevarchar2(75), l_telephonevachar2(15), Constraintpk_locPRIMARYKEY(l_code)); CrationdelatableImmeuble CreatetableImmeuble( i_codenumber, i_nbetageNumber(2), i_codeaccnumber(4), Constraintpk_ImmPRIMARYKEY(i_code)); Crationdelatabletyped'appartement CreatetableType_App( t_codenumber, t_designationvachar2(45), t_superfnumber(7,2), t_loyernumber(7,2), Constraintpk_TypePRIMARYKEY(t_code));

20102011FEDUCASARueduRhne1161204Genve

19

CrationdelatableAppartement CreatetableAppartement( a_codeNumber, a_etageNumber(2), a_etatVarchar2(25), a_immNumber, a_locatNumber, a_typeNumber, Constraintpk_TypePRIMARYKEY(a_code) Constraintfk_immFOREIGNKEYa_immREFERENCESImmeuble(i_code), Constraintfk_locatFOREIGNKEYa_locatREFERENCESLocataire(l_code), Constraintfk_TypeFOREIGNKEYa_typeREFERENCESType_App(t_code)); Finduscript 3 Lister dans un ordre croissant les appartements (code, tage, immeuble, code accs) dont les codes sont compris entre 210 et 270 et ne se trouvant pas au rezdechausse. Si le code d'accs est vide, il doittreremplacparlavaleur0. Selecta_code,a_etage,a_imm,decode(i_codeacc,NULL,0,i_codeacc) FromAppartement,Immeuble Wherea_imm=i_code Anda_etage>0 Anda_codebetween210and270 Orderbya_code; 4 Afficherlalistedeslocataires(nom,prnom,ge,adresse)pourleslocatairesdel'immeuble10,touten masquant l'adresse des locataires des autres immeubles. Trier les rsultats obtenus par ordre alphabtiquesurlenom. Selectl_nom,l_prn,l_age,decode(a_imm,10,adresse,'*******') Fromlocataire,Appartement Wherel_code=a_loc Orderbyl_nom; 5 Calculer le loyer le plus lev, le moins lev et la moyenne des loyers appliqus, en ralisant l'affichagesuivant: LoyerMin LoyerMax Moyenne 350 1150 777,85 SelectMIN(t_loyer)as'LoyerMin',MAX(t_loyer)as'LoyerMax', AVG(t_loyer)as'Moyenne' FromType_App; 6 Listerleslocatairesdunimmeubledonn. Exemplepourl'immeuble10,lersultatestlesuivant:
20102011FEDUCASARueduRhne1161204Genve

20

NomImmeuble ALAIN10 ESTELLE10 MICHEL10 Selectl_nomAS'Nom',a_immAS'Immeuble' FromLocataire,Appartement Wherel_code=a_imm Anda_imm=&val; valestunparamtre)saisirlorsdel'excutiondelarequte. CettemanipulationestduressortduSQL/PlussousOracleetn'arienavoirleSQLstandard.

7 Listerleslocatairesdunimmeubledonn. Leplussouventl'accsauxcoordonnesd'unlocataires'effectueenrcuprantlesinformations suivantes: Codeetnomdulocataire Rfrencedesonappartement Lenomdesontyped'appartement Numrodesonimmeuble Sontage Lecoded'accsl'immeuble Proposerunmoyenrapidepourpouvoiraccderl'ensembledesinformationscitescidessous. Pour cela, on procdera la cration d'une vue (View) afin de crer une table virtuelle et de ne pas recrire des requtescomplexescommelasuivante: CreateViewinfos AsSelecta_loc,l_nom,a_code,t_designation,a_imm,a_etage,i_codeacc FromAppartement,Locataire,Type_App,Immeuble Wherea_imm=i_code Anda_type=t_code; 8 Crerunecopiedelatable"Immeuble". CreateImmeuble_copie Asselect*fromImmeuble; 9 Afficher l'immeuble contenant le plus d'appartements (avec le nombre d'appartements) et ayant un nombred'tagessuprieurougal5. Selecta_imm,count(*) FromAppartement,Immeuble Wherei_nbetage>=5 GroupBya_imm Havingmax(cout(*))=(Selectcount(*)fromAppartementGroupBya_imm);

20102011FEDUCASARueduRhne1161204Genve

21

PartieIIPOO(ProgrammationOrientObjet)
1 CrerlaclasseHabitation. ClasseHabitationClasseabstraite abstractclassHabitation{ //Attributs protectedStringnom; protectedStringadresse; protecteddoublesurface; protectedStringtype; //Mthodesettraitements publicHabitation(Stringnom,tringadresse,doublesurface,Stringtype){ this.nom=nom; this.adresse=adresse; this.surface=surface; this.type=type; } publicvoidafficherHabitation(){ System.out.println("nompropritaire:"+this.nom+"sonadresseest: "+this.adresse+"Lasurfacedesamaisonestde:"+this.surface+"Letypeest: "+this.type); } publicfunctionafficheImpots(){ "Lavaleurtotaledevotreimpotestde:".this.calculImpot(); } abstractpublicdoublecalculImpots(); }//FindelaclasseHabitation 2 CrerlesdeuxclassesconcrtesHablndivetHabProf Classehabitationindividuelle classHabIndivextendsHabitation{ //Attributsdelasousclasse privateintnbr_piece; privateStringpiscine; //Mthodesettraitementdelasousclasse publicHabIndiv(Stringnom,Stringadresse,doublesurface,Stringtype,int nbr_piece,Stringpiscine){ super(nom,adresse,surface,type); this.nbr_piece=nbr_piece; this.piscine=piscine;

20102011FEDUCASARueduRhne1161204Genve

22

publicdoublecalculImpot() { if(this.piscine=='oui'){ return($this>surface*15)+($this>nbr_piece*30)+120; } else{ return($this>surface*15)+($this>nbr_piece*30); } } publicvoidafficherHabitation(){ super.afficherHabitation(); System.out.println("Nombredepices:"+this.nbr_piece+"Piscine:"+this.piscine); }

Classehabitationprofessionnelle

classHabProfextendsHabitation{

//Attributs

privateintnbr_employe;

publicHabIndiv(Stringnom,Stringadresse,doublesurface,Stringtype, intnbr_employe){ super(nom,adresse,surface,type); this.nbr_employe=nbr_employe; } publicdoublecalculImpot() { return(this.surface*15)+(this.nbr_employe*15); } publicvoidafficherHabitation(){ super.afficherHabitation(); System.out.println("Nombred'employs:"+this.nbr_employe); }

3 Proposeruneclassepermettantderaliserdessimulationsdesclassesprcdentes. LaclasseHabitationtantuneclasseabstraite,donconnepasl'instancier. Onpasseraalorsparlesclassesconcrtes:HabIndivetHabProf. Lesobjetscrerserontdesobjetslisauxsousclasses:HabIndivetHabProf. Lacrationdelaclasseciaprsseferaaprslacrationdes3classesprcdentes.

classSimulation{

publicstaticvoidmain(String[]arrs){ HabIndivobjet1=newHabIndiv("DUPOND","15,ruebelairParis75012",65,"Individuelle",4,"Non");

HabProfobjet2=newHabProf("IESCOM","20,AvdelaRpubliqueParis75011",65,"Professionnelle", 125); //calculerlemontantdel'impt

20102011FEDUCASARueduRhne1161204Genve

23

objet1.calculImpots(); objet2.calculImpots(); objet1.afficherHabitation(); objet2.afficherHabitation();


}

20102011FEDUCASARueduRhne1161204Genve

24

Outilsetcomptencesutiliss:

Comptencesetoutilsabords
LesconceptsdelaPOO PrincipesdebasedelaPOO Classes,objets,encapsulation,abstraction,hritage,polymorphisme,surcharge Elmentsdulangagejava ImplmentationenjavadesprincipesetconceptsdelaPOO OracleSQL SGBDrelationnels LID(LangageInterrogationdesDonnes) LMD(LangageInterrogationdesDonnes) LDD(LangageDfinitiondesDonnes)

20102011FEDUCASARueduRhne1161204Genve

25

CASN3:ONLINEPOOETBDD Prsentationgnraleduthme: Activitsdeformation Les formations proposes par le groupe X. SA, sont assures par un personnel permanent et/ou un personnel externe de la filiale X. SA On Line du Luxembourg. Afin de grer ses effectifs, le service ressources humaines a dcid de raliser une application en langage Java, qui constituera une premire tape avant d'insrer dfinitivementlesdonnesdansunebaseOracle. Ainsi, pour chacun des enseignants permanent ou externe, on dispose d'un matricule, un nom, un prnom, un ge,uneadresseetunsalaire.Ladresseestcomposedunnumroderue,duncodepostaletduneville.Aucun desattributsdelaclasse"Enseignant"nedoittrepublic,l'exceptiondel'adresse. En termes de traitements, la classe "Enseignant" doit permettre la cration de nouveaux enseignants, la modification de leurs salaires sur la base d'un taux donn et de leurs adresses, ainsi quun affichage exhaustif de touslesrenseignementslesconcernant.

PartieI
Missions:

1 Crerlesclasses"Adresse"&"Enseignant". 2 Crerlaclasse"Groupe"quireprsenteraunecollectiondelaclasse"Enseignant". 3 Effectuerlessimulationsettestssurlaclasse"Enseignant"partirdelaclasse"Groupe".

PartieII
Afindesauvegarderdfinitivementlesdonnesrelativesauxdiffrentesformationseffectues,unMRD(Modle Relationnel des Donnes) a t labor et a donn lieu aux tables cidessous. Le choix a port sur le systme de gestiondebasededonnesOracle. ExtraitduMRD CANDIDAT (cand_idNUMBER,NomVARCHAR2(25)NotNull,PrenomsVarchar2(35),AdresseVARCHAR2(55)NotNull, courrielVARCHAR2(30),statutVARCHAR2(15)); FORMATION (for_idNUMBER,dsignationVARCHAR2(30)); SESSION (sess_idNUMBER,date_debDATE,date_finDATE,niveauVARCHAR2(15),for_id#); PARTICIPER (cand_id#,sess_id#,noteNUMBER(5,2),tot_absNUMBER,dcisionVARCHAR2(25));

20102011FEDUCASARueduRhne1161204Genve

26

Missions: 1 L'accs et la recherche dans la table CANDIDAT s'effectuent le plus souvent par le biais du nom du candidat. Donner une solution pour acclrer la recherche cette table. Prciser la requte correspondante. 2 Donner la requte SQL qui permet d'insrer la colonne sexe dans la table CANDIDAT. Cette colonne ne peutprendreque2valeurspossibles'F'ou'M'. 3 Rdigerlesrequtessuivantes: a. Affichage de la liste des candidats ayant particip la formation 'LINUX', organise entre le '21/04/09'etle'21/11/2009'. b. Affichage de la liste des notes par candidat de statut "matrise" dans la formation 'BASEDEDONNEES'pourlasessionnumro'225BDD'du19/06/2010. c. Affichagedustatutdontlescandidatsontbnficideplusdeformations.

20102011FEDUCASARueduRhne1161204Genve

27

CASN3:ONLINEPOOETBDD CORRIGE

PartieI En utilisant l'un des IDE (Integrated Development Environment) Eclipse ou NetBeans, on doit procder la crationd'unnouveauprojetetpuisimplmenterlesclassesciaprs. 1 Crerlesclasses"Adresse"&"Enseignant" classAdresse{ publicintnum_rue; publicStringnom_rue; publicintcp; publicStringville; publicAdresse(intnum_rue,Stringnom_rue,intcp,Stringville){ this.num_rue=num_rue; this.nom_rue=nom_rue; this.cp=cp; this.ville=ville; } publicvoidsetAdresse(intnum,Stringnom,intcp,Stringville){ this.num_rue=num; this.nom_rue=nom; this.cp=cp; this.ville=ville; } }//FinlaclasseAdresse classEnseignant{ protectedintmat; protectedStringnom; protectedStringprn; protectedintage; protectedAdresseadr; protecteddoublesalaire; publicEmploye(intmat,Stringnom,Stringprn,intage,Adresseadr,doublesalaire){ this.mat=mat; this.nom=nom; this.prn=prn; this.adr=adr; this.fonct=fonct; this.salaire=salaire; } publicvoidsetSalaire(doubletaux){ salaire+=salaire*taux; } publicintgetMat(){ returnmat; } publicStringgetNom(){ returnnom;
20102011FEDUCASARueduRhne1161204Genve

28

} publicStringgetPrn(){ returnprn; } publicStringgetAge(){ returnage; } publicAdressegetAdresse(){ returnadr; } publicdoublegetSalaire(){ returnsalaire; } publicvoidsetAdresse(Adresseadr){ this.adr=adr; } publicvoidafficherDetail(){ System.out.println("Matricule:"+getMat()); System.out.println("Nom:"+getNom()); System.out.println("Prnom:"+getPrn()); System.out.println("Adresse:"+adr.num_rue+""+adr.nom_rue+""+adr.cp+ ""+adr.ville); System.out.println("Fonction:"+getFonct()); System.out.println("Salaire:"+getSalaire()); } }//FindelaclasseEnseignant Lesmthodesdontlesnomsseprsententsouslaforme:getNomMthode(),sontappelesdesaccesseurs. Leur principal rle est de permettre d'une part l'accs aux attributs privs d'une classe et d'autre part de contrlerl'accscesattributs. Les mthodes dont les noms se prsentent sous la forme : setNomMthode(), sont appeles des modificateurs.Leurrleestlamodificationdescontenusdesattributsprivsd'uneclasse. 2 Crerlaclasse"Groupe"quireprsenteraunecollectiondelaclasse"Enseignant" Pourlescollections,onutiliseral'uneclassessuivantes: VectorouArrayListdupackagedel'APIJava:java.util.* importjava.util.*; classGroupe{ privateArrayList<Enseignant>membres; publicGroupe(){ membres=newArrayList<Enseignant>(); } publicvoidajouter(Enseignantp){ membres.add(p); } publicvoidenlever(Enseignantp){ membres.remove(p); } publicvoidafficher(){ for(Enseignantp:membres){ p.afficherDetail();
20102011FEDUCASARueduRhne1161204Genve

29

} } } 3 Effectuerlessimulationsettestssurlaclasse"Enseignant"partirdelaclasse"Groupe" classTestEnseignant{ publicstaticvoidmain(String[]argv) { Groupeg1=newGroupe(); Adresseadr=newAdresse(18,"BdVoltaire",75011,"Paris"); Enseignante1=newEnseignant(55,"DUPOND","Alain",adr,35,2500); g1.ajouter(e1); g1.afficher(); g1.enlever(e1); g1.afficher(); } } PartieII 1 L'accs et la recherche dans la table CANDIDAT s'effectuent le plus souvent par le biais du nom du candidat. Donner une solution pour acclrer la recherche cette table. Prciser la requte correspondante. Lasolutionpourremdiercettesituationestd'utiliserlesacclrateurs,danscecas,onopterapourlesINDEX. Requte CREATEINDEXIDX_Candidat ONCandidat(Nom); 2 Donner la requte SQL qui permet d'insrer la colonne sexe dans la table CANDIDAT. Cette colonne ne peutprendreque2valeurspossibles'F'ou'M'. ALTERTABLECandidat ADDSexeVARCHAR2(1); ALTERTABLECandidatADDCONSTRAINTchk1CHECK(sexein('M','F')); 3 Rdigerlesrequtessuivantes: a. Affichage de la liste des candidats ayant particip la formation 'LINUX', organise entre le '21/04/09'etle'21/11/2009'.

20102011FEDUCASARueduRhne1161204Genve

30

SELECTnom,prenoms,statut FROMCandidatc,Sessions,Formationf,Participerp WHERE c.cand_id=p.cand_id ANDs.sess_id=p.sess_id ANDf.for_id=s.for_id ANDdsignation='LINUX' ANDdate_deb>=TO_DATE('21/11/2009') GROUPBYstatut b. Affichage de la liste des notes par candidat de statut "matrise" dans la formation 'BASEDEDONNEES'pourlasessionnumro'225BDD'du19/06/2010. SELECTnom,prenoms,decode(note,'***',0,note) FROMCandidatc,Sessions,Participerp WHERE c.cand_id=p.cand_id ANDs.sess_id=p.sess_id ANDs.sess='225BDD' ANDDate_Deb=TO_DATE('19/06/2010'); c. Affichageducandidatainsiquesonstatutayantbnficiduplusgrandnombredeformations. SELECTNom,Prenoms,Statut FROMCandidat GROUPBYNom,Prenoms,Statut HAVINGMAX(COUNT(*))= (SELECTCOUNT(*)FROMCandidatGROUPBYstatus);

20102011FEDUCASARueduRhne1161204Genve

31

Outilsetcomptencesutiliss:

Comptencesetoutilsabords
DveloppementlangageJava/C++ Structuregnraled'unprogramme Typesd'instructions IntroductionaulangageUML Lesbasesdedonnesrelationnelles Algbrerelationnelle LDD,LMD,LID,LCD

20102011FEDUCASARueduRhne1161204Genve

32

CASN4:INSASECURITEINFORMATIQUE Prsentationgnraleduthme: La filiale InSA du groupe X. SA, spcialise en tlcommunications et mdias, soucieuse damliorer sa notorit, dcide de mettre en ligne un serveur HTTP et FTP accessible au public. Ce serveur, install dans ses locaux, sera placdansunezonedmilitarise(DMZ)commeprsentauniveaudel'annexe1. Lquipementparefeu(firewall)contrlelesaccsquiarriventsursesdiffrentesinterfaces.Ilestprogrammde telle faon que seul le trafic rseau respectant les rgles indiques dans lannexe 2 est accept. Ces rgles peuventfairerfrencedesadressesIPdordinateurs,desadressesderseauetdesprotocolesrseau. Unserveurmandataire(proxy)estgalementinstallentrelerouteurR1etleparefeu:ilestlepointdepassage obligatoiredetouslesaccsdurseaulocalverslinternet.

PartieI
Missions: 1 Expliquer en quoi la mise en uvre dune zone dmilitarise permet damliorer la scurit du rseau local. 2 UnantivirusarvllaprsencedunprogrammechevaldeTroiesurleserveursitudanslaDMZ. L'tudervlequele"troyen"n'apastplacparlesprotocolesHTTPouFTP. a. En analysant les rgles de lannexe 1, indiquer quelle rgle a pu permettre l'installation de ce programme. b. Proposer, pour rduire les risques lis ce type de problme, une ou plusieurs rgles en remplacementdelargleconcerne. Ce cheval de Troie est destin perturber le fonctionnement du rseau local, en sexcutant automatiquementpriodiquement. 3 En analysant les rgles de lannexe 1, indiquez si les postes du rseau local sont susceptibles dtre atteintsparle"chevaldeTroie". Ladministrateur rseau du service Multimdia prend en charge ladministration du serveur HTTP et FTP (192.168.10.10). Il doit donc avoir la possibilit de lancer une commande TELNET vers ce serveur, depuis sa machinedontladresseIPest192.168.1.75. LeserveurPROXYatparamtrafindepouvoirtraiterleprotocoleTELNET. 4 a. CiterlesinterfacesduparefeuconcernesparunecommandeTELNET. b. Pour chacune de ces interfaces, rdiger les rgles ncessaires pour permettre lemploi de cette commande,endonnantleurnumrodordre.

20102011FEDUCASARueduRhne1161204Genve

33

PartieII Un site ecommerce a t mis place pour raliser la vente de certains produits en ligne. Le chiffre daffaires prvisionneldusitepourlapremireanneestde1000000.LesclientseffectuantleurcommandeparInternet rglerontenligneparcartebancaire. Ilexisteplusieurssolutionspourprendreenchargelepaiementenlignesurunsitemarchand. Solution1:EffectuerunetransactionSSLsansintermdiaire Le client saisit son numro de carte bancaire sur un formulaire du site du vendeur. Les informations sont transmises sous forme crypte au serveur via le protocole SSL (Secure Socket Layer). Lapplication du vendeur effectue automatiquement la transaction avec le TPE (terminal de paiement lectronique) utilis pour le paiementclassiqueparcartebancaire. Installationdespagescryptes 50 AchatduncertificatSSLchezCERTPLUS 350pourunan Renouvellementducertificat 300paran Locationetmaintenancedelapplication 8000 Solution2:UtiliserunTPEvirtuellou Cette location, qui reprsente 15 par mois, est propose par un prestataire de paiement lectronique qui gre la transaction et assure aux deux parties le bon droulement du paiement. Au moment du paiement, le client bascule sur la page de paiement hberge sur le serveur du prestataire gestionnaire des transactions. Le prestataire de paiement lectronique vrifie en ligne l'autorisation de la transaction, dont le montant est directement vir sur le compte bancaire du vendeur, aprs validation. Les transmissions de donnes s'effectuent sur le rseau bancaire de faon scurise : protocole SSL ou SET (Secure Electronic Transaction). Le prestataire de paiement lectronique prlve une commission de 1 % sur chaque transaction. Les frais dinstallation fixes sont de400. Solution3:Proposerlepaiementparcarteprpaye Le client achte une carte de paiement qui contient un code confidentiel dcouvrir aprs grattage. Il lui suffit alors de saisir le code secret pour rgler les services payants qui l'intressent sur un site donn. Le code de la cartepermetdevaliderlatransactionetdedbiterlemontantcorrespondant.Unefoislecrditpuis(15,30ou 50 ), la carte peut tre jete. L'installation de cette solution ncessite la location d'un logiciel d'interface (300 par an). Celuici permet la saisie du code 12 chiffres, la scurisation de la transaction et le suivi de la consommation pour chaque site partenaire et chaque carte. Lentreprise peroit environ 66 % sur chaque transaction,lesoldecorrespondantlacommissiondelorganismegrantleprpaiement. Missions:

1 Identifier les risques que reprsente le paiement en ligne par carte bancaire, dune part pour le client, dautrepartpourlafiliale. 2 ExpliquerenquoilecertificatSSLestutilelorsdupaiementlectroniquesurunsitemarchand. 3 Choisir pour la filiale InSA une des trois solutions de paiement en ligne proposes cidessus. Argumentercechoixentermesdadquationauxbesoinsdelentreprise,decotetdescurit.

20102011FEDUCASARueduRhne1161204Genve

34

ANNEXE1 REGLESDACCESPROGRAMMEESSURLEPAREFEU

Interface192.168.3.254 Ordre Source


1 2 3 4 5 6 7 Any Any Any Any Any Any Any

DestinationService
192.168.2.10 192.168.2.10 192.168.2.10 192.168.2.10 192.168.2.10 192.168.10.10 Any HTTP FTP DNS SMTP POP3 Any Any

Accs
Accept Accept Accept Accept Accept Accept Refus

Interface192.168.2.254 Ordre Source


1 2 192.168.2.10 Any

DestinationServiceAccs
Any Any Any Any Accept Refus

Interface192.168.10.254 Ordre Source 1 192.168.10.10 2 192.168.10.10 3 Any 4 Any 5 Any

Destination Any Any 192.168.1.128 192.168.1.64 Any

Service Accs HTTP Accept FTP Accept Any Refus Any Refus Any Refus

Remarques: Any:quellequesoitlavaleur. Unergletraduitundroitouunrefusdaccs;lesrglessontvaluesdanslordre. Siuneactionestapplique,onnepassepaslarglesuivante. Parexemple,largle1delinterface192.168.10.254indiquequetoutpaquetentrantsurcetteinterface, provenantde192.168.10.10,destinnimportequellemachinedurseauetencapsulantunerequtedu protocoleHTTP,seraaccept.

20102011FEDUCASARueduRhne1161204Genve

35

ANNEXE2 ARCHITECTUREAVECPAREFEU(FIREWALL)ETSERVEURMANDATAIRE(PROXY)

RouteurADSL 192.168.3.1
ZoneDMZ

Interface 192.168.10.254

Interface 192.168.3.254

Serveur Web 192.168.10.10

Interface 192.168.2.254

192.168.2.10
Serveurmandataire (proxy)

192.168.4.1 RouteurR1

Rseaulocal InSA

20102011FEDUCASARueduRhne1161204Genve

36

CASN4:INSASECURITEINFORMATIQUE CORRIGE

PartieI
1 Expliquer en quoi la mise en uvre dune zone dmilitarise permet damliorer la scurit du rseau local. Lorsquune entreprise dsire rendre lun de ses serveurs accessible depuis Internet, le risque est grand douvrir unebrchedescuritverslensembledurseaulocal. Une zone dmilitarise permet de ne rendre accessible de lextrieur quune partie des serveurs en isolant totalement le reste du rseau. Gnralement, on trouve sur les DMZ les serveurs Web, voire les serveurs de messagerieetlesserveursDNSouvoiremmeunserveurFTP. 2 UnantivirusarvllaprsencedunprogrammechevaldeTroiesurleserveursitudanslaDMZ. L'tudervlequele"troyen"n'apastplacparlesprotocolesHTTPouFTP. a. En analysant les rgles de lannexe 1, indiquer quelle rgle a pu permettre l'installation de ce programme. Il sagit de la rgle 6 de linterface 192.168.3.254. Elle permet depuis Internet darriver sur le serveur Web en utilisantdesservicesquelconques(Telnet). b. Proposer, pour rduire les risques lis ce type de problme, une ou plusieurs rgles en remplacementdelargleconcerne. Il faut limiter aux seuls protocoles web (HTTP et FTP) laccs au serveur 192.168.10.10, en rajoutant deux rgles aprsavoirsupprimlargle6. CependantlaccsFTPneprservepasdelinstallationdunprogrammeetdesonactivationsileserveurwebnest pascorrectementconfigur. 3 En analysant les rgles de lannexe 1, indiquez si les postes du rseau local sont susceptibles dtre atteintsparle"chevaldeTroie". Lesrgles3et4surlinterface192.168.10.254empchentlaccsaurseaulocal,saufsilechevaldeTroieutilise desservicesbasssurHTTPouFTP. 4 a. CiterlesinterfacesduparefeuconcernesparunecommandeTELNET. Lesinterfacesconcernessont192.168.2.254et192.168.10.254 b. Pour chacune de ces interfaces, rdiger les rgles ncessaires pour permettre lemploi de cette commande,endonnantleurnumrodordre. La ligne numro 1 de linterface 192.168.2.254 autorise le passage vers le serveur internet. Il faut autoriser le retoursurlinterface192.168.10.254aveclarglesuivante: Source192.168.10.10Destination:192.168.2.10Service:TelnetAccs:Accept quidoittreintercaleavantlaligne3.
20102011FEDUCASARueduRhne1161204Genve

37

Remarque: On pourrait galement trouver, dans les rgles de linterface 192.168.2.254, des propositions autorisantexplicitementlepassagedesrequtesTELNETdurseaumultimdiaauserveurinternet.

PartieII
1 Identifier les risques que reprsente le paiement en ligne par carte bancaire, dune part pour le client, dautrepartpourlaFiliale. Risquespourleclient,lisaudtournementdunumrodecartebancaire: Interceptiondunumrodecartebancaireparunetiercepersonnelorsdelatransmissiondedonnesversle sitemarchand VoldunumrodecartebancairestocksurleserveurdelaFilialeInSA,soitparunemploymalintentionn, soitparpiratageduserveur Piratage du site web, par un tiers qui se fait passer pour la Filiale InSA et donc reoit les informations confidentielles RisquespourlaFilialeInSAdenepastrergl Contestationdupaiementparleclient(utilisationfrauduleusedunumrodecarteparuntiers) Paiementavecunfauxnumrodecartebancaireouavecunnumrodecartebancairedtourn 2 ExpliquerenquoilecertificatSSLestutilelorsdupaiementlectroniquesurunsitemarchand. Un certificat SSL permet dauthentifier le site marchand lors de la transaction. Le tiers de confiance qui a dlivr lecertificatestgarantdelidentitdusiteduvendeur. Complment non exig et ne rpondant pas la question. Le protocole SSL repose sur un cryptage cl publique /clprive.Lenavigateurclientcryptelesdonnesaveclaclpubliqueduserveurquilatlcharge.Leserveur dcrypteles donnesreuesavecsaclprive.Le certificatSSL,obtenuauprsduntierscertificateuroutiersde confiance,permetdegarantirlauthenticitdelaclpubliqueduserveur. 3 Choisir pour la Filiale InSA une des trois solutions de paiement en ligne proposes cidessus. Argumentercechoixentermesdadquationauxbesoinsdelentreprise,decotetdescurit. Argumentation Solution1 Cot1anne: Cotannuelannessuivantes:

8000+50+350=8400 8000+300=8300

Solution2 Cotinitial:400 Cotannuel: 1%duCAralissoitpourlapremireanne:1000000*0.01=10000 locationduterminal:15x12=180 Soituncotannuelde10180

Solution3

Lecotestprohibitif:44300

PourunChiffred'affaires(CA)de1000000lasolution1est,entermedecot,laplusintressante.
20102011FEDUCASARueduRhne1161204Genve

38

Choix Lessolutions1et2sontcohrentesetadapteslasituationdelentreprise;lasolution3estapriorirserve lachatdecontenussurunsitewebpourunfaiblemontant. Toute solution argumente et valable arithmtiquement est acceptable (ambigut possible sur la priodicit des 8000). La solution 1 exige pour la filiale InSA, lacquisition et linstallation dun certificat SSL; ceci tant fait les solutions 1 et 2 deviennent comparables en termes de scurit indpendamment des risques inhrents louverture sur lextrieurdetoutsystmedinformation. La solution 3 ne pose pas intrinsquement de problme de scurit, mais on a vu quelle est inadapte au contexte.

20102011FEDUCASARueduRhne1161204Genve

39

Outilsetcomptencesutiliss:

Comptencesetoutilsabords
Scuritinformatique Typesdemenaces Scuritdesrseaux

20102011FEDUCASARueduRhne1161204Genve

40

CASN5:ADMINISTRATIONSYSTEMESRESEAUXSOUSLINUX Prsentationgnraleduthme: Afindefaciliterl'attributiondesadressesIP(InternetProtocol)auxdiffrentspostesetimprimantespartagesdu rseau local (LAN) du sige de l'entreprise X. SA, l'administrateur rseau a mis en place un serveur Linux afin de configurerunserveurDHCP.

Missions:

1 Expliquer qu'estce qu'un serveur DHCP, en donnant la signification de chacune des lettres de l'acronymeetenexplicitantlerleded'untelserveur. 2 UnextraitdufichierdeconfigurationdesinterfacesrseausurunemachineLinuxadonnlesrsultats suivants: DEVICE=eth0 BOOTPROTO=static IPADDR=192.168.3.15 NETMASK=255.255.255.0 ONBOOT=yes Interprterchacunedeslignesprcdentes. 3 Donner les tapes de configuration d'un serveur DHCP sous Linux. Pour chacune des tapes, indiquer lescommandeslanceretlesfichiersdeconfigurationconcerns. 4 Expliquerlerleetdonnerlasyntaxedesfichiers/etc/resolv.conf&named.conf. 5 Afficher la table de routage d'un nud du rseau sans passer la commande route. Fournir des statistiquessurlesinterfacesrseauxd'unemachineA. 6 Vrifier le lancement du processus xinetd. Indiquer le rle de ce processus. Quelle est la diffrence entreinetdetxinetd. 7 Dans le rseau prsent dans l'annexe 1, l'objectif est de faire communiquer les sous rseaux LAN3, LAN4etLAN5. Sachant que R, S et T sont des routeurs et A, B, C, D et F sont des machines, proposer un masque de sousrseauuniquepourcetteinfrastructure.Argumentervotrerponse. En vous basant sur le masque choisi, on vous demande de donner les commandes ncessaires pour ralisertouteslesoprationssuivantes: AttribuerdesadressesIPauxinterfacesS(eth1,eth2)etT(eth0,eth1). Insertion des entres ncessaires dans les tables de routage de S et de T pour faire communiquer LAN3,LAN4etLAN5. ChangerlenomdelamachineFenflan5. TesterlaconnectivitentrelerouteurSetleposteF. DfinirunepasserellepardfautpourlerouteurS. Vrifierl'accsInternetpartirduposteC.
20102011FEDUCASARueduRhne1161204Genve

41

AN NNEXE1

20102011FEDUCASARue eduRhne116120 04Genve

42

CASN5 5:ADMINISTRA ATIONSYSTEM MESRESEAUXSO OUSLINUX CORRIGE

indefaciliterl'attributiondesadress sesIP(Intern netProtocol) )auxdiffren ntsposteset timprimante espartages sdu Afi rs seau local (L LAN) du sige e de l'entrep prise X. SA, l'administrateur rseau a mis en place un serveu ur Linux afin de configurerunserveur s DHCP.

1 Expliqu uer qu'estce c qu'un se erveur DHCP, en donn nant la sign nification de e chacune des d lettres de l'acron nymeetenexplicitant e le erleded'un ntelserveur r. HCP:DynamicHostControlProtocol DH Un n serveur DH HCP est une machine qui installe, configure et administre le protocole D DHCP, dont le principal rle r est t d'attribuer r automatiquement une e configuration rseau des statio ons ou serv veurs sur un n rseau. Ce ette att tributionestsoumiseun u dlai,appe elbail,qualifiegalem mentdedur edevalidit delaconfig guration. Co ommelebailaunedure elimitedansletemps,l'issuedeso onexpiration n,unersilia ationducont tratalieuen ntre leserveur s etle eclient. Pourquelesclientspuissentcommuniqueravecun nserveurDH HCP,unecon nfigurationm minimalesera aimposeces derniers.

2 Unext traitdufichierdeconfig gurationdesinterfacesrseausurun nemachine Linuxadonnlesrsult tats suivants: DEVICE E=eth0 BOOTP PROTO=stati ic IPADDR=192.168.3 3.15 NETMA ASK=255.255 5.255.0 ONBOO OT=yes Interpr rterchacun nedeslignes sprcdente es. Da anscettecon nfiguration,on o recensele esinformatio onssuivantes s: DE EVICE=eth0 Lenomdel'int terfacersea auquiatactive. a BO OOTPROTO=s static Pr ciseleproto ocoleutilis serpourlar cuprationdelaconfigu urationrsea auduposte (Ad dresseIP,Ma asquedeSR, ,Passerelle,).

20102011FED DUCASARueduRhne1161204Genve e

43

OOTPROTO=<protocole> < ,<protocole> >correspond dantl'unedes d valeurssuivantes s : BO noneAucun A protoc colededma arrageutilis ser. bootpLe L protocoleBOOTPdoit ttreutilis. dhcpLe eprotocoleDHCP D doitt treutilis. IPA ADDR=192.168.3.15 Ad dresseIPduposte p (Adres ssedeclasseC) NE ETMASK=255 5.255.255.0 Ma asquedesou usrseau(M Masquedecla asseC) ON NBOOT=yes yes:Cepriphriquedoitt treactivaudmarrage. no:Cepriphriquenedoit tpastreac ctivaudmarrage.

3 Donne er les tapes s de configuration d'un serveur DHC CP sous Linu ux. Pour cha acune des t tapes, indiquer lescom mmandeslancer l etlesfichiersdeconfiguratio c nconcerns s. Lestapesde d configurationd'unserveurDHCP: a. Installation nduserveur rDHCP V rifiersileserveurestins stallounon n: #dkpgl|grepdhcp(debian) ( #urpmiidhcp(mandriva) Pourinstallerle epaquetage edhcp: #aptgetse erverdhcp3.0 #urpmidhcpserver3.01rc12.2md dk.i586.rpm tiondufichie erdhcpd.con nf b. Configurat Pourlefonctio onnementdu userveurdhc cp,lefichier/etc/dhcpd. .confestmodifier. m Un nextraitdece c fichierdufichier f optiondomain nname"exam mple.com"; optiondomain nnameserve ers192.168.4 4.100; optionsubnetmask255.25 55.255.0; defaultleasetime t 3600; ma axleasetime e86400; ddnsupdatest tylenone; sub bnet192.168 8.4.0netmas sk255.255.2 255.0{ ra ange192.168 8.4.129192.168.4.254; optionrouter rs192.168.4.1; } hostmailhost{ hardwareethernet02:03: :04:05:06:07 7; fix xedaddressmailhost.ex xample.com; } Cetteoptio onspcifieledomainequ uiseradonn auxclientscommedom mainepard faut.
20102011FED DUCASARueduRhne1161204Genve e

44

ondonneune eliste,spar repardesvirgules, v deserveursDNS Squeleclientdevraitutil liser. Cetteoptio Lemasquedesousrse eauquiserafourniauxclients. Unclientpe eutdemande erunbaild'u unedurebi ienprcise.Sinon S pard fautleserve euralloueun nbailavecce ette dureavantex xpiration(ensecondes). C'est la dure maximale d'allocatio on autorise e par le serveur. Si un client demand de un bail plus long, le bail b ser raaccordmais m ilnesera avalidequedurantmaxleasetimesecondes. s Cette optio on indique si le serveur DHCP doit tenter t de mettre m jour r le DNS qua and un bail est accept ou rv voqu.Dansl'implment tationISC,ce etteoptionest e obligatoir re. Ceciindique equellesadr ressesIPdev vraienttreutilises u dansl'ensemble edesadresse esrservesauxclients.Les adressescomp prisesdansl'i intervallespcifiesontallouesaux xclients. Dfinitlapa asserellepardfautfourn nieauxclients. L'adresse matrielle m MAC M d'une machine m (de e manire ce que le serveur DHC CP puisse re econnatre une u ma achinequand delleenvoie eunerequte). Indique que e la machine devrait se voir v attribuer r toujours la mme adre esse IP. Notez que l'utilisation d'un nom de machine ici est valable, , puisque le serveur DHC CP effectuera a une rsolu ution de nom m sur le nom m de la mach hine ava antderenvo oyerl'informationsurlebail. b

c. Crationd'unfichierd'inscription d /var/lib/dhc cp/dhcpd.lea ases Ce fichier doit tre cr, sil s nest pas dj cr, sans s quoi le serveur DHC CP ne pourra pas dmarrer. Il suffit t de cr er un fichie er vide (Les dernires ve ersions le cr re dans le rpertoire /var/lib/dhcp/dhcpd.leases. Pour cela c tap per la comm mande echo > /var/lib/dhcp/dhcpd.leases Le fichier est cr . Voici ce q que l'on peu ut avoir dedans aprsl'inscriptionduprem mierclient. le ease192.168 8.10.50{ starts22010/02/1515:25:25; ends22010/02/30 017:25:25; tstp22010/04/25 2 17:25:25; binding gstatefree; hardwa areethernet t00:he:85:e7 7:b5:63; uid"\0 001\001\003 3U\351Xf"; } On n distingue les informati ions suivantes: Dbut du d bail, Fin du d bail, adre esse MAC du client, le nom d'hte du clie ent.Attentio oncenomes stdiffrentdu d nomNETB BIOSutilissurlesrseau uxMicrosoft t. d. Redmarra ageduservice marrer. Leserveurestconfigur,ilfautl'arrteretleredm ArrtduserviceDHCP P : /et tc/rc.d/init.d d/dhcpdstop p. Dmarrag geduserviceDHCP : /et tc/rc.d/init.d d/dhcpdstart.

20102011FED DUCASARueduRhne1161204Genve e

45

e. Installerleclientdhcp Pourleclientlesrpminstallersont; #urpmidhcpcommon3.01rc12.2mdk.i586.rpm #urpmidhcpclient3.01rc9.2mdk.i586.rpm

4 Expliquerlerleetdonnerlasyntaxedesfichiers/etc/resolv.conf&named.conf. Fichier/etc/resolv.conf Le fichier /etc/resolv.conf est un fichier de configuration DNS (Domain Name Server) qui contient les adresses IP etlesnomsDNSdevosserveursdersolutiondenoms. Il permet galement, dindiquer le ou les domaines de recherche et les diffrents serveurs DNS utiliser pour cetterecherche. Lasyntaxedecefichierestlasuivante: nameserver 192.168.0.1 nameserver 212.27.53.252 nameserver 212.27.52.252 search mon-domaine.local Fichiernamed.conf Cefichier,dontlasyntaxeesttrsimportante,permettraverslesdiffrentessectionsqu'ilintgrede: DclarerlesdiffrenteszonesDNS(matre,dynamique,inverse) Dfinirlesoptionsglobalesdeconfigurationpourlerpertoirenamedoulestypesderequteutiliser DclarationdesACL(AccessControlList) # Zone matre zone "example.net" { type master; file "master/example.net"; }; # Zone dynamique key "exampleorgkey" { algorithm hmac-md5; secret "sf87HJqjkqh8ac87a02lla=="; }; zone "example.org" { type master; allow-update { key "exampleorgkey"; }; file "dynamic/example.org"; }; acl acl1 { 10.0.2.0/24; 192.168.0.0/24; }; # Exemple de zones esclaves directes et inverses zone "example.com" {
20102011FEDUCASARueduRhne1161204Genve

46

type slave; file "slave/example.com"; masters { 192.168.1.1; }; }; zone "1.168.192.in-addr.arpa" { type slave; file "slave/1.168.192.in-addr.arpa"; masters { 192.168.1.1; }; };

5 Afficher la table de routage d'un nud du rseau sans passer la commande route. Fournir des statistiquessurtouteslesinterfacesrseauxd'unemachineA. Pour afficher ce type d'informations, il y a lieu de passer par une commande trs riche en options et qui permet entreautresdefournirdesstatistiquessurlesinterfacesetl'affichagedelatablederoutage.

$ netstat rn
Destination -------------------192.168.5.125 224.0.0.0 default 127.0.0.1 Gateway Flags Ref Use -------------------- ----- ----- -----192.168.5.10 U 1 5879 198.168.5.10 U 1 0 192.168.5.10 UG 1 91908 127.0.0.1 UH 1 811302 Interface --------eth0 eth0 lo0

$ netstat i
Iface MTU Met RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg eth0 1500 0 14195822 3 0 0 15771054 0 0 0 BMNRU lo 16436 0 115 0 0 0 115 0 0 0 LRU

Danscettetable,ondistingueunelistedestatistiquessurlestransmissionseffectuessurlesinterfaceseth0etl0: Iface :Interface MTU :MTU(MaximumTransferUnit),taillemaximaled'unetrame. Met :Nombredesauts RXOK :Nombredepaquetsreusavecsuccs RX_ERR :Nombredepaquetsreusavecerreur RX_DRP :Nombredepaquetseffacsenrception(Dropped) RX_OVR :Nombredepaquetsobsoltesenrception(Overrun) TXOK :Nombredepaquetstransmisavecsuccs TX_ERR :Nombredepaquetstransmisavecerreur TX_DRP :Nombredepaquetseffacsentransmission(Dropped) TX_OVR :Nombredepaquetsobsoltesentransmission(Overrun) Flg :Flagdfinipourl'interfaceparlacommandeifconfig.

20102011FEDUCASARueduRhne1161204Genve

47

6 Vrifier le lancement du processus xinetd. Indiquer le rle de ce processus. Quelle est la diffrence entreinetdetxinetd. xinetdestundaemonquiestchargdedmarrerlesprogrammesfournissantdesservicesrseaux. Ainsi, Au lieu de dmarrer ces services en question lors de l'initialisation du systme, et de les laisser inactifs jusqu' ce qu'il y ait une demande de connexion, on ne dmarre que xinetd et celui ci coute sur tous les ports ncessaires aux services lists dans ses fichiers de configuration. Lorsqu'une requte arrive, xinetd dmarre le service correspondant. cause de la faon dont il fonctionne, xinetd (comme inetd) est aussi appel le super serveur.

7 Dans le rseau prsent dans l'annexe 1 de ce document, l'objectif est de faire communiquer les sous rseauxLAN3,LAN4etLAN5. Sachant que R, S et T sont des routeurs et A, B, C, D et F sont des machines, proposer un masque de sousrseauuniquepourcetteinfrastructure.Argumentervotrerponse. Pour pouvoir proposer un masque de sousrseau unique cette infrastructure, il y a lieu de tenir compte des lmentssuivants: - LesmachinesA,B,D,E,Fdoiventsetrouversurdessousrseauxdiffrents - Laclassed'adressesutilisedanscerseauestlaclasseB:164.15.X.X/16 - Pourpouvoircrerdessousrseaux,ondoitutiliserletroisimeoctet Enconvertissantlesdiffrentesadressesconcernesenbinaire,onobtientlesrsultatssuivants: MachineA:164.15.10100010.3 MachineB:164.15.01111011.9 MachineD:164.15.10000010.6 MachineE:164.15.01100000.32 MachineF:164.15.01110011.18 Pourquecesmachinessoientsurdessousrseauxdiffrents,lemasqueoptimumutilisersera:

255.255.11111000.0
Donc:255.255.248.0

En vous basant sur le masque choisi, on vous demande de donner les commandes ncessaires pour raliser touteslesoprationssuivantes: Donner les commandes Linux permettant d'attribuer des adresses IP aux interfaces S(eth1,eth2) et T(eth0,eth1). Pour attribuer des adresses IP aux interfaces en question, on lancera en mode "superuser" les commandes suivantes: -

# ifconfig eth1 164.15.130.7 netmask 255.255.248.0 broadcast 164.15.135.255 up # ifconfig eth2 164.15.96.33 netmask 255.255.248.0 broadcast 164.15.103.255 up # ifconfig eth0 164.15.115.19 netmask 255.255.248.0 broadcast 164.15.119.255 up # ifconfig eth1 164.15.96.34 netmask 255.255.248.0 broadcast 164.15.103.255 up

(S) (S) (T) (T)

20102011FEDUCASARueduRhne1161204Genve

48

Insertion des entres ncessaires dans les tables de routage de S et de T pour faire communiquer LAN3, LAN4etLAN5.

Ajoutdesroutesncessairesdanslestablesderoutage: MachineS #routeaddnet164.15.115.0/21gw164.15.115.19 Machine T # route add net 164.15.130.0/21 gw 164.15.96.33 TesterlaconnectivitentrelerouteurSetleposteF. ApartirduposteF,onexcuteun"ping"surl'interfaceeth2durouteurS: $ping164.15.96.34 Lersultataffichdoittredugenre: 64 bytes from 164.15.115.18 : icmp_seq=0 ttl=53 time=51.9 ms 64 bytes from 164.15.115.18 : icmp_seq=0 ttl=53 time=51.9 ms 64 bytes from 164.15.115.18 : icmp_seq=0 ttl=53 time=51.9 ms

Sinonlaconnectivitn'estpasassureentreleposteFetlerouteurS. - DfinirunepasserellepardfautpourlerouteurS. (S) # route add default gw 164.15. 115.19/21

20102011FEDUCASARueduRhne1161204Genve

49

Outilsetcomptencesutiliss:

Comptencesetoutilsabords
Coucheshautes TCP,UDP,LAN AdministrationsystmeLinux AdministrationrseausousLinux

20102011FEDUCASARueduRhne1161204Genve

50

CASN6:DEVELOPPEMENTDESAPPLICATIONSINFORMATIQUES(POO) PrsentationgnraledelentrepriseAZURIASS.A: Parmi les activits de la filiale CaSA Maroc,X. SA, le ple informatique et rseau qui assure galement la maintenancedesquipementsinformatiques,adciddemettreenplaceunoutillogicielafindegrerlesdlais etcotsderparationdesmatrielsinformatiques. Pour cela, la socit veut comparer les dlais et cots prvisionnels des pannes de matriel avec les dlais et cotsrels.Deplus,lasocitdsiredterminerlemontanttotaldescotsdespannesdechaquematriel. Pour la ralisation de cet outil, le choix a port sur un langage de programmation objet, afin d'assurer un maximumdecompatibilitaveclesapplicationsdjexistantes. Aprsunephasedeconceptualisation,uninventairedesprincipalesclassesadonnlieucequisuit: ClassePriode{UnobjetdelaclassePriodecorrespondunintervallebornpardeuxdates} priv dateDbut:date dateFin:date public Procdureinit(entreuneDateDbut,uneDateFin:date) {Permetdinitialiserunobjetdelaclasse.Lesdeuxparamtressontenentre.} FonctionnbJours():entier {Renvoielcart,enjours,entredateDbutetdateFin.} {Cettemthodenestpascrire.} FonctionestIncluse(entreuneDate:date):boolen {RetournevraisiuneDateestcomprisedanslapriode,fauxsinon.} Finclasse Exempledappeldelamthodeinit: unePriode:Priode unePriode.init(10102003,23102003) ClasseTypeMatriel Priv libellType:chanedecaractres tarifJour:rel {Le tarif de rparation dune panne est calcul en fonction dun tarifjournalierdebasedpendantdutypedematrielconcern} Public FonctiongetTarifJour():rel {RetourneladonnetarifJour.} Finclasse ClassePanne {Un matriel peut subir des pannes. Lorsquune panne survient, une priode dimmobilisation est prvue, mais souvent la priode dimmobilisation relle diffre de la priodeprvue.} priv libell:chanedecaractres priodePrvue:Priode priodeRelle:Priode
20102011FEDUCASARueduRhne1161204Genve

51

public Procdureinit(entreunLibell:chanedecaractres,unePriodePrvue:Priode) {Permet dinitialiser un objet, partir du libell de la panne et de la priode dimmobilisation prvue. Les deuxparamtressontenentre.} FonctiongetPriodePrvue():Priode {CettemthoderetourneladonnepriodePrvue.} Procdurecarts(sortieleNbJours:entier,leMontant:rel) {Cette mthode calcule lcart en jours entre les priodes prvue et relle et calcule le montant du manque gagner (voir remarques cidessous). Ces valeurs ne peuvent pas tre ngatives, les deux paramtressontensortie.}

Finclasse
Remarque: Une fois lintervention ralise, on dclenche lanalyse du cot rel de la panne, sachant quetout retard danslesprvisionsinduitunmanquegagnerde: 0eurosileretardnedpassepasunjour, 15eurosforfaitairessileretardsesituedanslatranchede24jours, 20eurossupplmentairesparjourdu5eau10ejour, 10eurossupplmentairesparjourpartirdu11ejour. Exemple Pourunretardde12jours,lemanquegagnerestde:15+(20x6)+(10x2)=155euros.Lecotrelseradonc obtenu en additionnant ce manque gagner au cot prvisionnel (nombre de jours prvus multipli par le tarif journalierdutypedematriel). Les dates prvisionnelles dimmobilisation sont indiques au moment de la dtection de la panne ; comme les dates prvisionnelles peuvent diffrer des dates relles, ces dernires sont enregistres aprs limmobilisation.

ClasseMatriel priv
public ProcdureajoutPanne(entreunePanne:Panne) {Permetdajouterunepanneautableaudepannes.} FonctioncumulPannes():rel {Cette mthode calcule le cot total des pannes du matriel: pour chaque panne, le manquegagnersajouteventuellementaucotprvisionneldelapanne} FonctionestDisponible(entreuneDate:date):boolen {Retourne vrai si la date passe en paramtre ne fait partie daucune priode dimmobilisationprvuepourlematriel} libell:chane leType:TypeMatriel lesPannes[1..MAX]:tableaudePanne nbPannes:entier {Nombrereldepannespourunmatriel}

Finclasse

20102011FEDUCASARueduRhne1161204Genve

52

Missions: 1 Raliserundiagrammedeclassescorrespondantcetteapplication. On devra prciser les attributs et les mthodes de chaque classe, ainsi que les multiplicits des associationsentrelesclasses. 2 Proposer un appel de la mthode init de la classe Panne dans le scnario suivant: la panne porte le libell "Blocage du compteur", la date prvue de dbut dimmobilisation est le "23042009", la date prvuedefindimmobilisationestle"15052009". 3 crirelesalgorithmesdesmthodessuivantes,enutilisantbonescientlesmthodesexistantes:

LaprocdurecartsdelaclassePanne. LaprocdureajoutPannedelaclasseMatriel. LafonctioncumulPannesdelaclasseMatriel. LafonctionestDisponibledelaclasseMatriel. 4 Pour certains types de matriels, comme les routeurs par exemple, on se doit se savoir si l'quipement est redondant ou non, la dure d'immobilisation autorise et le nombre de serveurs immobiliss causedel'arrtdecetquipement. Implmenteruneclassequirpondlepluspossiblecebesoin.

a. b. c. d.

20102011FEDUCASARueduRhne1161204Genve

53

CASN6:DEVELOPPEMENTDESAPPLICATIONSINFORMATIQUES(POO) CORRIGE 1 Raliserundiagrammedeclassescorrespondantcetteapplication. On devra prciser les attributs et les mthodes de chaque classe, ainsi que les multiplicits des associationsentrelesclasses. Lediagrammesuivantpermetderpondrel'ensembledesrglesdegestioninventories danslecadredecette application.
TypeMatriel - tarifJour : rel -libell : chane + getTarifJour() : rel 1 Priode -dateDbut : date -dateFin : date +nbJours() : entier +estIncluse(uneDate : date) : boolen prio dePrvue 1 1 p riode Relle

Matriel - libell : chane +ajoutPanne(unePanne : Panne) +cumulPanne() : rel +estDisponible(uneDate : date) : boolen subir Panne * -lib ell : chane +carts(leNbJours : entier, leMontant : rel) + getPriodePrvue() : Priode

Pourraliserlediagrammedeclassesprcdent,beaucoupd'outilssontdisponibles,aussibienparmileslogiciels OpenSourceoulesprogiciels. Onpeutciterparmilesplusutiliss:

Progiciels RationalRose. PowerAMC Logicielslibres StarUML ArgoUML Papyrus

20102011FEDUCASARueduRhne1161204Genve

54

2 Proposer un appel de la mthode init de la classe Panne dans le scnario suivant: la panne porte le libell "Blocage du compteur", la date prvue de dbut dimmobilisation est le "23042009", la date prvuedefindimmobilisationestle"15052009". laPriode:Priode laPriode.init(23042009,15052009) unePanne:Panne unePanne.init("Blocageducompteur",laPriode)


3 crirelesalgorithmesdesmthodessuivantes,enutilisantbonescientlesmthodesexistantes: a. LaprocdurecartsdelaclassePanne.


Procdurecarts(sortienbJours:entier,leMontant:rel){cesargumentssontensortie} Dbut nbJourspriodeRelle.nbJours()priodePrvue.nbJours() SinbJours<0 Alors nbJours0 FinSi {appeldunemthodedelaclassePriode} SelonlesJours <2:leMontant0{silnyapasderetard,lemontantest0aussi} <5:leMontant15 <11:leMontant15+(nbJours4)*20 Sinon:leMontant15+6*20+(nbJours10)*10 Finselon Fin


b. LaprocdureajoutPannedelaclasseMatriel.

ProcdureajoutPanne(entreunePanne:Panne) Dbut nbPannesnbPannes+1 lesPannes[nbPannes]unePanne Fin

20102011FEDUCASARueduRhne1161204Genve

55

c. LafonctioncumulPannesdelaclasseMatriel.


FonctioncumulPannes():rel Variables i,nbJoursPrvus,priode:entier total,tarifJour,cotPrvu,surCot:rel Dbut total0 tarifJourleType.getTarifJour(){appeldunemthodesurlinstanceencours} Pouride1nbPannes nbJoursPrvuslesPannes[i].getPriodePrvue().nbJours() cotPrvunbJoursPrvus*tarifJour {appeldelaprocdurecartsdelaclassePanne,pourvaloriserlesurCot} lesPannes[i].carts(priode,surCot) totaltotal+cotPrvu+surCot FinPour Retournertotal Fin


d. LafonctionestDisponibledelaclasseMatriel.


FonctionestDisponible(entreuneDate:date):boolen Variables i:entier disponible:boolen Dbut disponiblevrai i1 TantQue(i<=nbPannes)Etdisponible SilesPannes[i].getPriodePrvue().estIncluse(uneDate) Alors disponiblefaux Sinon ii+1 FinSi FinTantQue Retournerdisponible Fin

20102011FEDUCASARueduRhne1161204Genve

56

4 Pour certains types de matriels, comme les routeurs par exemple, on se doit se savoir si l'quipement est redondant ou non, la dure d'immobilisation autorise et le nombre de serveurs immobiliss causedel'arrtdecetquipement. Implmenteruneclassequirpondlepluspossiblecebesoin.

ClasseMatrielSpecifique:HritedeMatriel priv
ref_equip:entier dure_immo_max:rel nbr_srv_immo:entier

public FonctionestRedondant(entreref_equip:entier):boolen {Retournevraisilquipementestredondant}

Finclasse

20102011FEDUCASARueduRhne1161204Genve

57

Outilsetcomptencesutiliss:

Comptencesetoutilsabords
POO Classes,objetsetencapsulation Hritageetpolymorphisme IntroductionaulangageUML

20102011FEDUCASARueduRhne1161204Genve

58

CASN7:CONCEPTIONETMODELISATIONDESSI Prsentationgnraleduthme: L'inventairedesdiffrentesrglesdegestionassociescettebasededonnesonttrsumesdanscequisuit: Le matriel informatique gr par cette application appartient deux catgories diffrentes : Machine (Serveur, stations,)ouRseau(routeur,commutateur,pont,). Toutmatriel,quelqu'ensoitletype,possdeunnumrodesrie,unedsignation,unemarque,unmodle,une dated'acquisition,unserviceauquelestaffect. En rgle gnrale, les responsables informatiques du groupe X. SA font souvent appel une liste connue de fournisseurspourl'achatdesquipements(DELL,HP,CISCO,TOSHIBA,). Pour la catgorie Machine, d'autres informations seront enregistres, comme la taille mmoire, la frquence du processeur,latailledesdisques. PourcequiestdesquipementsdetypeRseau,ondoitconnatreenparticulierlenombredeportsetlerlede l'quipementdanslerseaux.Ilestgalementindispensabledesavoirdansqueltypederseauoprechacundes quipements(Ethernet,Toking,ATM,FrameRelay,). Un service ou un dpartement de groupe X. SA peut possder plusieurs matriels indpendamment de leur catgorie,ainsiqueleniveaud'administrationdel'quipement(switchadministrableounon). Encasdepanned'unmatriel,uneinterventionauralieuenfonctiondesdisponibilitsdestechniciens. Pourchaqueinterventionralise,l'administrateurduparcdoitconnatredansledtail,ladatedelapanneet celledel'intervention,letypedepanne,lacausedecelleci,ledlaiderparationetl'intervenant. Missions: 1 Elaborer un modle conceptuel des donnes (MCD), bas sur le formalisme entitassociation, en explicitantlespropritsdesdiffrentesentitsetrelationsdumodle. Pour les diffrents quipements de catgorie "Machine", le responsable du parc a besoin d'avoir une information prcise sur les systmes d'exploitation installs sur les serveurs ainsi que les applications partages qui s'y trouvent. Ce qui lui permettra de suivre les diffrentes mises jour logicielles effectues. 2 Effectuer les modifications ncessaires au modle labor en 1 afin de rpondre au nouveau besoin dcritcidessus. 3 Proposer un MLD (Modle Logique des Donnes) pour le MCD de la question 1. Utiliser pour cela le formalismerelationnel. Expliquer de faon prcise les rgles appliques lors du passage au MLD pour tous les liens de type hritage.

20102011FEDUCASARueduRhne1161204Genve

59

CASN7:CONCEPTIONETMODELISATIONDESSI CORRIGE 1 Elaborer un modle conceptuel des donnes (MCD), bas sur le formalisme entitassociation, en explicitantlespropritsdesdiffrentesentitsetrelationsdumodle.

20102011FEDUCASARueduRhne1161204Genve

60

2 Effectuer les modifications ncessaires au modle labor en 1 afin de rpondre au nouveau besoin dcritcidessus.

20102011FEDUCASARueduRhne1161204Genve

61

Danslecadredecetteapplication,ilyalieudenoterlesremarquesetsuggestionssuivantes: La ralisation de ces modles de donnes (MCD) devra se faire manuellement, sans l'utilisation d'outils spcifiquecommePowerAMC, Danscetteapplication,onnotel'utilisationdelanotiond'hritage: MachineetRseauxMatriel. ServeurMachine. Ce qui permettra des entits comme "Machine" et "Rseaux" de rcuprer toutes les proprits de l'entit "Matriel"(NumSer,Designation,marque,modle,Date_Acq). L'utilisationduconceptd'hritagedanscecontextepermetderegrouperunensembledepropritscommunes plusieurs entits dans une mme entitmre, ce qui liminera un grand nombre de redondances au sein du modledesdonnes. Donc, il est fortement recommand d'utiliser ce mcanisme d'hritage dans les modles sans modration, car : Plusd'hritageimpliquemoinsderedondances. 3 Proposer un MLD (Modle Logique des Donnes) pour le MCD de la question 1. Utiliser pour cela le formalismerelationnel. Expliquer de faon prcise les rgles appliques lors du passage au MLD pour tous les liens de type hritage. a. Lesdiffrentesrelations Matriel (NumSer int, Designation Varchar2(35), Marque Varchar2(25), Modele Varchar2(20), Date_Acq Date, codeFrs#int,CodeSer#int); Fournisseur(CodeFrsInt, RaisonSocialeVarchar2(55),AdresseVarchar2(110), TelVarchar2(15),FaxVarchar2(15), SiteWebVarchar2(45)); Service(CodeSerInt,DesignationVarchar2(35),effectifint); Machine(NumSer#int,Taille_Memint,Freq_procint,Taille_Disqueint); Rseau(NumSer#int,NbrPortint,RoleVarchar2(50),type#Varchar2(30)); Panne (DatePanne Date, Cause Varchar2(35), DateInt Date, DurInt int, Pbms varchar2(75), NumSer# int, Matricule#); Intervenant(Matriculeint,NomVarchar2(35),PrenomsVarchar2(45),FonctionVarchar2(35)); TypeReseau(typeVarchar2(15)); Remarques NumSer#danslesrelationsMachineetRseaufontrfrenceNumSerdanslarelationMatriel.Elles reprsententdesclstrangres(ForeignKey),maisellessontaummetempsdesclsprimairespourleurs tables(PrimaryKey).

20102011FEDUCASARueduRhne1161204Genve

62

Pourimplmenterl'hritagelorsdupassageaumodlerelationnel,lasolutionquiatchoisieaportsurla crationde3relations:UnerelationMreet2relationfille,aveccommelienlaclprimairedelarelation mre. b. MLDsousformedeschma

20102011FEDUCASARueduRhne1161204Genve

63

Outilsetcomptencesutiliss

Comptencesetoutilsabords
Niveauxd'abstraction,mthodedeconception Modlisationdesdonnes MCD,MRD

20102011FEDUCASARueduRhne1161204Genve

64

CASN8:RESEAUXETPROGRAMMATIONSHELL Prsentationgnraleduthme: Auniveau dusigedugroupeX.SA,Le responsableduservicesystmed'exploitationamisenplaceunesolution open source pour un partage des fichiers et d'imprimantes au niveau local. Pour cela, un serveur Linux (DistributionUBUNTU)atinstalletparamtr. Ainsi, et afin d'automatiser certaines des tches d'administration, l'administrateur systme a dcid de raliser certainsscriptsshellenbash.

PartieI
Les locaux de la filiale InSA en Inde comprennent deux btiments: les bureaux et lentrept. Ces deux btiments sont distants de 50 m et sont relis par un cble en fibre optique multimode. Le prcblage des bureaux est de typeUTPcatgorie5etceluidelentreptdetypeUTPcatgorie4. Le rseau est un rseau Ethernet mixte (10BaseT, 100BaseTX, 10BaseFL). Lensemble des matriels dinterconnexion (concentrateurs et commutateurs) est encastr dans une armoire de brassage situe dans un local technique o se trouvent galement les serveurs (serveur de fichiers, serveur DHCP, serveur dapplication, serveurdebasededonnes). Lannexe 1 prsente un schma du rseau des bureaux et de lentrept dans lequel figurent le rseau existant (partiedroite)ainsiquelextensionprvuepouruneapplicationdecommercelectronique(partiegauche). On vous a charg de proposer les modifications apporter au rseau afin de respecter le cahier des charges prsentenannexe2.

Missions:

1 Citer les dispositifs matriels permettant de scuriser les nouveaux serveurs afin quils rpondent lexigencedecontinuitduservicerenduquiestexprimedanslecahierdescharges. 2 Afin datteindre le dbit demand dans le cahier des charges, dcrire les modifications apporter au rseau. Prciser quels sont les lments remplacer et dcrire les caractristiques techniques des lmentsajouter. 3 Afin de remplacer le commutateur SW1, identifier le (ou les) quipement(s) ncessaire(s) parmi ceux qui sont proposs en annexe3. Ce choix dquipement doit tre justifi, la contrainte budgtaire indiquedanslecahierdeschargesdoittrerespecteetlemontanttotaldelachatdoittrecalcul. Proposer une solution pour laccs au rseau des postes de travail mobiles dans lentrept. Citer les lmentsmatrielsinstaller.

20102011FEDUCASARueduRhne1161204Genve

65

PartieII
Missions:

1 Expliquerdefaonclairelerledufichier/etc/shadow. 2 Rdiger un script shell qui permet de vrifier si un utilisateur entr par la ligne de commande existe ou nondanslefichierdesutilisateurs. 3 Soitlescript"execliste"quireoitenentrelenomd'unrpertoirepuisproduitunfichier"listexec.txt" contenant la liste de tous les fichiers excutables du rpertoire pass en paramtre ou du rpertoire courantsinon. 4 Ecrire le script Shell "calctaille" qui permet d'afficher le nombre de blocs occups par chacun des fichiersd'unrpertoirepassenparamtreoudurpertoirecourantsinon. 5- Dans le but d'assurer un suivi plus rigoureux des diffrents processus lancs, on dcide de raliser un script userproc qui permettra de lister tous les processus en cours mais par utilisateur connect et de stocker les rsultats de ce script dans un fichier dont le nom possde la structure utilisateur.proc. Ce mmefichierdoitgalementcontenirlenombredeprocessuslancsparunutilisateurconnect.

20102011FEDUCASARueduRhne1161204Genve

66

ANNEXE1 SCHEMADURESEAU
Internet 80.160.65.107 Routeur R1 179.169.10.97 Commutateur SW1 192.168.1.100 Cble fibre optique multimode Hub 10 BaseT 12 Postes de travail Entrept

Rseau local protg

Commutateur SW2

179.169.10.98 179.169.10.105

Routeur pare-feu R2 Serveur DHCP Serveur 192.168.1.4 d'application 192.168.1.3

Serveur SGBDR de fichiers 192.168.1.2 192.168.1.1

Hub 10 BaseT serveur Web 179.169.10.106 Serveur messagerie Serveur DNS 179.169.10.108 179.169.10.107

20 Postes de travail 23 Postes de travail

Hub 10/100BaseT

Hub 10/100BaseT

23 Postes de travail

Zone dmilitarise

Hub 10 BaseT

23 Postes de travail

Hub 100BaseT Hub 10/100BaseT

20 Postes de travail

15 Postes de travail

Extension du rseau

Rseau existant

20102011FEDUCASARueduRhne1161204Genve

67

ANNEXE2 MISEENPLACED'UNEAPPLICATIONDECOMMERCEELECTRONIQUE 1) Ajoutdetroisserveurs: a. UnserveurWebhbergeantlesitedecommercelectronique; b. Un serveur DNS servant la fois de serveur de noms pour le domaine insaclus.net et de serveur cachepourlensembledesrequteseffectuesparlespostesdurseaulocal; c. UnserveurdemessagerieSMTP/POP. Ces serveurs devront tre en service 24h sur 24 et par consquent capables de continuer assurer les servicesrseaux,ycomprisencasdepanned'lectricit,dalimentationlectriqueoudedisquedur. 2) Ajoutduncommutateurpermettantderelierlestroisserveursaurseau. 3) AjoutdunrouteurdaccsInternetfourniprconfigurparlefournisseurdaccsInternet. 4) Ajout dun routeur servant de parefeu, permettant disoler le rseau local de la zone dmilitarise accessibledepuisInternet AUGMENTATIONDUDEBITGLOBALDURESEAUPOURATTEINDRE100MBIT/SOU1GBIT/SSELONLESLIENS 1) Undbitde100Mbit/spour: a. Lecblagededistribution(destinauxpostesdetravailfixesetauxserveurs); b. Laliaisoninterbtiments; c. LesliaisonsentrelecommutateurSW1etlesquipementsdinterconnexiondesservantlespostesde travailfixes; d. LaliaisonentrelesrouteursR1etR2. 2) Undbitde1Gbit/ssurpairestorsadespour: a. LaliaisonentrelerouteurR2etlecommutateurSW1; b. LaliaisonentrelerouteurR2etlecommutateurSW2. Administrationdurseau Lensemble des quipements rseaux devra tre administrable distance via le protocole SNMP (Simple Network ManagementProtocol). Postesdetravailmobilesdanslentrept Depuis lentrept, 5 ordinateurs portables doivent pouvoir accder au rseau pour excuter lapplication de gestion du stock partir de nimporte quel endroit du btiment, y compris quand aucune prise rseau RJ45 nest disponible. Pourcespostes,ledbitde100Mbit/sneserapasexig. Budget Lecotdeloprationdevratreleplusfaiblepossible,aucunedpensenonjustifieneseraadmise.

20102011FEDUCASARueduRhne1161204Genve

68

ANNEXE3
Rfrence ATFS713FCSC Description Commutateur Allied Telesyn, 12 ports 10/100BASET(RJ45), 1 port 100BASEFX(SC), selon IEEE802.3, IEEE802.3u, contrle du flux (IEEE802.3x), modes half et full duplex, autoMDI/MDIX,commutationstoreandforward,tableauadressesMAC4K,compatible aveclespaquetsIEEE802.1q,blocalimentationinterne. Commutateur 3Com Superstack III 4226T, couche 2, 24 ports 10/100BASETX(RJ45) autodtection, deux ports 10/100/1000BASETX (RJ45) autodtection, port console RS232, fond de panier commutation 8,8 Gbit/s, SNMP, 802.1Q pour max. 60 VLAN, RSTP, resilient links, 802.1p CoS avec deux files d'attente par port, y compris le manuel etlekitdemontagerack19". Commutateur transtec Gigabit, 8 ports 10/100/1000BASE T(RJ45)(IEEE802.3, IEEE802.3u, IEEE802.3ab), IEEE802.3x Flow Control/autongociation, commutation automatique MDI/MDIX pour chaque port RJ45, commutation store and forward, tableau d'adresses MAC 8K, dbit max. 1 488 000 pps par port, bloc alimentation interne. Commutateur empilable ATI, 24 ports 10/100BASET(RJ45), 2 x 100BASEFX(SC), commutateur "fabric" 9,6 Gbps, vitesse full wire nonblocking, taux de renvoi automatique 6,5 Mpps, adresses MAC 4K, mmoire tampon 6 Mo, half et full duplex, autongociation, auto MDI/MDIX, Spanning Tree (IEEE802.1d), CoS (IEEE802.1p), VLAN tagging (IEEE802.1q), max. 32 VLAN, contrle du flux (IEEE802.3x), agrgatin de ports (IEEE802.3ad),IGMPSnoopingv1/v2,contrlerseau:SNMP,contrlebassurleWeb, console,CLI,Telnet. Commutateur Superstack III Switch 4400 SE de 3COM, couche 2, 24 ports 10/100BASE TX(RJ45) autodtection, deux emplacements pour modules supplmentaires, port console RS232, fond de panier commutation 13 Gbit/s, sauvegarde de 8 000 adresses, SNMP,RMON,supportdeVLAN802.1Q,IGMPSnooping,manueld'utilisationinclus. Garantie:5ans. Module1000BaseT3COM,unport,pourSuperstackIII4400. Module1000BaseSX3COM,unport,priseMTRJ,pourSuperstackIII4400. Module100BaseFX3COM,unport,priseMTRJ,pourSuperstackIII4400. Module1000BaseLX3COM,unport,priseMTRJ,pourSuperstackIII4400. Commutateur SuperStack III 4900, couche 23, 12 ports 100/1000BASETX (RJ45) autodtection, configur en tant qu' AutoMDIX, un emplacement pour module supplmentaire, transfert de donnes 23 millions pps, supporte CoS/QoS, SNMP Managment, 802.1Q VLAN, 802.1p traffic prioritization, rapid spanning tree, IGMP Snooping,agrgatdeliens,RIP/RIPv2,DHCP,ycomprismanueld'utilisation. GBIC 1000BASELX module tranceiver multi/monomode pour Commutateur SuperStack III4900. GBIC 1000BASESX module transceiver multimode pour Commutateur SuperStack III 4900. PrixHT 390,00

3C17300ME

770,00

T95GSW08OU

800,00

AT8026FC

825,00

3C17206ME

720,00

3C17220 3C17221 3C17222 3C17223 3C17700ME

330,00 395,00 475,00 1275,00 3700,00

3CGBIC92 3CGBIC91

1085,00 430,00

20102011FEDUCASARueduRhne1161204Genve

69

CASN8:RESEAUXETPROGRAMMATIONSHELL CORRIGE

PartieI
1 Citer les dispositifs matriels permettant de scuriser les nouveaux serveurs afin quils rpondent lexigencedecontinuitduservicerendu,exprimedanslecahierdescharges. Systme de tolrance aux pannes de disque dur RAID (Redondant Array of Inexpensive Disk) (1pt) de niveau 1(mirroir)ou5avecdisquesdursextractibleschaud(1pt)permettantderemplacerunmoduledfectueux sansarrterlesystme(hotplugouhotswap).OnnetiendrapascompteduniveaudeRAIDsaufsiRAID0! Onduleur(alimentationlectriquedesecours) Alimentationlectriqueredondante

2 Afin datteindre le dbit demand dans le cahier des charges, dcrire les modifications apporter au rseau. Prciser quels sont les lments remplacer et dcrire les caractristiques techniques des lmentsajouter. a. Dbit100Mbits/s Cblage du btiment B (entrept) refaire en catgorie 5 ou plus (on ne pnalise pas un candidat qui proposedelafibrelaplaceducuivre) Interbtimentonnechangerien LiaisonSW1quipementsdinterconnexiononconservelecblageexistant Remplacementdescartesrseauencore10Mbit/spardescartes100Mbit/spourlespostesdetravailetles serveurs Remplacement du concentrateur Hub 10 de lentreptpar un concentrateur ou un commutateur 12 ports 100bTx+1port100bFX(outransceiverfibre) RemplacementouadaptationducommutateurSW1paruncommutateur10ports100bTX+1port100bFX+ 1port1000bT Remplacement des concentrateurs 10bT par des concentrateurs ou des commutateurs 100bTX voire par un seulswitchoffrantlenombredeportsappropri LiaisonentreR1etR2ajoutduncblagecatgorie5ousuprieure b. DbitGbits/ssurcuivre (1pt)CblageentreR2etSW1etSW2en1Gbits/ssurcuivredonccatgorie5eou6ouplus (1pt)AjoutduncommutateurSW23ports100bTX+1port1000bT (1pt) Le routeur parefeu devra disposer de 2 cartes rseau Ethernet Gigabit (1000bT) + 1 carte rseau Ethernet100bTX

20102011FEDUCASARueduRhne1161204Genve

70

3 Afin de remplacer le commutateur SW1, identifier le (ou les) quipement(s) ncessaire(s) parmi ceux qui sont proposs en annexe3. Ce choix dquipement doit tre justifi, la contrainte budgtaire indiquedanslecahierdeschargesdoittrerespecteetlemontanttotaldelachatdoittrecalcul. Proposer une solution pour laccs au rseau des postes de travail mobiles dans lentrept. Citer les lmentsmatrielsinstaller. Seul le commutateur Superstack III 4400 est envisageable les autres ntant pas manageables ou ne supportant pasdemodulesfibreoucuivreGbits.Le4900esttropcheretnepeutdesurcrotaccepterle100BaseFX 1CommutateurSuperstackIIIswitch4400SE(ref3C17206ME) 720 1Module1000baseT(rf.3C17220) 330 1Module100baseFX(rf.3C17222) 475 CalculduMontant Budgettotal:1525 Onutiliseraunrseausansfilbassurlesondesradio(normeIEEE802.11aou802.11b). Lematrielncessairecomprend: a. metteursrcepteursradio(cartesinstallersurlesordinateursportables)et b. unbotierdinterconnexion(pointdaccs)comprenantunmetteurrcepteurradio.

PartieII
1 Expliquerdefaonclairelerledufichier/etc/shadow. Leproblmedufichier/etc/passwdestqu'ilestaccessibleenlecturepartouslesutilisateurs(comptes)etdoncle motdepassecrypts'ytrouvant,peuttrercupretpourquoipasdchiffrparunlogicieldedcryptage. Pour pallier ce problme, on utilisera le fichier /etc/shadow, qui n'est accessible que par le compte root. Ce fichier permettra aussi de stocker le mot de passe au lieu de le laisser dans /etc/passwd. La structure du fichier /etc/shadowestlasuivante: compte:Q,Jpl.or6u2e7:10795:0:99999:7:-1:-1:134537220 compte Nomd'utilisateurouducompteLinux. Q,Jpl.or6u2e7 Reprsente le mot de passe chiffr rsultant d'une transformation irrversible d'un mot de passe 8 caractres.Unalgorithmemathmatiqueestappliquaumotdepassedemanireproduireunrsultat uniquepourchaquemotdepasse. 10795 Nombredejoursentrele1erjanvier1970etladatededernierchangementdumotdepasse. 0 Nombre de jours avant que le mot de passe ne puisse tre chang. Usuellement, la valeur est = 0. Ce champn'estpassouventutilis. 99999 Correspond au nombre de jours aprs quoi le mot de passe doit tre modifi. Ce champ est rarement utilis.Pardfaut,savaleurest99999. 7
20102011FEDUCASARueduRhne1161204Genve

71

Nombredejourspourlequelunutilisateurestavertiquesonmotdepasseexpirera. 1 Nombre de jours aprs quoi le mot de passe expire de sorte que le compte est dsactiv.1 est utilis pour indiquer un nombre infini de jours (ce qui veut dire que cette proprit du compte n'est pas considre). 1 Nombredejoursentrele1erjanvier1970etladatededsactivationducompte. 134537220 Rservunusageultrieur. 2 Rdiger un script shell qui permet de vrifier si un utilisateur entr par la ligne de commande existe ou nondanslefichierdesutilisateurs. #! /usr/bin/sh if [ $# -ne 1 ] ; then echo "Mauvais nombre d'arguments" echo "Usage: $0 nom_user" exit 1 fi if grep "^$1:" /etc/passwd > /dev/null then echo "L'utilisateur $1 est dfini sur le systme" else echo "L'utilisateur $1 n'est pas dfini sur le systme" fi exit 0 3 Soitlescript"execliste"quireoitenentrelenomd'unrpertoirepuisproduitunfichier"listexec.txt" contenant la liste de tous les fichiers excutables du rpertoire pass en paramtre ou du rpertoire courantsinon.

20102011FEDUCASARueduRhne1161204Genve

72

#!/bin/sh if [ $# -eq 0 ] then set . else if [ $# -gt 1 ]; then echo "Nombre de paramtres incoherent"; exit else if [ ! -d $1 ]; then echo "Rpertoire inexistant"; exit fi fi fi cd $1 ( echo "Liste des fichiers excutables du rpertoire :" pwd echo for i in `ls` do [ -x $i ] && echo $i done ) > listexec.txt 4 Ecrire le script Shell "calctaille" qui permet d'afficher le nombre de blocs occups par chacun des fichiersd'unrpertoirepassenparamtreoudurpertoirecourantsinon. #!/bin/sh if [ $# -eq 0 ]; then else if [ $# -gt 1 ] then echo "Nombre de paramtres incoherent"; exit else if [ ! -d $1 ] then echo "Rpertoire inexistant";exit fi fi fi cd $1 rep=`pwd` echo -e "La liste des"`ls|wc -l`" fichiers et rpertoires de $rep est:\n" echo "Fichiers :" echo "==========" for i in `ls` do [ -f $i ] && echo -e "\t$i" done echo "Repertoires" echo "===========" for i in `ls` do [ -d $i ] && echo -e "\t$i" done echo -e "\nIls utilisent au total "`ls -l|cut -f2 -d" "`" blocs"

20102011FEDUCASARueduRhne1161204Genve

73

5 Dans le but d'assurer un suivi plus rigoureux des diffrents processus lancs, on dcide de raliser un script userproc qui permettra de lister tous les processus en cours mais par utilisateur connect et de stocker les rsultats de ce script dans un fichier dont le nom possde la structure utilisateur.proc. Ce mmefichierdoitgalementcontenirlenombredeprocessuslancsparunutilisateurconnect. Scriptuserproc umask 177 proc=`whoami` set `who|cut -c1-9|sort` for i in $* do echo -n "$i : " n=`ps -u $i | wc -l` if [ $i = $proc ] then echo `expr $n - 4` else echo $n fi done > utilisateur.proc

20102011FEDUCASARueduRhne1161204Genve

74

Outilsetcomptencesutiliss:

Comptencesetoutilsabords
Linux:shell,commandesdebaseetprogrammationshell Rseautique ModleOSITCP/IP Topologiedesrseaux

20102011FEDUCASARueduRhne1161204Genve

75

CASN9:RESEAUTIQUEETLOGIQUEDEPROGRAMMATION Prsentationgnraleduthme: La filiale du Luxembourg X. SA On line, spcialise dans la mise en place de plateforme elearning dispose d'un rseaulocal detypeFastEthernet (100Mbps).CeLANpermetdeconnecter plusieurssegments,compossd'une cinquantaine de stations Windows XP et Linux, d'un contrleur de domaine Windows 2003 et de machines, appeles POSTE1 et POSTE2. Afin d'tudier les diffrents chemins emprunts par les paquets sur le rseau, l'administrateur rseaux excuter la commande : netstat r sur les machines POSTE1 et POSTE2. Les rsultats obtenussontlessuivants: POSTE1 Adresserseau Masquerseau Adressepasserelle Interface 127.0.0.0 255.0.0.0 127.0.0.1 127.0.0.1 200.100.40.0 255.255.255.0 200.100.40.1 200.100.40.1 200.100.40.1 255.255.255.255 127.0.0.1 127.0.0.1 200.100.40.255 255.255.255.255 200.100.40.1 200.100.40.1 200.100.50.0 255.255.255.0 200.100.50.1 200.100.50.1 200.100.50.1 255.255.255.255 127.0.0.1 127.0.0.1 200.100.50.255 255.255.255.255 200.100.50.1 200.100.50.1 200.100.60.0 255.255.255.0 200.100.40.2 200.100.40.1 224.0.0.0 224.0.0.0 200.100.40.1 200.100.40.1 224.0.0.0 224.0.0.0 200.100.50.1 200.100.50.1 255.255.255.255 255.255.255.255 200.100.50.1 200.100.50.1 POSTE2 Adresserseau Masquerseau Adressepasserelle Interface 127.0.0.0 255.0.0.0 127.0.0.1 127.0.0.1 200.100.40.0 255.255.255.0 200.100.40.2 200.100.40.2 200.100.40.2 255.255.255.255 127.0.0.1 127.0.0.1 200.100.40.255 255.255.255.255 200.100.40.2 200.100.40.2 200.100.60.0 255.255.255.0 200.100.60.1 200.100.60.1 200.100.60.1 255.255.255.255 127.0.0.1 127.0.0.1 200.100.60.255 255.255.255.255 200.100.60.1 200.100.60.1 224.0.0.0 224.0.0.0 200.100.40.2 200.100.40.2 224.0.0.0 224.0.0.0 200.100.60.1 200.100.60.1 255.255.255.255 255.255.255.255 200.100.60.1 200.100.60.1 CertainesdesadressesIPutilisesdanscerseausontprsentesdanslalistesuivante: 200.100.40.11 200.100.40.1 200.100.40.2 200.100.50.11 200.100.50.1 200.100.60.11 200.100.60.1

20102011FEDUCASARueduRhne1161204Genve

76

PartieI Missions: 1 Interprtez les 5 premires lignes de la table du POSTE2, puis interprtez la 8me ligne de la table du POSTE1. 2 QuelrlepourraientjouerlespostesPOSTE1etPOSTE2surlerseau? Argumentervotrerponse. Dcrivezuneconfigurationlogiciellequipermettracespostesd'assumerleurrle. 3 A l'aide des deux tables prcdentes et de la liste des postes, proposer un schma fonctionnel du rseaucorrespondant. 4 Donner la table de routage du poste 200.100.50.11, sachant que sur la route par dfaut s'exprime par 0.0.0.0. 5 Apartirduposte200.100.50.11vousexcutezlacommandesuivante: ping200.100.60.11 Larponsecettecommandeest: requesttimedout Pourquoi?Quefautilfairepourremdiercettesituation? 6 Quelle commande IP permet d'tablir la liste des routeurs qui sont sollicits lors de l'envoi d'un message? PartieII
La filiale du Luxembourg X. SA a sign un contrat de maintenance des plateformes elearning avec un groupe scolairegrantenvironunecentainesd'tablissementsprivssouscontrat.Afindegrerdefaontrsponctuelle les diffrentes plateformes, la filiale X. SA Luxembourg envoie la fin de chaque quinzaine, au service comptabilit du groupe un bilan sur lensemble des tches de maintenance ayant eu lieu sur chacune des plateformes. On vous demande dautomatiser la ralisation du bilan. Il sera tabli partir dun tableau denregistrements "TACHES" prsent cidessous, ce dernier tant suppos dj initialis. La constante reprsente le nombre de dptsstocksdansletableau. TACHES Indice CodeEcole CodeTache Dure(Hr) Cettelignesignifiequela 1 5 2 7 plateformedel'cole5asubi 2 1 2 11 unetchedetypematriel d'unedurede7heuresau NbPForme 5 1 15 coursdelaquinzaine,

20102011FEDUCASARueduRhne1161204Genve

77


DansletableauTACHES:

Chaquelignecorrespondunecole. CodeEcolepermetdidentifierunecole. CodeTacheindiqueletypedetchesralisesurlaplateformeelearninig: 1:PourlestchesdetypeRseaux 2:PourlestchesdetypeMatriel, 3:PourlestchesdetypeLogiciel. Dure:donneladureenheuresdelatche. LebilanseratablienutilisantlastructurededonnesBILANprsentecidessous. BILAN 1 NbEcole 1 2 3

BILANestuntableau2dimensions. NbEcoleestuneconstantequicorrespondaunombred'colesgresparlafiliale. Lindicelignecorrespondaucodedel'cole. Lindicecolonnedsignelecodedelatche. BILAN[i,j]:correspondladuredelatchedecodejpassel'colei. Ladclarationdutableauest:BILAN[1..NbEcole,1..3]:TABLEAUREEL. Missions: 1 DonnerladclarationdutableaudenregistrementsTACHES. 2 crirelaprocdurepermettantdeconstruireletableauBILANpartirdutableauTACHES.

20102011FEDUCASARueduRhne1161204Genve

78

CASN9:RESEAUTIQUEETLOGIQUEDEPROGRAMMATION CORRIGE 1 Interprtez les 5 premires lignes de la table du POSTE2, puis interprtez la 8me ligne de la table du POSTE1. Unelignedetablederoutageselitainsi: Pour joindre "telle adresse IP" dont la partie rseau est "compose ainsi", je dois passer par"tel routeur" et pour joindrecerouteurjedoisutiliser"telleinterfacerseau". Pour comprendre la premire ligne il faut connatre l'adresse de rseau de bouclage 127.0.0.0. Ladresse 127.0.0.1 est l'adresse de loopback (ou de Localhost), elle signifie "mon adresse IP", c'est dire l'adresse qui dsigneleposteousetrouvecettetable. Les masques de sousrseau sont tous 255.255.225.0, la partie adresse rseau est donc reprsente par les 3 premierslmentsdelanotationdcimalepointe.Nouspouvonsendduirequenoussommessoitenprsence dun rseau de classe C, soit dun sous rseau de classe A ou B. Or le premier octet de chaque adresse vaut 200 (soit11001000enbinaire).NoussommesdoncicitypiquementenclasseC. Ladeuximelignecommenceparl'adresseIP200.100.40.0.Ladernirepartiedel'adresseIPzrosignifiequ'on adresse le rseau logique 200.100.40.0 (tous les bits de la partie hte sont zro, cest donc une adresse de rseau ou adresse "this"). Donc pour atteindre ce rseau je dois passer par la passerelle 200.100.40.2 et utiliser pour cela mon interface rseau (ma carte rseau) qui a l'adresse IP 200.10.40.2, c'est dire qu'en ralit je n'utilisepasderouteurpuisquejerestel'intrieurdemonrseau. La troisime ligne se comprend facilement : pour m'atteindre moimme, je passe par moimme (route identiquel'adressedeloopback). La quatrime ligne commence par une adresse de diffusion dirige (directed broadcast). Pour adresser tous les postes du rseau 200.100.40.0, rseau dont je fais partie, j'utilise ma propre interface, (ici l'adresse 255.255.255.255permetdefairelammechosedanslastrictecadredemonrseau,alorsqu'uneadressedirige mepermetunbroadcastsurunautrerseau). Lacinquimelignemepermetd'atteindrelerseau200.100.60.0(autrerseau),pourcelajepasseparlerouteur 200.100.60.1 et pour l'atteindre j'utilise l'interface 200.100.60.1, ce qui sous entend que je l'atteins directement. Mon poste dispose d'une deuxime interface rseau, et ma table de routage me permet de m'orienter sur ces 2 interfaces. La huitime ligne de la table du poste R1 permet d'atteindre le rseau 200.100.60.0 en passant par le routeur 200.100.40.2 et en utilisant l'interface 200.100.40.1. Ici nous utilisons un deuxime routeur pour accder ce rseau, nous ne l'atteignons pas directement, nous accdons d'abord au routeur 200.100.40.2 en utilisant notre interface200.100.40.1etcerouteursedbrouillera(ilinspecterasatable)pouratteindrelerseaucible. Remarque : l'adresse commenant par 224 est une adresse rserve utilise par l'adressage multipoint ou l'adressediffusion.

20102011FEDUCASARueduRhne1161204Genve

79

2 QuelrlepourraientjouerlespostesPOSTE1etPOSTE2surlerseau? Argumentervotrerponse. Dcrivezuneconfigurationlogiciellequipermettracespostesd'assumerleurrle. Quand on lit la colonne interface de ces deux tables, on s'aperoit que les postes POSTE1 et POSTE2 disposent chacunde2cartesrseaux,ilspeuventdoncjouerlerlederouteur. Pourcela,plusieurssolutionslogiciellespeuventtreenvisages: Windows2003Server,aveclemodulederoutage: DmarrerOutilsd'administrationRoutageetaccsdistantRoutageRseau Quand une console s'affiche, faites alors un clique droit sur votre serveur, situ en dessous de "Etat du serveur"dansRoutageetaccsdistant.Ensuite,choisissezlacommande Configureretactiverleroutageetl'accsdistant. Pour des postes sous Linux, comme le noyau du systme intgre par dfaut les fonctionnalits de routage statique,enutilisantlescommandessuivantes:

ifconfig, routeadd, routedel, routeadddefault, tcpdump, netstat, ping, tracert.

Pourtoutcequiestroutagedynamique,onpourrautiliserunoutiltrsutilissousLinux,savoir,zebra. Exemple Statique #ifconfig eth0 192.168.40.1 netmask 255.255.255.0 #ifconfig eth1 192.168.3.4 netmask 255.255.255.0 #route add net 192.168.1.0 netmask 255.255.255.0 gw 192.168.40.2 Dynamique
Pour activer le routage dynamique sous RIP :

#echo1>/proc/sys/net/ipv4/ip_forward. ChaquecarterseauseraconnecteunsegmentEthernet,etchacunedisposeradesapropreadresseIP. Cespostesvontinterconnecterlestroisrseauxlogiques: 200.100.40.0,200.100.60.0et200.100.50.0.

20102011FEDUCASARueduRhne1161204Genve

80

3 A l'aide des deux tables prcdentes et de la liste des postes, proposer un schma fonctionnel du rseaucorrespondant. LeschmasuivantralissouslelogicielVisiodeMicrosoft,reprsenteunschmafonctionnelbassurlestables deroutageprsentescidessus.

200.100.50.11

200.100.50.0
200.100.50.1

200.100.40.1 200.100.40.11

200.100.40.0
200.100.40.2

200.100.60.1

200.100.60.0
200.100.60.11

4 Donner la table de routage du poste 200.100.50.11, sachant que sur la route par dfaut s'exprime par 0.0.0.0. Ce poste ne joue pas le rle de routeur, mais il doit connatre le poste routeur pour lui adresser les paquets non destinsaurseau(adressedelapasserelledanslaconfigurationIP) Avec TCP IP, chaque poste est actif et dispose d'une table de routage mme s'il n'est pas routeur. Le poste 200.100.50.11 ne droge pas la rgle, la lecture de sa premire ligne nous permet d'identifier son routeur. La colonneinterfacenousindiquequ'iln'aqu'uneseuleinterfacerseau. Poste200.100.50.11 Adresserseau Masquerseau Adressepasserelle Interface 0.0.0.0 0.0.0.0 200.100.50.1 200.100.50.11 127.0.0.0 255.0.0.0 127.0.0.1 127.0.0.1 200.100.50.0 255.255.255.0 200.100.50.11 200.100.50.11 200.100.50.11 255.255.255.255 127.0.0.1 127.0.0.1 20.100.50.255 255.255.255.255 200.100.50.11 200.100.50.11 224.0.0.0 224.0.0.0 200.100.50.11 200.100.50.11 255.255.255.255 255.255.255.255 200.100.50.11 200.100.50.11

20102011FEDUCASARueduRhne1161204Genve

81

Larponsecettecommandeest: requesttimedout Pourquoi?Quefautilfairepourremdiercettesituation? Le ping au niveau interne est en fait une demande d'cho qui permet de tester entre autre un lien bidirectionnel (protocoleICMP). Notre ping passe travers les deux routeurs, ceuxci doivent avoir leur table de routage prvue pour cela. R1 sait qu'il doit passer par R2 pour atteindre le rseau 200.100.60.0 mais la route de retour ne fonctionne pas, R2 ne saitpasqu'ildoitpasserparR1pouratteindrelerseau200.100.50.0;satablederoutageneleluiindiquepas. Pourquenotrepingfonctionne,ilfautmettrejourcettetableainsi: (syntaxeNT) Routeadd200.100.50.0mask255.255.255.0200.100.40.1 Cette commande indique R2 que pour atteindre le rseau 200.100.50.0 il faut passer par la passerelle 200.100.40.1 (R1) et donc envoyer le paquet sur l'interface 200.100.40.2 (cette interface sera dduite automatiquementdelatablederoutage).

Apartirduposte200.100.50.11vousexcutezlacommandesuivante: ping200.100.60.11

6 Quelle commande IP permet d'tablir la liste des routeurs qui sont sollicits lors de l'envoi d'un message? PourobtenirlalistedesrouteurssollicitslorsdelenvoidunmessagesurNT,onutiliselacommandetracertqui l'aideduprotocoleICMPpermetd'identifierlesdiffrentsrouteurstraverss.

tracert200.100.60.11

Remarque: Les commandes IP sont lgrement diffrentes entre UNIX et NT, NT ayant visiblement voulu conserver des commandessur8caractres.

20102011FEDUCASARueduRhne1161204Genve

82

PartieII

1 DonnerladclarationdutableaudenregistrementsTACHES. TYPEe_tache= STRUCTURE code_ecole:ENTIER code_tache:ENTIER duree :REEL FINSTRUCTURE VARTACHES[1..NbPForme]:TABLEAUDEe_tache

2 crirelaprocdurepermettantdeconstruireletableauBILANpartirdutableauTACHES. ALGORITHMEBilan VAR i,j,k:ENTIERS /*indicesdeparcours*/ s,d:ENTIERS /*respectivementcode_ecole,code_tache*/ TACHES[1..NbPForme]:TABLEAUDEe_tache BILAN[1..NbEcole,1..3]:TABLEAUDENTIERS DEBUT /*Initialisationdescompteurs*/ POURiDE1ANbEcole POURjDE1A3 BILAN[i,j]0 FINPOUR FINPOUR /*ParcoursdutableauDEPOTS*/ POURkDE1ANbPForme sTCAHES[k].code_ecole dTACHES[k].code_tache BILAN[s,d]BILAN[s,d]+TACHES[k].duree FINPOUR FIN

20102011FEDUCASARueduRhne1161204Genve

83

Outilsetcomptencesutiliss:

Comptencesetoutilsabords
Architecturegnraledesordinateurs Rseauxlocaux Systmed'exploitation Architecturematrielle Dveloppementprocdural

20102011FEDUCASARueduRhne1161204Genve

84

CASN10:ADMINISTRATIONRESEAUETSECURITEINFORMATIQUE Prsentationgnraleduthme: La filiale CaSA au Maroc du groupe X. SA, spcialise en informatique et rseaux occupe un immeuble de deux tages.Lesdiffrentsservicesdecettefilialesontrpartiscommesuit: Au1ertage,setrouventlesservicesDITION,JURIDIQUEetTRADUCTION, Le2metageleservicehbergelesservicesADMINISTRATIFetINFORMATIQUE. Unschmafonctionneldel'infrastructureactuelleatlaborestprsentenannexe.

PartieI
Missions: 1 Indiquerlaclasseetladressedurseauexploitau2metagedelafilialeCaSA.Justifiervotrerponse. 2 Rechercher le masque de sousrseau utilis pour le 2me tage. Veiller prvoir le plus grand nombre depostespossibleettenircomptedes2sousrseauxexistants. 3 Indiquerlenombredesousrseauxdontonpourraitdisposercettage.Justifiervotrerponse. 4 Rechercher ladresse du sousrseau auquel appartiendrait la machine dadresse 172.16.132.2. Justifier larponse. Chaque tage dispose dun ou de plusieurs serveurs DHCP. Le serveur nomm EDITI peut attribuer des adresses IP aux postes du 1er tage. Les serveurs ADMINI et INFORI attribuent, quant eux, des adressesIPrespectivementauxpostesdesdeuxsousrseaux4et5. 5 ExpliquerlerledesagentsrelaisDHCPinstallssurAGR1etAGR2. Desutilisateursdusousrseau1seplaignentparfoisquilsnarriventpasseconnecterau rseau, un messageleursignalantquuneadresseIPexistedjsurlerseau.Uncontrleatralispermettant dcarterlesrouteurscommecausepossible. 6 Donnerunecausepossibleduproblmerencontrparcesutilisateurs. 7 Proposer les paramtres de configuration du serveur DHCP EDITI afin dassurer le bon fonctionnement delensembledespostesdu1ertage. Lentreprisesitueau3metagedmnageetlasocitDUGALDEprofitedeloccasionpourydplacer certainspostesdetravailduserviceDITIONquimanqueactuellementcruellementdeplace. 8 Proposerunesolutionmatriellepermettantdassurerlinterconnexionavecundbitde1Gbit/sentre les postes du service DITION dplacs au 3me tage et les postes du service DITION rests au 1er tage.Onprendrasoindenemodifierenaucuncaslaconfigurationlogicielledesmachines. 9 Donner les lignes de la table de routage du routeur AGR2 qui permettront aux postes du sousrseau 192.168.4.0daccdertouslesautressousrseauxdelentreprise.Seulesleslignesprcisantlesaccs auxsousrseauxsontdemandes. Chaque ligne de la table de routage devra comporter ladresse du rseau de destination, le masque de sousrseau,ladressedepasserelleetladressedinterface.
20102011FEDUCASARueduRhne1161204Genve

85

PartieII
Tous les services de lentreprise doivent accder linternet, mais les droits daccs aux diffrents services (web, courrier, etc.) ne sont pas les mmes. Pour rsoudre le problme et aprs avoir effectu une tude de march, ladministrateursestdotdunparefeu(firewall)disposantgalementdunefonctiondetranslationdadresses. Missions:


1 Expliquerenquoilatranslationdadressesestintressantepourlascuritdelentreprise. Le parefeu choisi gre les autorisations daccs aux services de linternet en regroupant les postes de travail qui ont des droits similaires. Pour crer un groupe de machines, on associe une plage dadresses IP son nom. Leresponsableinformatiqueaainsichoisidecrerungroupedemachinesparsousrseau. Voiciunextraitpartieldelatableactuelledescontrlesdaccs duparefeu.Danscettetable,toutcequinest pasexplicitementautorisestinterdit. Groupedemachines Protocolesautoriss Sousrseau1 DNS,HTTP, Sousrseau2 DNS,HTTP, Sousrseau3 Sousrseau4 Sousrseau5 2 Prsenter les contrles daccs du parefeu laide dun tableau indiquant, pour chaque groupe de machines,lalistedesprotocolesautoriss. Onsouhaitequelespostesdetravail: dusousrseau1puissentaccderauwebetfairedutransfertdefichiers, dessousrseaux2,3et4puissentaccderauwebetutiliserlecourrierlectronique, dusousrseau5puissentaccdertouslesservicesdelinternet,ycomprislesforumsdediscussion. On envisage dautoriser les commerciaux transmettre leurs commandes distance travers linternet, en utilisantlesportablesquileuronttfournis,quipsdecartesmodemPCMCIA. 3 Indiquercommentassurerlascuritetlaconfidentialitdecestransactions.

20102011FEDUCASARueduRhne1161204Genve

86

ANNEXE1

20102011FEDUCASARueduRhne1161204Genve

87

CASN10:ADMINISTRATIONRESEAUXETSECURITEINFORMATIQUE CORRIGE

PartieI
1 Indiquerlaclasseetladressedurseauexploitau2metagedelafilialeCaSA.Justifiervotrerponse. 1eroctet=172,comprisentre128et191correspondlaclasseB autresolution:enbinaire172=10111110(10xxxxxx:classeB) L'adressedurseaudelafilialeCaSAMArocest:172.16.0.0 2 Rechercher le masque de sousrseau utilis pour le 2me tage. Veiller prvoir le plus grand nombre depostespossibleettenircomptedes2sousrseauxexistants. LemasquederseaupardfautdelaclasseBest255.255.0.0 Pouradresserdessousrseaux,ondisposedes2octetsdepoidsfaible. PourpouvoirdisposerdunrseauenX.Y.160.0,ilfaututiliser3bitssurles2octetsdepoidsfaible(160base10= 10100000base2).Lesautresbitspourronttreutilisspourladressagedesnuds. Onadonc:11111111.11111111.11100000.00000000,soit255.255.224.0 3 Indiquerlenombredesousrseauxdontonpourraitdisposercettage.Justifiervotrerponse. Troisbitssontutilissdanslapartiehtepouradresserlessousrseaux. 232=6.Onpeutadresser6sousrseaux(onacceptera8sousrseaux) 4 Rechercher ladresse du sousrseau auquel appartiendrait la machine dadresse 172.16.132.2. Justifier larponse. Les2octetsdepoidsfaibleontpourvaleur132.2,soitenbinaire10000100.00000010. Les 3 premiers bits concernant le rseau (1000 0000 base 2 = 128), la machine d'adresse 172.16.132.2 appartient ausousrseaud'adresse172.16.128.0

5 ExpliquerlerledesagentsrelaisDHCPinstallssurAGR1etAGR2. LesagentsrelaisDHCPAGR1etAGR2sontsitusentreunsousrseauquidisposedunserveurDHCPetdessous rseaux ne disposant pas de serveur DHCP ; les postes des sousrseaux 2 et 3 doivent obtenir une adresse du serveurEDITIsitusurun autresousrseau;l'agentrelaisvaservirdepasserelleaveclesousrseau1;iladans sa configuration l'adresse IP du serveur DHCP EDITI et redirigera ainsi les requtes de demandes d'adresse IP provenantdespostesappartenantauxsousrseaux2et3versceserveurDHCP.Inversementilrelayeraladresse IPattribueverslastationquienafaitlademande(ilroutelestramesDHCP). 6 Donnerunecausepossibleduproblmerencontrparcesutilisateurs. Il se peut que la plage dtendue DHCP propose par EDITI nait pas exclu ladresse du serveur luimme ou celle du routeur. Un utilisateur faisant une demande peut donc se voir affecter une de ces adresses qui entre alors en conflit avec celle affecte de manire statique au serveur DHCP ou au routeur. Une autre cause ventuelle peut consister en une dure de bail trop longue ou trop courte. Une autre raison moins probable ici pourrait tre la prsenceduneadresseIPstatique(fixe)surquelquespostes.
20102011FEDUCASARueduRhne1161204Genve

88

7 Proposer les paramtres de configuration du serveur DHCP EDITI afin dassurer le bon fonctionnement delensembledespostesdu1ertage. LeserveurDHCPEDITIdoitattribuerdesadressesaux3sousrseaux1,2et3.Ildoitdoncgrertroistendues: tenduedesousrseau1: Plagedadressesaffecter :de192.168.1.1192.168.1.203 Adresseexclure :192.168.1.100(adresseduserveurEDITI) 192.168.1.1 (adresseAgentRelaisAGR1) 192.168.1.3 (adressedurouteurR2) Masquederseau :255.255.255.0 Adressedepasserelle :192.168.1.3 Onaccepteratoutesolutionpermettantdexclurelesadressesdesrouteursetserveursdelaplageattribue. tenduedesousrseau2 Plagedadressesaffecter :de192.168.2.1192.168.2.52 Adresseexclure :192.168.2.1(AdresseAgentRelaisAGR1) :192.168.2.2(AdresseAgentRelaisAGR2) Masquederseau :255.255.255.0 Adressedepasserelle :192.168.2.1 tenduedesousrseau3 Plagedadressesaffecter :de192.168.3.1192.168.3.51 Adresseexclure :192.168.3.2(adresseAgentRelaisAGR2) Masquederseau :255.255.255.0 Adressedepasserelle :192.168.3.2 On acceptera naturellement toute tendue rpondant aux contraintes du sujet, notamment des tendues plus vastespermettantuneextensionfuturedessousrseaux.

8 Proposerunesolutionmatriellepermettantdassurerlinterconnexionavecundbitde1Gbit/sentre les postes du service DITION dplacs au 3me tage et les postes du service DITION rests au 1er tage.Onprendrasoindenemodifierenaucuncaslaconfigurationlogicielledesmachines. Ilsagitici de dplacerdes machinessanstoucherleurconfiguration.Pasquestiondoncdecrerunautresous rseau au troisime tage. Il est exclu de fait, de relier les tages au travers dun routeur, puisque toutes les machinesconserventleuradresseIPetrestentdoncdanslemmesousrseau.Lasolutionconsistealorsrelier les deux tages (distance suppose infrieure 25 m) laide dun brin supportant le 1 Gbit/s (catgorie 5e, 5+,6 ou 7, voire fibre optique obligatoire pour des distances suprieures 25 m). On ne va pas, bien entendu, tirer autant de brins quon dplace de stations et il faut donc prvoir en plus, ltage, un quipement dinterconnexion des postes (en principe commutateur plutt que concentrateur afin de limiter les collisions) qui sera reli lquipement actuel dinterconnexion. (on ignore son type, son dbit actuel et donc sil faut le changer).Onnedemandepaschangerlescartesrseau. 9 Donner les lignes de la table de routage du routeur AGR2 qui permettront aux postes du sousrseau 192.168.4.0daccdertouslesautressousrseauxdelentreprise.Seulesleslignesprcisantlesaccs auxsousrseauxsontdemandes.

20102011FEDUCASARueduRhne1161204Genve

89

Rseau 192.168.1.0 192.168.2.0 192.168.3.0 192.168.4.0 172.16.128.0 172.16.160.0 Masque 255.255.255.0 255.255.255.0 255.255.255.0 255.255.255.0 255.255.224.0 255.255.224.0 Passerelle .. 192.168.2.1 192.168.2.2 192.168.3.2 192.168.4.2(*) 192.168.2.1 192.168.2.1 Interface .. 192.168.2.2 192.168.2.2 192.168.3.2 192.168.4.2(*) 192.168.2.2 192.168.2.2

PartieII
1 Expliquerenquoilatranslationdadressesestintressantepourlascuritdelentreprise. Latranslationdadresses(NATNetworkAddressTranslation,PATPortAddressTranslation,)permetdemasquer aumondeextrieurlesadressesIPrellementutilisesdanslentreprise,rendantainsiplusdifficileslestentatives dintrusion. Quandunpostedurseaulocalmetunedemandedeserviceverslinternet,ledispositif(parefeu,routeurNAT, serveur mandataire ou proxy, ) disposant dune fonction de translation dadresses, remplace l'adresse IP du poste metteur du paquet par sa propre adresse avant lenvoi sur linternet. Il remplace de mme le port de l'application cliente par une valeur particulire, en gnral situe au del de 61 000. Ces informations, adresse IP du poste metteur, port dorigine de lapplication cliente et port attribu, sont enregistres dans une table. Lorsque la rponse du service invoqu arrive sur le parefeu, ce dernier vrifie dans la table qu'il possde bien l'entre correspondante, par rapport au port attribu, puis il rcrit dans les paquets ladresse IP du poste metteuretportinitialdelapplicationcliente.Lepaquetpeutainsirejoindresadestinationdanslerseaulocal.

2 Prsenter les contrles daccs du parefeu laide dun tableau indiquant, pour chaque groupe de machines,lalistedesprotocolesautoriss. Groupedemachines Sousrseau1 Sousrseau2,3et4 Sousrseau5 Protocolesautoriss DNS,HTTP,FTP DNS,HTTP,SMTP,POP3,IMAP DNS,HTTP,SMTP,POP3,IMAP,NNTP

OnaccepteraHTTPS,POPaulieudePOP3,etlaprsencedel'undesprotocolesPOPouIMAP.

3 Indiquercommentassurerlascuritetlaconfidentialitdecestransactions. Une solution consiste mettre en uvre un tunnel travers linternet en utilisant un protocole comme PPTP ou L2TP(crationdunVPN). DuctdelentrepriseDugalde,ilfautinstallerunserveurdaccsdistantetsurlesportablesdescommerciaux,il fautconfigurerunclientdaccsdistant. LeVPNseracrentreleclientetleserveuretlesdonnesserontcrypteslorsdeschanges. IlestgalementpossibledenvisagerlatransmissiondefichierscryptsenutilisantdesoutilsPGP. Le commercial pourra alors rdiger sa commande sur son portable et crypter le fichier concern avant de lenvoyer. La fiabilit et la rapidit dun tel cryptage est obtenu en combinant les principes des cls prives/publiquesetdesclssecrtes.
20102011FEDUCASARueduRhne1161204Genve

90

Outilsetcomptencesutiliss:

Comptencesetoutilsabords
Architecturegnraledesordinateurs Rseauxlocaux Architecturematrielle Rseauxtendus Scuritdesrseauxinformatiques

20102011FEDUCASARueduRhne1161204Genve

91

CASN11:ADMINISTRATIONETMISEENUVREDESRESEAUX(CCNA)ETPROGRAMMATIONAUTOURDESBASESDEDONNEES.

PartieI
Vous tes charg de l'administration du rseau du sige de la socit X. SA, dont l'architecture est prsente par leschmasuivant: 172.16.64.136 172.16.64.135 172.16.64.142 172.16.64.169 A A A 172.16.64.88 C A 172.16.64.129 172.16.64.171 172.16.64.161 172.16.64.91 172.16.64.81 f0/0 f1/0 D A Site 2 Site1 f0/1 172.16.64.174 f0/0 172.16.64.94 f1/0 D A Site 3 Internet A A A 172.16.64.200 172.16.64.197 172.16.64.207 Missions: 1 Proposerunmasquedesousrseauuniquepourl'ensembledesnudsdecerseau. 2 Expliquerlerledesrouteursdanscettearchitecture. 3 Compte tenudumasque propos,attribuer des adressesIPpourlesinterfacesdesrouteurssite1 (f0/0, f0/1),site2(f1/0)etsite3(f0/0,f1/0). 4 Donner les commandes IOS permettant de raliser les tches suivantes, en prcisant le niveau d'excutionpourchacuned'elles: a. Vrificationdesinterfacesnonconfigurssurlerouteur"Site1". b. Sauvegardedelaconfigurationactuellepourleprochaindmarrage. c. Configuration et activation de toutes les interfaces et des routes dynamiques RIP (Routing InternetProtocol)durouteur"Site3". d. Testdelavaliditdelaconfigurationdesinterfacesdurouteur"Site3". 5 Vous grez un rseau compos de 2 segments relis par un routeur qui offre galement une connexion versInternet.Cerouteursupportel'adressageCIDR.
20102011FEDUCASARueduRhne1161204Genve

92

LesegmentAcomporte400htesetlesegmentseulement200. VotreFournisseurnepeutvousproposerque4adressesdeclasseC.

Proposerunadressageadaptcecasdefigure.Dtaillervoscalculsetargumentezvoschoix.

PartieII
Dans le cadre d'une application de gestion des commandes confie au ple informatique du Maroc de la socit X.SA,lechoixaportsurlesystmedegestiondesbasesdedonnesOracle. L'applicationutiliseraautotal4tables,dontlesstructuressontdfiniescommesuit: CLIENT (idclient,nom,prenom) COMMANDE (idcommande,datecommande,idclient#) PRODUIT (idproduit,prixunitaire,nom,numstock) LIGNE_COMMANDE (idcommande#,idproduitNUMBER#,quantite) - Lescolonnessoulignesreprsententdesclsprimaires. - Lesymbole"#"indiquelacolonneestunecltrangre. Missions: 1 EcrireunscriptSQLquipermetderaliserlacrationdecettebase. 2 Ecrireuneprocdurequipermetd'insrerunclientpassparamtre. 3 Ecrire une procdure qui permet d'insrer une commande passe en paramtre avec le numro du clientcorrespondant.
20102011FEDUCASARueduRhne1161204Genve

93

4 Ecrireunefonctionquipermetderetournerlemontanttotald'unecommande,dontl'identificateurest passenparamtre.OnappliquerauntauxTVAde19.6%. 5 Ecrireuntriggerlielatableligne_commande,quiraliselestchessuivantes: En cas d'insertion, il retire de la colonne numstock de la table produit, la quantit insre dans ligne_commande. En cas de mise jour de la colonne quantit, si la nouvelle quantit est suprieure l'ancienne, il calcule la diffrence entre la nouvelle quantit et l'ancienne, puis retire cette diffrence de la valeur de la colonne numstock de la table produit. Sinon, il calcule la diffrence entre l'ancienne quantitmoinslanouvelleetrajoutecettediffrencelacolonnenumstockdelatableproduit. En cas de suppression, la valeur de l'ancienne quantit est rajoute la colonne numstock de la tableproduit.

20102011FEDUCASARueduRhne1161204Genve

94

CASN11:ADMINISTRATIONETMISEENUVREDESRESEAUX(CCNA)ETPROGRAMMATIONAUTOURDESBASESDEDONNEES. CORRIGE

PartieI
1 Proposerunmasquedesousrseauuniquepourl'ensembledesnudsdecerseau. Lapropositiond'unmasqueuniquepourl'ensembledessousrseauxdoittenirdufaitqu'un certain de bits du quatrimedoitchangerd'unsousrseauunautre. Donc,lestroispremiersoctetsrestantinchangs,nousauronsunmasquedutype: 255.255.225.X(Xvaleurdterminerenfonctiondunombredebits) LavaleurXsur8bitsdonne: xxxxxxxx Pour qu'on puisse utiliser un mme masque pour tous les sousrseaux, il faut que les adresses de ces derniers soient codes sur 4 bits, ce qui donnerait une valeur diffrentes pour chacun des sousrseaux, d'o la ncessit d'utiliserleroutage. Lemasquevautdonc: 255.255.255.1111000 255.255.255.240 2 Expliquerlerledesrouteursdanscettearchitecture. Ilspermettentd'interconnecterdessousrseauxappartenantdesclassesdiffrentes. 3 Compte tenudumasque propos,attribuer des adressesIPpourlesinterfacesdesrouteurssite1 (f0/0, f0/1),site2(f1/0)etsite3(f0/0,f1/0). Adressesproposes Site1 f0/0:172.16.64.17 f0/1:172.16.64.33 Site2 f1/0:172.16.64.18 Site3 f0/0:172.16.64.34 f1/0:172.16.64.201 Les trois quipements utiliss pour l'interconnexion des diffrents sous rseaux sont des routeurs Cisco, excutantlesystmeIOS. 4 Donner les commandes IOS permettant de raliser les tches suivantes, en prcisant le niveau d'excutionpourchacuned'elles: a. Vrificationdesinterfacesnonconfigurssurlerouteur"Site1". Router>enable(Modeutilisateur) Router#showrunningconfig(enmodeprivilgi)

20102011FEDUCASARueduRhne1161204Genve

95

Oudemanireexplicite Router#showf0/1 Router#showf0/0 Siondsireafficherdesstatistiquessurlesinterfaces Router#showinterfaces b. Sauvegardedelaconfigurationactuellepourleprochaindmarrage. Router>enable(Modeutilisateur) Router#copyrunningconfigstartupconfig(enmodeprivilgi) Outoutsimplement Router#copyrs(enmodeprivilgi) c. Configuration et activation de toutes les interfaces et des routes dynamiques RIP (Routing InternetProtocol)durouteur"Site3". Modeutilisateur Router> Passerdumodeutilisateuraumodeprivilgi Router>enable Afficherlaconfigurationactuelle Router#showrunningconfig Passeraumodeconfiguration Router#configt(tpourterminal) Passeraumodeinterfaceenslectionnantlapremireinterfacedusite3 Router(Config)#interfacef0/0 AttribueruneadresseIPl'interfacel'interfacef0/0 Router(Configif)#ip172.16.64.34255.255.255.240 Activerl'interface Router(Configif)#noshutdown Reveniraumodeconfiguration Router(Config)#quit Slectionnerladeuximeinterfacedusite3 Router(Config)#interfacef1/0 AttribueruneadresseIPl'interfacel'interfacef0/0 Router(Configif)#ip172.16.64.201255.255.255.240 Activerl'interface Router(Configif)#noshutdown Reveniraumodeprivilgi Router(Configif)#CTRL+Z Afficherlanouvelleconfiguration Router#showrunningconfig Reveniraumodeconfig Router#configt(tpourterminal) ActiverleroutageRIP Router(config)#Routerrip AjouterlessousrseauxphysiquementconnectsaurouteurSite3 Router(configrouter)#network172.16.64.32 Router(configrouter)#network172.16.64.192 Sauvegarderlanouvelleconfigurationpourleprochaindmarrage Router#copyrunningconfigstartupconfig
20102011FEDUCASARueduRhne1161204Genve

96

d. Testdelavaliditdelaconfigurationdesinterfacesdurouteur"Site3". A partir de n'importe quel site ou de n'importe quel poste on doit pouvoir atteindre "les interfaces du routeur Site3": Modeutilisateur Router> Passerdumodeutilisateuraumodeprivilgi Router>enable LancerdespaquetsICMPparlacommande"ping"surlesinterfacesdurouteurSite3: Router>ping172.16.64.34 Router>ping172.16.64.201 Lersultataffichdoittre5/5,signifiantleretourdetouslespaquetsenvoysparlasource,doncladestination atjointeetarpondusanspertedepaquets. 5 Vous grez un rseau compos de 2 segments relis par un routeur qui offre galement une connexion versInternet.Cerouteursupportel'adressageCIDR. LesegmentAcomporte400htesetlesegmentseulement200. VotreFournisseurnepeutvousproposerque4adressesdeclasseC. Proposerunadressageadaptcecasdefigure.Dtaillervoscalculsetargumentezvoschoix. Pour rsoudre ce type de problme, on pourra envisager de recourir l'adressage CIDR (Classless Internet DomainRouting). Cetyped'adressageconsisteliminerlanotiondeclassesd'adressesetd'utiliserlaplaceleconceptdeprfixe rseau. L'exemplesuivantillustrelefonctionnementdemcanisme: SoientlesquatreadressessuivantesdeclasseC,demasqueconventionnel255.255.255.0 192.168.0.0 192.168.1.0 192.168.2.0 192.168.3.0 Laconversiondecesadressesenbinairesnousfournitlessuitessuivantes: 192.168.0.011000000.10101000.00000000.0 192.168.1.011000000.10101000.00000001.0 192.168.2.011000000.10101000.00000010.0 192.168.3.011000000.10101000.00000011.0 Onconstatequeces4adressespossdentunepartiecommunesurlestroispremiersoctets(partiesmentionnes engras).Cettepartiereprsenteuneagrgatdelaroute. Donc, les hostid seront cods sur 10 bits au lieu de 8 bits, ce qui nous permettra d'adresser les 400 machines du sousrseaudemand. Informationsfinales AdresseID:192.168.0.0(lapluspetiteadresse) Routeagrge:192.168.0.0/22.
20102011FEDUCASARueduRhne1161204Genve

97

PartieII
1 EcrireunscriptSQLquipermetderaliserlacrationdecettebase. CREATETABLEClient( idclientNUMBER(5), nomVARCHAR2(15), prenomVARCHAR2(15), CONSTRAINTcl_pkPRIMARYKEY(idclient)); CREATETABLECommande( idcommandeNUMBER(7)notnull, date_commandeDATE, idclientNUMBER(5), CONSTRAINTcde_fkFOREIGNKEY(idclient)REFERENCESclient(idclient), CONSTRAINTcde_pkPRIMARYKEY(idcommande)); CREATETABLEProduit( idproduitNUMBER(5), prixunitaireNUMBER(7,2), nomVARCHAR2(15), numstockNUMBER(5), constraintpr_pkPRIMARYKEY(idproduit)); CREATETABLEligne_commande( idcommandeNUMBER(5), idproduitNUMBER(5), quantiteNUMBER(7), CONSTRAINTlc_pkPRIMARYKEY(idcommande,idproduit), CONSTRAINTlc_fk_1FOREIGNKEY(idcommande)REFERENCEScommande(idcommande), CONSTRAINTlc_fk_2REFERENCESproduit(idproduit)); 2 Ecrireuneprocdurequipermetd'insrerunclientpassparamtre. CREATEORREPLACEPROCEDUREP_Insert_Clt(V_nomclient.nom%type,V_prenom client.prenom%type) AS V_id_clientclient.Id_client%type; BEGIN SELECTmax(id_client)intoV_id_clientfromclient; INSERTINTOCLIENT(id_client,nom,prenom) VALUES(V_id_client+1,V_nom,V_prenom); END;

20102011FEDUCASARueduRhne1161204Genve

98

3 Ecrire une procdure qui permet d'insrer une commande passe en paramtre avec le numro du clientcorrespondant. CREATEORREPLACEprocedureprocedure_insert_commande(V_id_client COMMANDE.Id_client%type,V_date_commande COMMANDE.date_commande%type)ASV_id_commandecommande.id_commande%type; BEGIN SELECTmax(id_commande)intoV_id_commandefromcommande; INSERTINTOCOMMANDE(id_commande,id_client,date_commande) VALUES(V_id_commande+1,V_id_client,V_date_commande); END; 4 Ecrireunefonctionquipermetderetournerlemontanttotald'unecommande,dontl'identificateurest passenparamtre.OnappliquerauntauxTVAde19.6%. CREATEORREPLACEFUNCTIONprix_total(v_IDCOMCOMMANDE.ID_COMMANDE%type) AS num_cdeVARCHAR(10); montantFLOAT; BEGIN SELECTlc.id_commande,sum(prixunitaire*quantite) INTOnum_cde,montant FROMligne_commandelc,Produitp WHERElc.idcommande=v_IDCOM ANDlc.idproduit=p.idproduit montant:=montant*1.196; returnmontant; END;

20102011FEDUCASARueduRhne1161204Genve

99

5 Ecrireuntriggerlielatableligne_commande,quiraliselestchessuivantes: En cas d'insertion, il retire de la colonne numstock de la table produit, la quantit insre dans ligne_commande. En cas de mise jour de la colonne quantit, si la nouvelle quantit est suprieure l'ancienne, il calcule la diffrence entre la nouvelle quantit et l'ancienne, puis retire cette diffrence de la valeur de la colonne numstock de la table produit. Sinon, il calcule la diffrence entre l'ancienne quantitmoinslanouvelleetrajoutecettediffrencelacolonnenumstockdelatableproduit. En cas de suppression, la valeur de l'ancienne quantit est rajoute la colonne numstock de la tableproduit. CREATETRIGGERUPDT_STOCK AFTERINSERTORUPDATEOFDELETE ONLIGNE_COMMANDE DECLARE diffNUMBER; BEGIN IFINSERTINGTHEN UPDATEPRODUIT SETPRODUIT.numstock=PRODUIT.numstockLIGNE_COMMANDE.quantite; IFUPDATINGTHEN IF:new.quantite>LIGNE_COMMANDE.quantite diff=:new.quantiteLIGNE_COMMANDE.quantite; UPDATEPRODUIT SETPRODUIT.numstock=PRODUIT.numstockdiff; IF:new.quantite<LIGNE_COMMANDE.quantite diff:=LIGNE_COMMANDE.quantite:new.quantite; UPDATEPRODUITSETPRODUIT.numstock=PRODUIT.numstock+diff; IFDELETINGTHEN UPDATEPRODUIT SETPRODUIT.numstock= PRODUIT.numstock+:old.LIGNE_COMMANDE.quantite; ENDIF; END;

20102011FEDUCASARueduRhne1161204Genve

100

Outilsetcomptencesutiliss:

Comptencesetoutilsabords
Administrationdesrseauxlocaux(LAN) CommutationetroutageCISCO UtilisationdusystmeIOS(InternetworkOperatingSystem)deCISCO UtilisationdusimulateurPacketTracerouNetSimdeBoson UtilisationduSGBDOracle LangagedeprogrammationPL/SQL LesprocduresstockessousOracle LDD,LMD,LID,LCD

20102011FEDUCASARueduRhne1161204Genve

101

CASN12:ADMINISTRATIONETMISEENUVREDESRESEAUX(CCNA)ETPROGRAMMATIONAUTOURDESBASESDEDONNEES

PartieI
Missions: 1 On vous demande de crer un nouveau dossier partag sur une partition NTFS pour les services comptabilit et finances de la socit X.SA de manire ce que tous les utilisateurs des 2 services puissentlire,touslesdocumentsquiysontplacs,qu'ilspuissentyajouterdesdocumentsetenfinque seul l'utilisateur qui a ajout un document puisse le modifier. Comment allezvous procder en suivant lesprconisationsMicrosoft? 2 DansuneinfrastructureActiveDirectory,expliquerladiffrenceentreunschmaetunannuaire. Indiquerl'endroitdestockageduschma Donnerlestapespermettantd'accderauschma.

PartieII
Dans le cadre de l'automatisation de l'administration des serveurs Microsoft et des serveurs Linux du sige de la filialedesUSA,l'administrateurrseauvousachargderaliseruncertainnombredescripts. Missions: 1 Ecriredefaonclaireetprciselesscriptssuivantsrelativementauxdeuxtypesdeserveurs. Lasynthseducahierdeschargeslaborrenfermeprincipalementlespointssuivants: a. ServeursMicrosoftServeurWindows2003/Windows2008 CreruncompteutilisateuretlerajouterungroupeouneOU. Crationde500comptesutilisateurs. Rechercherd'uncompteutilisateurdansActiveDirectory(AD). Copieruncompteordinateurdel'annuaireAD. Joindreuncompteordinateuraudomaine. b. ServeursLinux Creruncompteutilisateursanspasserparlacommandepasswd. Enregistrertouteslesrequtesdesuppressiondefichiersdanslefichier/var/log/supprimer.log,saufcelles excutesavecl'option"s". Crerunearchivecompressedurpertoirespcifi.

20102011FEDUCASARueduRhne1161204Genve

102

CASN12:ADMINISTRATIONETMISEENUVREDESRESEAUX(CCNA)ETPROGRAMMATIONAUTOURDESBASESDEDONNEES CORRIGE PartieI 1 On vous demande de crer un nouveau dossier partag sur une partition NTFS pour les services comptabilit et finances de la socit X.SA de manire ce que tous les utilisateurs des 2 services puissentlire,touslesdocumentsquiysontplacs,qu'ilspuissentyajouterdesdocumentsetenfinque seul l'utilisateur qui a ajout un document puisse le modifier. Comment allezvous procder en suivant lesprconisationsMicrosoft? Etapesdecration: Crationdetouslescomptes Crationde2groupesglobauxCOMPTAetFINANCE Affectationdescomptesdanslesdiffrentsgroupes Crationd'ungroupededomainelocalgrplocal Affectationdes2groupesglobauxdanslegroupededomainelocal Partagerledossieraveccommepermissiondepartagecontrletotaltoutlemonde Ajouter dans la liste ACL NTFS le groupe grplocal avec comme permission lecture et criture. (Prconisations AGLP) LegroupecrateurpropritaireestdanslalisteACLavectouslesdroitssursondocument

2 DansuneinfrastructureActiveDirectory,expliquerladiffrenceentreunschmaetunannuaire. Indiquerl'endroitdestockageduschma Donnerlestapespermettantd'accderauschma. Laoulesdiffrence(s)entreunschmaetunannuairesersume(nt)danscequisuit: Annuaire: Lieudestockagerpartidetouteslesinformationsquicaractrisentl'ensembledesobjetspouvantexisterdansle rseau de l'entreprise. L'administration centralise de l'annuaire offre les moyens de disposer des services capablesderendrecesinformationsutilisablesparlesutilisateursenfonctiondeleursdroitsetprivilges. Schma: Contient toutes les dfinitions de tous les objets de l'annuaire. Chaque nouvel objet cr est valid en fonction des contraintes imposes sur les diffrents attributs manipuls avant d'tre crit dans l'annuaire. Le schma contientunedescriptiondetouteslesclassesetattributsdesobjetsutilisables. Le schma est stock sur le contrleur de domaine assurant le rle de : CONTROLEUR DE SCHEMA sachant qu'il y enacinqrlesautotal: Matred'attributiondesnomsdedomaines Contrleurdeschma MatreRID(AttributiondesSID) Matred'infrastructure EmulateurCPD(Assurelacompatibilitaveclesautresversions).

20102011FEDUCASARueduRhne1161204Genve

103

Lestapesd'accsauschmasont: EnregistrementdelaDLLschmmgmt.dll C:\>regsvr32schmmgmt.dll Lancerlacrationd'uneconsoleMMC(MicrosoftManagementConsole) Ajouterlecomposantenfichable:SchmaActiveDirectory Naviguerdansl'arborescenceduschma

PartieII
1 Ecriredefaonclaireetprciselesscriptssuivantsrelativementauxdeuxtypesdeserveurs. a. ServeursMicrosoftServeurWindows2003/Windows2008 CreruncompteutilisateuretlerajouterungroupeouneOU. SetobjDomain=GetObject("LDAP://dc=fabrikam,dc=com") SetobjOU=objDomain.Create("organizationalUnit","ou=Management") objOU.SetInfo SetobjOU=GetObject("LDAP://OU=Management,dc=fabrikam,dc=com") SetobjUser=objOU.Create("User","cn=AckermanPilar") objUser.Put"sAMAccountName","AckermanPila" objUser.SetInfo SetobjOU=GetObject("LDAP://OU=Management,dc=fabrikam,dc=com") SetobjGroup=objOU.Create("Group","cn=atlusers") objGroup.Put"sAMAccountName","atlusers" objGroup.SetInfo objGroup.AddobjUser.ADSPath Crationde500comptesutilisateurs. SetobjRootDSE=GetObject("LDAP://rootDSE") SetobjContainer=GetObject("LDAP://cn=Users,"&_ objRootDSE.Get("defaultNamingContext")) Fori=1To1000 SetobjLeaf=objContainer.Create("User","cn=UserNo"&i) objLeaf.Put"sAMAccountName","UserNo"&i objLeaf.SetInfo Next

WScript.Echo"1000Userscreated." Rechercherd'uncompteutilisateurdansActiveDirectory(AD). ConstADS_SCOPE_SUBTREE=2 SetobjConnection=CreateObject("ADODB.Connection") SetobjCommand=CreateObject("ADODB.Command") objConnection.Provider="ADsDSOObject"


20102011FEDUCASARueduRhne1161204Genve

104

objConnection.Open"ActiveDirectoryProvider" SetobjCommand.ActiveConnection=objConnection objCommand.CommandText=_ "SelectName,Location,operatingSystemVersionfrom"&_ "'LDAP://DC=fabrikam,DC=com'whereobjectClass='computer'"&_ "andoperatingSystemVersion='5.1(3600)'" objCommand.Properties("PageSize")=1000 objCommand.Properties("Searchscope")=ADS_SCOPE_SUBTREE SetobjRecordSet=objCommand.Execute objRecordSet.MoveFirst DoUntilobjRecordSet.EOF Wscript.Echo"ComputerName:"&objRecordSet.Fields("Name").Value Wscript.Echo"Location:"&objRecordSet.Fields("Location").Value objRecordSet.MoveNext Loop Copieruncompteordinateurdel'annuaireAD. SetobjCompt=_ GetObject("LDAP://cn=Computers,dc=NA,dc=fabrikam,dc=com") SetobjComptCopy=objCompt.Create("computer","cn=SEASQL01") objComptCopy.Put"sAMAccountName","seasql01" objComptCopy.SetInfo SetobjComptTemplate=GetObject_ ("LDAP://cn=SEAPM01,cn=Computers,dc=NA,dc=fabrikam,dc=com") arrAttributes=Array("description","location") ForEachstrAttribinarrAttributes strValue=objComptTemplate.Get(strAttrib) objComptCopy.PutstrAttrib,strValue Next objComptCopy.SetInfo b. ServeursLinux Creruncompteutilisateursanspasserparlacommandepasswd. #!/bin/sh #Ajouteunnouvelutilisateurausystme pwfile="/etc/passwd" shadowfile="/etc/shadow" gfile="/etc/group" hdir="/home" if["$(whoami)"!="root"];then echo"Erreur:ilfauttrerootpourexcutercettecommande.">&2 exit1 fi
20102011FEDUCASARueduRhne1161204Genve

105

echo"Ajoutd'uncompteutilisateursur$(hostname)" echon"login:";readlogin #Remplacez5000parlavaleurmaximaledesidentifiants #utilisateursurvotresystme.Certainscomptessystmeoccupenten #effetlesuid65535etc. uid="$(awkF:'{if(big<$3&&$3<5000)big=$3}END{printbig+1}' $pwfile)" homedir=$hdir/$login #Onattribuechaqueutilisateursonpropregroupe,doncgid=uid gid=$uid echon"nomcomplet:";readfullname echon"shell:";readshell echo"Miseenplaceducompte$loginpour$fullname..." echo${login}:x:${uid}:${gid}:${fullname}:${homedir}:$shell>>$pwfile echo${login}:*:11647:0:99999:7:::>>$shadowfile echo"${login}:x:${gid}:$login">>$gfile #Miseenplaced'unmotdepasseinitial passwd$login exit0 Enregistrertouteslesrequtesdesuppressiondefichiersdanslefichier/var/log/supprimer.log,saufcelles excutesavecl'option"s". #!/bin/sh #Scriptquiconsignetouteslesrequtesdesuppressiondefichierssauf #Enprsencedel'options supprimer="/var/log/supprimer.log" if[$#eq0];then echo"Syntaxe:$0[s]listedefichiersouderpertoires">&2 exit1 fi if["$1"="s"];then #requted'oprationsilencieuse...onneconsignerien shift else echo"$(date):${USER}:$@">>$supprimer fi /bin/rm"$@" exit0

20102011FEDUCASARueduRhne1161204Genve

106

Crerunearchivecompressedurpertoirespcifi. #!/bin/sh #Scriptquicreunearchivecompactedurpertoirespcifi. maxarchivedir=10#taille,enblocs,d'ungrosrpertoire compress=gzip#remplacerparvotreapplicationde #compactageprfre progname=$(basename$0) if[$#eq0];then echo"Syntaxe:$progname<rpertoire>">&2;exit1 fi if[!d$1];then echo"${progname}:jenetrouvepaslerpertoirearchiver$1.">&2 exit1 fi if["$(basename$1)"!="$1"o"$1"="."];then echo"${progname}:vousdevezspcifierunsousrpertoire">&2 exit1 fi if[!w.];then echo"${progname}:jenepeuxcrirelefichierd'archive">&2 echo"danslerpertoirecourant.">&2 exit1 fi dirsize="$(dus$1|awk'{print$1}')" if[$dirsizegt$maxarchivedir];then echon"Avertissement:lerpertoire$1fait$dirsizeblocs.Continuer?[n]" readanswer answer="$(echo$answer|tr'[:upper:]''[:lower:]'|cutc1)" if["$answer"!="o"];then echo"${progname}:annulationdel'archivagedurpertoire$1.">&2 exit0 fi fi archivename="$(echo$1|sed's/$/.tgz/')" iftarcf$1|$compress>$archivename;then echo"Rpertoire$1archivsouslenom$archivename" else echo"Avertissement:taraeudesproblmesenarchivant$1" fi exit0

20102011FEDUCASARueduRhne1161204Genve

107

Outilsetcomptencesutiliss:

Comptencesetoutilsabords
AdministrationWindows2003ou2008 ScriptingsousWindows UtilisationdeVBScriptetWSH Automatisationdestchesd'administration Administationdel'annuaireActiveDirectory

20102011FEDUCASARueduRhne1161204Genve

108