Tera- Magazine Enrich your knowledge
N° 06 | 29 Janvier 2013
Spécial
Découverte de Linux Maîtriser la CLI Pourquoi linux ?
L'ÉPUISEMENT DES ADRESSES IPV4 AU MAROC
Pensez en assembleur Partie 2 : Votre première routine
HTML 5 ET L'ÉVOLUTION DU WEB
l'histoire de GNU/Linux
Faites le bon choix de votre système RAID
Une Discussion autour Linux avec Mr Mohammed radi
le Hacking génère de l'argent
TOR: le proxy de la liberté
Les nouveautés High-Tech du CES 2013
re e s liv z e i d Qu gnez
s
Ga
Devenir Sysadmin : DNS/DHCP
Les éditions précédentes de Tera-magazine Numéro 4
Numéro 5
Numéro 3
Numéro 2
Numéro 1
sont Disponibles à : www.teramagazine.tk
www.teramagazine.tk | numéro 6
2
Janvier 2013 | ÉDITION 6 | TeraMagazine
À la découverte de linux
P5-8
Actualité informatique
UN DOSSIER SPÉCIAL SUR GNU/LINUX.
P11
L'épuisement des adresses IPv4 au Maroc
Contenu
| P25
P13 ADblock P14
Mettre fin au facebook tracking
P15
Créer vos formulaires en ligne
Tera-découverte P17
Découverte de l’HTML 5
P21
Le proxy oignon TOR
P44
Quelle solution : RAID vous convient?
P53
Le hacking génére de l'argent
Pensez en Assembleur PARTIE 2 :Écriture de routine en language assembleur.
Tera Dossier P25
L'histoire du système Gnu/Linux
P35
Pourquoi Adopter un Pinguin(Linux)
P39
Maitriser l’utilisation de la CLI #
| P57
Système RAID Faire le bon choix du
suite .. P57
Pensez en Assembleur : Comprenez mieux votre CPU
P63
Devenir un Sysadmin
P77
Discussion autour linux
P81
Calculatrice WPF en 10 minutes
P82
ُ نظــام هالل لينكس
P83
Gmail tricks
P44
P85 Quize
Devenir SysAdmin
LE Proxy TOR l'annonymat sur Internet
Partie 3 : configuration du DNS/DHCP
| P21 | P63
3
www.teramagazine.tk | numéro 6
* O R T IN
//
welcome
//////////////
////
//////////////
//////////////
//////////// //////////////
//////////
//////////////
//////////// //////////////
N
ous sommes heureux de publier le sixième Numéro de la revue informatique Teramagazine. Notre dernier numéro a suscité beaucoup d'intérêt de la part des lecteurs, que nous remercions pour leurs avis et leurs conseils. Nous avons doublé nous efforts afin de sortir ce numéro et pour réviser les numéros précédents que nous avons publié en 2012. Nous souhaitons qu'en 2013 de nouveaux plumes rejoignent notre revue et que le contenu offert s'améliore pour vous satisfaire.
3 1 20
Tera-magazine est la première revue numérique, mensuelle qui s’adresse aux passionnés du monde informatique au Maroc. Il s’agit d’une initiative bénévole pour créer un moyen de partage des connaissances et des expériences entre informaticiens. Loin des slogans de marketing ou des pubs, nous vous assurons que nous tendons nos mains vers vous pour collaborer et aller en avant pour mettre en disposition du lecteur un produit de qualité. Alors, n’hésitez surtout pas, chers lecteurs à nous contacter pour vous exprimer.
Nous comptons bien sur votre réactivité pour améliorer le contenu offert.
Enfin, nous comptons sur votre réactivité pour améliorer le contenu offert.
s u ct
a t n o c g
e azin
L’équipe de rédaction
ma
m tea
m l.co i a m @g k.com/ t e c u a t o ev Conil : tera.r :facebo Ma ebook ue Fac .maga terarev goo.gl/ tera tter :@ http:// Twi tube: you F0 486 8 3 Y 0 zw 13
r ano er H b R a S BAD LAJ BIE L E B I RA M A L AE SOU SM R A aoui A S AN apha d st ji . Mu Ran ssa DE ouria khe i A r M a I T ff ass I R: Ja Nah BAGU GNE I www.teramagazine.tk | numéro 6 S S DE ILYA INE Z A G MA
: Tel
06
4
//////////////////
//////////////////
ue q i t a m r o f n i é t i l Actutua
News
High-Tech
Ubuntu Sur mobile
U
buntu, l'une des plus célèbres distributions les appareils, assurant que le système sera à la Linux, aura une présence sur terminaux fois compatible avec les architectures ARM, qui mobiles. Un nouvel entrant dans le monde dominent sur le marché mobile, et les architecmobile ou Android représentait 75 % des ventes tures x86 des PC. Ubuntu se veut désormais plus au troisième trimestre 2012, contre 15 % pour qu'un simple smartphone : en iOs d'Apple. se connectant à un dock, Le groupe Canonical, les grandes lignes du sys- à un écran d'ordinatème d'exploitation, qui devrait être disponible teur et à un clavier, fin 2013 ou début 2014. Pour sa présentation Pour Canonical mise sa présentation, Canonical a utilisé un Googlephone, qui aussi sur l'interoutilise initialement le syspérabilité entre tème d'exploitation fondé sur Linux, Android. les appareils La version mobile d'Ubuntu veut d'abord se distinguer de la concurrence, le smartphone se en convainquant à la fois les détenteurs de transforme en unité terminaux récents, tout comme ceux disposant centrale d'ordinateur. d'appareils plus anciens avec des capacités tech- Le groupe Canonical assure niques moindres. Cette volonté apparaît notam- enfin que l'utilisateur disposera de nombreuses ment dans l'interface qui a été dévoilée. applications mobiles pour bien attirer les utilisaCanonical mise aussi sur l'interopérabilité entre teurs.
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
Langage C# & objectiv-c champions de l'année 2012
U
ne nouvelle année commence et c’est le moment de ressortir les langages de programmation qui se sont mieux distingués au cours de l’année 2012, par leur indice de popularité. objectvc sacré langage de l'année 2012 par tiobe, tandis que l'index PYPL (popularity of programming language) couronne C# comme étant le langage le plus populaire. Selon Tiobe, le langage qui enregistre la plus forte progression au cours de l’année 2012 est Objective-C, qui est sacré langage de l’année pour la deuxième fois consécutive. Pour rappel, l’indice Tiobe est basé sur les pages disponibles en ligne pour un langage de programmation, alors que la méthode PYPL (qualifiée de plus avancée) compte le nombre de personnes recherchant activement ces pages. Même si Java est encore le langage de programmation le plus utilisé dans le monde, la popularité du C# et l'objectiv-c augmente.
5
www.teramagazine.tk | numéro 6
USB d'un TERAoctet Kingston annonce une clé USB 1 Terabyte
K
ingston annoncé récemment la sortie prochaine de sa clé USB DataTraveler HyperX Predator 3.0. Unique dans son genre elle offre un considérable espace de stockage de 1 To, soit 1000 gigabits. À venir courant 2013, ce qui en fait la plus grande clé USB disponible sur le marché.
Predator 3.0 offrira une vitesse lecture/écriture de 240MB/s et 160MB/s, respectivement. Kingston a lancé auparavant une version de 512 GB dans les marchés a un prix de $1,750, le prix de la nouvelle USB 1 TB sera annoncé prochainement. Kingston propose aussi des USB à 32 GB et 64 GB avec une vitesse en écriture et lecture 150MB/s et 70MB/s.
Le DataTraveler HyperX //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
le Maroc est victime de l'opération d'espionnage l'octobre rouge, découverte par Kaspersky
U
ne nouvelle opération d’espionnage mondial a été démasquée par Kaspiysk Lab. Cette opération de grande envergure a été nommée «Red october, un nom inspiré du nom d’un roman d’espionnage. Cette opération a été menée pour se procurer des informations sensibles de la part des gouvernements, centre scientifique de recherches, etc. elle cible plusieurs pays parmi lesquels on trouve le Maroc. Cette opération se base sur l’infection des victimes par des malwares en utilisant des vulnérabilités bien connues dans les outils office de Windows
ou des documents PDF. Qui est derrière cette opération ? la question reste sans réponse, peut être des pays (chine, usa…). Activez la mise à jour de votre Windows. http://www.securelist.com/ en/analysis/204792262/Red_October_Diplomatic_ Cyber_Attacks_Investigation
Facebook: FaceVoip, message vocal
F
acebook test actuellement au Canada deux nouveaux services. Il s’agit de l’envoie des messages vocaux et du VOIP. messages Facebook permettra d’envoyer à l’aide de son Messenger sur IOS ou android, un message vocal d’une durée d’une minute.
FaceVOIP Pour la VOIP, il vise à permettre la communication entre les utilisateurs par des appels voip par son programme Facebook Messenger. www.teramagazine.tk | numéro 6
6
2013
LAS-VEGAS
Les évènements high-tech : Samsun yum, le Project Shield et l’Ultra HD sont les technologies qui ont monopolisé les attentions au CES 2013.
L'Ultra Haute Définition arrive en force sur les TV CES a connu la présentation du grand écran ultra haute définition du monde par Samsung. L’ultra HD ou la 4K offre une résolution 4 fois la définition full HD. Elle procure des images extrêmement définies adaptées à des écrans de grandes tailles. On peut utiliser la 4k sur des écrans 84 pouces. Une révolution du marché des TV, mais les prix sont encore chers environ 15K euro.
DUAL view Regarder 2 programmes différents sur la même télé Le dual view une technologie qui permet sur la même Télé de suivre deux programmes différents en même temps. Une technologie dérivée du 3D. En utilisant deux paires de lunettes. Chacun peut voir l’émission qu’il veut regarder.
L’impression 3d Les imprimantes 3d connaissent des évolutions remarquables. Au niveau de matières utilisées pour créer des objets 3, on utilise le PLA un nouveau matériau plus flexible au lieu du plastic ABS. Les nouveaux modèles sont plus silencieux, plus rapide et plus précis. Ces2013 a connu la présentation de la 4eme génération des imprimantes 3d Makerbot Nous rappelons que les impriments 3D transforme vos objets 3d depuis votre ordinateur en objet 3d réel construis couche par couche. Ces imprimantes peuvent être très utiles pour les domaines d’ingénieurs mécanique de design, etc. pour réaliser des maquettes 3d.
7
www.teramagazine.tk | numéro 6
Nvidia lance le Tegra 4 et le projet shield L'un des importants projets exposés en CES est le projet shield de NVIDIA. Il s'agit d'une console de jeu utilisant le dernier processeur Tegra4. Cette introduction du nividia le grand producteur des cartes graphiques et tout à fait logique. Le processeur Tegra4 est un monstre dans le monde des appareils mobiles. Il est constitué de 5 cœurs dont 4 sont actifs et tournant à 1.9 GHz et le 5eme tourne à une vitesse inferieur pour minimiser la consommation d'énergie Cette console de jeu est tournée sur Android (jelly bean 4.2) avec un écran de 5 pouces et une mannette semblable à celle du Xbox. Cette console peut faire tourner des jeux comme : Need for Speed, Call of Duty ,etc. Le projet shield : http://shield.nvidia.com/
L'ecran flexible de Samsung Samsung Youm, l’écran souple pour Smartphones et tablettes Samsung a présenté son très attendu écran souple ou flexible au CES 2013. Baptisé Samsung Youm, cet écran OLED propose un affichage d’une densité de 300 PPI(pixel par inch) équivalent d‘une définition de 2560 x 1600 pixels sur du 10 pouces. Le plus important qu’il est vendu comme "incassable".
Le plus grand Smartphone du monde chez Huawei huwawei se démarque par son Smartphone « Huawei Ascend Mate » qui propose un écran de 6,1 pouces, dont la résolution est de 1280 x 720. Il est épaulé par un processeur quad-core de 1,5Ghz, un appareil photo 8 Méga pixels, une caméra frontale et une batterie à rechargement rapide qui promet jusqu'à deux jours d'utilisation moyenne sur une seule charge. Ce Smartphone Android mesure 6,5 mm d'épaisseur à son point le plus mince. Il sera disponible en février.
Chrysler-Velocity Chrysler a présenté une voiture futur High Tech qui dispose du système intelligent Sprint Velocity. Sprint Velocity offre une Platform opensource complète qui peut être utilisée par les constructeurs automobiles pour intégrer des services intelligents à leurs produits. Il s’agit d’un système qui dépend entièrement du Smartphone pour la communication et les informations, il essaie de l’exploiter au lieu de le remplacer. Ce système permet un ensemble de services : Délivrer en son les actualités ou les informations que vous désirez, lire ou envoyer des messages , naviguer sur internet , etc .. Création d'un réseau WIFI à la demande. le ervice “in-car payment”. 90% des nouvelles voitures | numéro seront équipés parwww.teramagazine.tk ce type de Platform en 62020.8
S L I A M
s w e N & s u ç Re
Comment puis-je connecter ma machine virtuelle à Internet, sachant que j’utilise un modem Internet, Merci Vous devez changer la confiTM guration de la carte réseau de
votre machine virtuelle. Clique droit sur la machine Virtuelle => paramètres=>adaptateur réseau et choisissez la configuration NAT. Si tu es dans un réseau local tu peux utiliser bridged.
possible.
O B IN
ails reçus.
ns à tous les m o d n o p ré s u o n N'hésitez Pas, os questions. V à s n o d n o p Nous ré Problèmes. s o V s n o lv o s Nous ré et conseils. s e u rq a m re s s vo Nous écouton
Tera-News
J’ai lu dans l'un de vos article que vous utilisez Opensuse. Je veux savoir une chose SVP. J’arrive pas à installer en ligne mes programmes avec yast ou zypper. CHAINE YOUTUBE Que dois je Nous avons mis en place une chaine youtube. Cette chaine est en début vous y trouvez les vidéos qui sont en relations avec les articles faire. Vérifier les dépôts TM actuelle en utilisant : zypper depot --uri
publiés ou des vidéos que nous proposons sous forme de tutoriels.
www.youtube.com/terarevue
Pour listez les dépôts actuels. Pour ajouter des dépôts :
sign-in » et suivez les instructions.
WPF
zypper ar url_de_depot Pour les url des dépôts visitez ce liens : http://en.opensuse.org/Package_ repositories
J'ai lu l’article qui parle sur les WPFS et je veux SVP, le code du projet que vous avez crée. Le code source est disponible
TM en : http://bit.ly/VKi6lD.
Vous devez mettre en fin de chaque articles les références que vous avez utilisé. Vous avez raison, nous ne le faisons pas pour tous les articles. Il s’agit simplement de notre point de vue nous voulons pas embrouiller le lecteur avec une liste de références pour chaque article . Nous tachons à les indiquer dorénavant dans la mesure de
TM
9
Mon play store sur Android ne marche plus je peux plus télécharger des programmes. Si vous avez un code d'er-
Peut-on ouvrir plusieurs gmail sur le même navigateur? C’est possible, vous pouvez TM activez cette option. Rendez
vous à l’adresse google.com/ accounts et cliquez sur « Multiple
www.teramagazine.tk | numéro 6
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
TM reur, vous pouvez chercher
sur Google sinon veuillez effacer le cache de votre application et ressayer. Si le problème persiste, désinstallez la dernière mise à jour en accédant au paramètres(applications) de votre android.
terarevue@
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
OX
s
SVP, pourriez vous me conseiller un Antivirus pour android. Vous pouvez insTM tallez AVG de googleplay, il est gratuit. Cependant, la protection des antivirus sous android n'est pas garantie. Vous pouvez aussi voir Avast.
Mon play store sur Android ne marche plus je peux plus télécharger des programmes. Si vous avez un code TM d'erreur vous pouvez
chercher sur google sinon veuillez effacer le cache de votre application et ressayer. Si le problème persiste
keep in touch
Votre site web n'est pas accessible erreur 404. Vous pouvez visiter notre page Facebook ou notre blog sur blogger. Laisser votre adresse Email pour recevoir les nouveaux numéros .
TM
Quelle document vous me conseiller à lire pour bien performer mes compétences en matière d'administration linux Voici une collection
TM de livre à lire : •
Linux Bible 2010 Edition
•
Linux Complete Command Reference
•
Pro Linux System Administration
Les version numériques sont disponibles sur Internet.
Comme vous le savez les opérateurs impose des seuils de téléchargement pour les abonnées des offres mobiles comment puis je suivre ma consommation de bande passante android.
Où puis je trou- TM Avec un appareil rooté c'est faisable. vez les éditions Vous pouvez instalprécédentes ler LBE privacy Guard. Il de votre maga- vous donnes des stazine? tistiques journalier et il www.teramagazine.tk
vous alerte si vous atteignez le seuil que vous spécifier. Il vous offre aussi un parfeu gratuit.
Laissez-nous par la même occasion votre Email pour recevoir les futures éditions.
Dans l'article précédent d'administra-
Visitez notre site TM web :
@gmail.com
PAGE FACEBOOK Pour suivre l’actualité dans le monde informatique abonnez vous à notre page sur facebook. Vous pouvez nous laisser vos commentaires ou vous sugéstions pour les prochains numéros
WWW.facebook.com/tera.maga TM Malheureusement tion système non, raspberry est vous parler de basé sur l'architecture redhat s'agit t-il ARM non supporté par Windows sauf pour sa de redhat ancienne version dernière génération (Windows 8). ou de RHEL. Peut on faire TM Il s'agit de tous système basé un partenariat sur Redhat fedora, avec votre reRHEL,Centos.. vue? J'ai relevé une Avec plaisir, toute erreur dans TM proposition de le schéma du partenariat est la bienvenue que ça soit réseau car le ip avec une personne , un *.22 est utilisé établissement, un club deux fois. etc.. TM
Merci beaucoup pour la remarque l'erreur a été corrigé e. l'ip du client est *.2 et celui du routeur ADSL.
Soyez plus généreux en matière des prix proposés pour le Quize.
J'ai lu l'article Les prix sont pour qui parle de TM nous un e charge l'émulation et supplémentaire de raspberry. puisque nous ne dispoJe veux savoir sons d'aucun sponsor. peut on utilisez alors 7med lah :) 3ala li windows sur kain. raspberry? How TO Do?
N
ous remercions nos lecteurs pour leurs encouragements et pour leurs reproches. Pour participer au MailBox envoyez votre mail à :
tera.revue@gmail.com
ou laissez un message sur notre site web :
www.teramagazine.tk
Nous sommes heureux d’accueillir vos avis, vos propositions de sujets. www.teramagazine.tk | numéro 6
10
///////////////////////////////////////////////////////////////////////////////////////////////////////
L'ÉPUISEMENT DES ADRESSES IPV4 AU MAROC ▶DOIT-ON IL FAIRE UNE TRANSITION VERS L’IP V6?
▶IPV4,V LE PÉTROLE D'INTERNET S'ÉPUISE. PAR : OSSAMA DYANI
IANA, RIR afrinic IANA est une organisation dont le rôle est la gestion de l'espace d'adressage IP d'Internet. L'IANA est une composante de l'ICANN, l'autorité suprême de régulation de l'internet. L'IANA a découpé l'espace d'adressage IPv4 en 256 blocs /8. Chacun de ces blocs est libre, réservé, assigné dans le passé ou alloué à un registre Internet régional (RIR). RIR (de l'anglais Regional Internet Registry) acronyme pour registre Internet régional est un organisme qui alloue les blocs d'adresses IP (adressage IPv4, IPv6) et des numéros d'Autonomous System dans sa zone géographique. Il existe aujourd'hui cinq RIR dont AFrinic est le registre africain.
A
u Maroc comme partout dans le monde, Le stock des adresses IPv4 disponibles s'épuise. Les ips qui nous restent pourraient permettre de ne tenir que jusqu'à la fin de cette année. Il sera donc de plus en plus difficile de créer de nouvelles connexions à Internet. La solution ? Passer à l’alternative IPv6 pour que l’Internet continue de fonctionner. Mais la transition n'est pas si facile.
CAUSES DE LA PÉNURIE La croissance du nombre d'utilisateurs d'Internet, notamment grâce à l’évolution des réseaux mobile 3G, s'accompagnent d'un épuisement des adresses IPv4, c'est-à-dire de la saturation progressive de la quantité d'adresses IPv4 publiques disponibles. La saturation menace la croissance du réseau Internet. En février 2011, la réserve de blocs libres Indicateur de l'épuisement d'IPV4 (RIR)
Pour IPv6, l'IANA assigne des blocs de taille /12 à 13 aux RIR qui prépare les FAI à migrer vers IPV6.
11 Fig2.: compteurs disponible à intercore.com
d'adresses publiques IPv4 de l'Internet Assigned Numbers Authority (IANA) est arrivée à épuisement tandis que le stock du fournisseur régional en afrique Fig.1 : Types d'accès Internet au Maroc en2011 "Afrinic " s'épuisera en (232)) de numéros. En 27/07/2013, selon l'indice Intercore(Fig.2), ce qui outre, Certaines adresses signifie que le Maroc ne ne sont cependant pas pourra plus demander des assignables à des ordinabloques d’IPs publiques. teurs parce qu'elles sont il doit donc gérer ses "la cause principale stocks actuels pour ce problème réside d éviter l’épuisement immédiat et mener en la capacité d'adressage li parallèle une migratée de l’IPV4" tion progressive de l’IPv4 à l'IPv6. Rappelons le que la réservées à des usages cause principale de ce pro- particuliers (comme les blème réside dans la capa- adresses de groupe multicité d'adressage limitée de cast ou le bloc 240.0.0.0/4 en notation CIDR), ce qui l’IPV4. Une adresse IP com- complique d’avantage la porte 32 bits sous la forme W.X.Y.Z, , avec chacune de ces lettres représentant des nombres entre 0 et 255 ce qui permet de créer jusqu'à situation. Sous IPv6,la vie est en 4 milliards (4 294 967 296 rose puisque le format Indicateur de l'épuisement d'IPV4 d'une adresse change : elle (IANA) fait maintenant 128 bits (donc un stock de 2 128 adresses, soit 295 fois plus qu'avec IPv4) on peut dire que nous aurons 5*10 28 adresse par personne sur la planète. L’adresse ipv6 se présente en 8 mots de
e de dans imi-
16 bits (4 hexadécimaux) séparés par le caractère « : ». La représentation du préfixe, reste elle, similaire à celle de la notation CIDR utilisée avec IPv4 . Il s'agit des fameux /24, /8.
CONTINUER OU FAIRE LA TRANSITION ? Le passage vers ipv6 n’est plus un choix mais une nécessité avec l’évolution vers la 4G. En fait la 4G nécessite une infrastructure IP "à plat" (pas de NAT), qui ne peut être accompli qu'avec IPv6. L'IPTV(Internet Protocol Television) est un élément clé de la 4G nécessite de multidiffusion entièrement fonctionnelle. Cela nécessite également IPv6. En plus de l’obligation : IPv6 est venu pour corriger les lacunes d'IPv4. Non seulement en adressage comme par exemple au niveau de la Sécurité avec IPsec .
TRANSITION: Pour remédier à cette situation, l’Agence nationale de réglementation des télécommunications (ANRT) a mené une étude en vue de l’élaboration d’une stratégie nationale pour le passage de l’IPV4 à l’IPV6. Un plan d’action doit voir le jour en collaboration avec les principaux acteurs à savoir les opérateurs télécoms et les fournisseurs d'accès à Internet pour accompagner les entreprises, les structures gouvernementales, etc. dans cette transition et encourager le déploiement du nouveau protocole et l'achat d'équipements et logiciels compatibles. Quand aux éditeurs et constructeurs, ils doivent évidemment implémenter l’IPv6 dans leurs produits. Malgré que la sonnette d'alarme a été tirée depuis des années, le protocole ipv6 tarde à se mettre en place. Pourtant, les entreprises vont être obligées à s'équiper
dans les plus brefs délais.
PROCESSUS DE TRANSITION Il existe des approches techniques pour réussir un déploiement en douceur d'IPv6 et pour faire face aux réticences existantes contre cette transition. La meilleure approche reste La mise en place de la technique de la double pile, ou IPv6 sera déployé en paral-
"Le passage vers ipv6 n’est plus un choix mais une nécessité avec l’évolution vers la 4G. " lèle avec le réseau IPv4 existant. Donc deux réseaux logiques à gérer sur une même infrastructure physique. Dans le cas ou le fournisseur d'accès à Internet fournit le service IPv6.
CONCLUSION Au Maroc l’utilisation d’IPV6 est très faible et se limite à des cas précis comme c’est le cas pour le réseau universitaire MARWAN. Le retard de déploiement s'explique non seulement par les coûts mais aussi par l’hésitation des fournisseurs à adopter l'IPv6. Deux raisons à cela : l’étape de migration entre l'IPv4 et le nouveau protocole et surtout les problématiques de sécurité associés. Aujourd'hui, dans le monde les comptes IPv6 ne représentent que 0,05% du trafic Internet soit une toute petite partie du trafic global, bien qu'il soit en constante progression. Le temps est arrivé pour pousser en avant l'adoption du IPV6 et révolutionner l'Internet.
V: Visible: Number of Visible Prefixes for this country. A: Allocated: Number of Allocated Prefixes for this country (excludes returned prefixes). VP: Visible Percentage: Percentage of visible prefixes against global number of allocated prefixes.
IPV5 Le successeur naturel aurait pu logiquement être IP version 5, mais cette version a été attribuée à un protocole expérimental : ST (Internet Stream Protocol), défini pour la première fois en 1979 et qui n'a jamais atteint le grand public. Le successeur fut donc choisi sous le nom de IPv6.
MARWAN Moroccan Academic and Research Wide Area Network, plus connu sous l'acronyme de « MARWAN » est le réseau informatique national à but non lucratif, dédié à l'éducation, à la formation et à la recherche. Il a pour objectif de mettre en place une infrastructure d'information et de communication entre les établissements de formation et d'enseignement. Adresse IPV6 en réseau MARWANE : MARWAN (LIR/AfriNic) 2001:4310::/32 Plan d’adressage National : • /40 Pour les régions (256 Régions) • /44 Universités (16 universités/Région) • /48 Etablissements (16 Etablissements/ Université) Exemple : INPT 2001:4310:0141::/48 EMI 2001:4310:0142::/48 ENIM 2001:4310:0143::/48 »Pour plus de statéstiques sur l'IPV6 visitez : www.sixxs.net
12
Le plugin
ADBLOCK Naviguez sur internet sans dérangement.
Disponible pour Firefox et chrome
PROS/CONS
Adblock est l’extension Firefox la plus téléchargée. Elle a dépassé les 175 millions de téléchargements en novembre 2012.
O
ù que vous alliez sur Internet, la publicité vous suit et vous dérange. On comprend le besoin derrière (les sites bien sûr ont besoin de l’argent des annonceurs) mais parfois les pubs ont un contenu choquant ou n’est pas au goût et par conséquent on cherche à les bloquer. Si Vous êtes un antipublicité et vous cherchez actuellement à naviguer sur Internet en bloquant ces bannières de pub. Je vous présente la solution Adblock. Adblock (Actuellement Adblock plus) est une extension pour Mozilla
Firefox (ainsi que sa version mobile) et Google Chrome chargée de filtrer le contenu des pages web afin d’en bloquer certains éléments, en particulier les bannières de publicité. Il suffit simplement, par un clic droit sur une publicité, de sélectionner Adblock pour que la bannière ne soit plus téléchargée à l’avenir. Il est entièrement personnalisable, vous pouvez définir des filtres pour bloquer l’affichage des zones sur les sites visités. Ces filtres seront mémorisés et exécuté chaque fois que vous visitez le site. Fonctionnement Adblock Plus analyse les
requêtes HTTP en fonction de leurs adresses Internet et peut empêcher le chargement de IFrames, de scripts et de publicités (qui peuvent aussi bien être textuelles que visuelles). Avantages Une page dont la publicité est bloquée, télécharge une quantité d’informations moindre que la même page sans blocage de la pub, ce qui accélère son affichage. De mon côté j’utilise ce bijoux pour Bloquer la pub et les suggestions d’amis sur Facebook et les annonces sur YouTube. Note : Excellent
Adblock Fini le dérangement publicitaire.
How to install
01 installer le plugin Adblock Pour Chrome: Explorez le menu option, ajout d’extension et cherchez adblock. Ajoutez-le au navigateur. Pour Firefox : visitez http:// bit.ly/13hXTZb et installez ce plugin.
02 Utiliser Adblock Une fois installée vous allez remarquer l’apparition d’un nouveau menu, si vous cliquez sur le bouton droit. Vous pouvez désormais cliquer sur une zone de la page web et sélectionner bloquer cette pub.
S
topper
le tracking de Facebook
L
e débat sur la protection de la vie privée des utilisateurs de facebook ne finit pas. Si vous êtes des utilisateurs de Facebook, sachez qu’il conserve la trace (tracking) de l’endroit où vous êtes sur le web, même si vous êtes déconnectés. Dans cet article, je vous présente des solutions pour protéger votre vie privée. Note : Excellent
ADblock
Liste de confidentialité de Facebook pour Adblock Plus est parfait pour ceux d’entre vous qui ont déjà installé AdBlock Plus. Il suffit de télécharger l’abonnement et l’ajouter à AdBlock Plus pour bloquer les plugins et les scripts Facebook sur tout le web, y compris le button «j’aime» chaque fois que vous n’êtes pas sur Facebook. http://www.squirrelconspiracy.net/abp/facebook-privacy-list.html Note : Bon
Facebook Disconnect Un plugin pour Chrome, désactive les cookies lorsque vous avez fini d'utiliser Facebook. Ce qui signifie que vous aurez toujours la possibilité de se connecter à Facebook et à utiliser le site normalement, mais lorsque vous visitez un autre site ou une autre application, ce site ou service ne sera pas en mesure d'utiliser ces renseignements pour connaître votre identité Facebook. http://bit. ly/13i2875
Note : Bien
Disconnect.me Pour Chrome et Firefox est un nouveau plugin qui se limite pas à Facebook. Il prend la protection à un autre niveau et bloque les cookies de suivi de Facebook, Google, Twitter, Digg, et Yahoo, et empêche l'ensemble de ces services d'obtenir des informations ( l'historique des recherches..) depuis des sites tiers que vous pouvez visiter. https://disconnect.me/
Facebook a changé son processus de traitement des cookies. Cependant, ils sont toujours conservés après la déconnexion et ils n'expirent pas. La règle d’or reste : ne faites pas de confiance à ces sites. Protégez-vous. Pour comprendre comment Facebook vous track je vous conseille L’article suivant http:// bit.ly/RFu7L5.
5
W
outils pour créer des formulaires enligne facilement Formulaire, sondage, feedbacks.. sans coder une seule ligne
IL
y'a de nombreuses occasions où l’on a besoin de créer des formulaires pour récupérer des données ou des informations. Avec l’évolution des services en ligne vous n’avez plus besoin de coder vos formulaire. Nous allons découvrir quelques-unes des outils qui vous permettrons de répondre à ces besoins. Lisez la suite.
Wufoo
Notre préféré. Nous l’utilisons sur le site de notre revue pour collecter les données d’inscriptions des abonnées. Il s’agit de L’un des logiciels les plus répandus pour faire des enquêtes en ligne. wufoo.com
Eval&Go est la solution qui conviendra
à celles et ceux qui ont besoin de traiter un nombre important de données, avec une vraie approche « sondages » : tris croisés, représentations graphiques des résultats, listings de répondants, quotas.. www.evalandgo.com
Google Forms
Pour des formulaires permettant de récupérer rapidement des datas (mais pas de les analyser), choisissez Google Forms. drive.google.com
Heycrowd surveys une solution pour tout
type d’organisation qui souhaite diffuser un questionnaire auprès de leurs clients, collaborateurs, fournisseurs, afin de recueillir leurs feedbacks ou de réaliser une étude. http://heycrowd. com/surveys/creation
Kontest vous permet de générer simplement
et rapidement un concours ludique et interactif pour animer votre communauté ou recruter de nouveaux prospects. Diffusés sur Facebook, le Web et les mobiles, vos concours sont accessibles à tous et vous permettent d’augmenter votre notoriété. http:// kontestapp.com/fr/
15
www.teramagazine.tk | numéro 6
W
ufoo
Intégration des formulaires.
1. Créez votre enquête en
ligne : Utilisez les dizaines de types de questions disponibles, insérez des images et des vidéos, mettez votre logo et vos couleurs pour créer sur mesure votre questionnaire en ligne .
Formulaire crée par Wufoo
Exportation des rapports Wufoo
Statistiques de nombres des vues
2. Collectez les réponses:
Envoyez votre questionnaire par mail ou publiezle par lien internet , blog, facebook, twitter et bien plus. Obtenez vos réponses en temps réel !
3. Analysez vos résultats:
Générez en un clic un rapport au rendu ultra-professionnel. Modifiez-le et publiez-le sous de nombreux formats (en ligne, Word, PDF, Excel, Powerpoint). www.teramagazine.tk | numéro 6
16
JAnvuer 2013 | EDITION 6 | TeraMagazine
Découverte de l’HTML 5 Par : Nissrine hilali
S
i vous êtes intéressés par les technologies du web, vous avez probablement déjà entendu parler de l’HTML5 aux cours des dernières années. Vous avez Remarqués sans doute que Google présente parfois des animations sublimes ou des jeux sur sa page principale sans avoir besoin d’un plugin tiers, sachez alors que c’est en HTML5. Cet article va vous initier au HTML5 et vous présentera le contexte dans lequel évolue cette technologie. Nous penchons un peu sur deux nouvelles fonctionnalités qu'il apporte : l'intégration des fichiers multimédia (vidéo,audio) dans une page web et la possibilité de créer des jeux. HTML ou HTML5 ? L’Hypertext Markup Language, généralement
17
www.teramagazine.tk | numéro 6
abrégé HTML, est un langage simple de balisage qui permet d’écrire une page web. HTML d’inclure des ressources multimédias dont des images, des formulaires de saisie, etc. Il est souvent utilisé conjointement avec des langages de programmation (JavaScript, php,…) et des formats de présentation css. Avec l’évolution du web vers un web 2.0, l’évolution du HTML est devenue une nécessité et une obligation surtout que la dernière version de l’HTML(4) date de 1999. Donc L’HTML5 n’est pas un nouveau langage ce qui signifie que tout ce que vous savez faire en HTML reste valide. Cette évolution consiste en une multitude de nouvelles fonctionnalités qui ont été apportées au langage HTML ainsi qu’au JavaScript.
Le W3C et le WHATWG
Nous allons voir un aperçu de certaines de ces nouveautés apportées par l’HTML5, mais tout d’abord, commençons par s'intéresser aux gens qui travaillent dessus! L’HTML5 est donc le fruit des travaux du W3C et du WHATWG. W3C (world wide web consortium) étant l’organisation de standardisation du web (fin 1994) et le groupe WHATWG (Web Hypertext Application Technology Working Group) Pour standardiser l’existant (HTML 4.01 et XHTML
HTML 5 : oui ou non ?
• HTML5 n’est pas un nouveau langage • HTML5 n’est pas encore finalisé. Le W3C a récemment annoncé que l’HTML5 sera finalisé en 2014 et chaque nouvelle version tous les 2 ans. • Tous les navigateurs n’implémentent pas encore l’ensemble de la norme • La sécurité n’est pas encore garantie • On ne perd pas tous les acquis des prédécesseurs HTML • Code simplifié. • API enrichit (multimédia, géolocalisation ..) • Fonctions innovantes.
Les nouveautés HTML5
Un allégement du code Tout d’abord, certaines balises ont été simplifiées afin d’alléger le code. C’est le cas par exemple du Doctype (la première ligne indigeste que vous copiez/colliez en haut de chaque page HTML), de la balise <html>, de la balise <meta> de l’encodage des caractères, et des balises de feuilles de style et de script. Alors qu’auparavant on pouvait avoir ce genre de code : <!DOCTYPE html PUBLIC «-//W3C//DTD XHTML 1.0 Strict//EN» «http://www.w3.org/TR/xhtml1/ DTD/xhtml1-strict.dtd»> <html xmlns=»http://www.w3.org/1999/ xhtml» xml:lang=»fr» > <head> <meta http-equiv=»Content-Type» content=»text/html; charset=utf-8»> <link rel=»stylesheet» type=»text/css» href=»design.css» /> <script type=”text/javascript” src=script. js»></script> En HTML5, ça nous donne :
<!DOCTYPE html> <html lang=»fr»> <head> <meta charset=»utf-8» /> <link rel=»stylesheet» href=»design.css» /> <script src=»script.js»></script> </head> Nouvelles balises Je n’ai pas détaillé toutes les nouvelles balises, mais uniquement celles qui présentent un grand intérêt et qui sont — à peu près — facilement compréhensible. Les nouvelles balises sémantiques HTML5 offre une sémantique améliorée, ce qui signifie que votre site peut-être structuré plus facilement. Par exemple, au lieu d’utiliser une <div> avec un id=”header”, nous pouvons utiliser tout simplement la balise <header>. Parmi ces balises sémantiques on trouve entre autres •<header> : Qui indique que l’élément est une en-tête •<footer> : Qui indique que l’élément est un pied-de-page •<nav> : Qui indique un élément de navigation tel qu’un menu •<aside> : Qui correspond à une zone secondaire •<article> : Qui représente une portion de la page qui garde un sens même séparée de l’ensemble de la page (comme un article de blog par exemple)
HTML5 n’est pas un nouveau langage
www.teramagazine.tk | numéro 6
18
Support du multimédia et des jeux
Je vais présenter ici les nouveautés que je qualifie de révolutionnaire pour le HTML et le web Jeu en HTML 5 : Avec <canvas>, le support de websocket ,WebGL.etc. Il devient possible de jouer à Quake II sur son navigateur compatible HTML5 sans aucun plugin.
L’intégration des fichiers multimédias »Video En HTML5 il n’y a pas plus simple que lire une vidéo. Il suffit d’utiliser 2 lignes de code à travers d’une page web en html5. Syntaxe générale La syntaxe de base de la balise video est extrêmement simple : <video controls src="video.mp4">Ici la description </video>
Pour essayer ce jeu, toutes les explications sont par ici http://bit.ly/YWFInE Pour voir une démonstration: http://bit.ly/UylCys Un jeu de snack réalisé en HTML5, le code source disponible : http://bit.ly/RuvVXo
Quelques outils pour vous aider à construire votre jeu HTML5 : Pourquoi prendre la peine de recréer ce qui a été fait bien avant vous? Ces outils devraient vous aider à créer vos jeux HTML5 rapidement. ►Construct http://www.scirra.com/
►Spaceport Un outil pour construire des jeux optimisés en HTML5. Il vous permet également d’importer vos anciens jeux flash. Essayez-le. http://spaceport.io
19
www.teramagazine.tk | numéro 6
L’attribut src définit bien entendu l’adresse du fichier vidéo. Nous pouvons indiquer YouTube en tant que source. Sources multiples On peut également proposer plusieurs sources dans plusieurs formats différents en indiquant les types MIME grâce à l’attribut type : <video width="400" height="222" controls="controls"> <source src="video.mp4" type="video/ mp4" /> <source src="video.webm" type="video/ webm" /> <source src="video.ogv" type="video/ ogg" /> </video> Les navigateurs ne pouvant pas lire le MP4/H.264 ni la version WebM nativement (comme Firefox 3.6 par exemple) prendront la version au format Ogg Theora. Cela vous oblige néanmoins à encoder le fichier avec différents codecs. Le lecteur vidéo qui apparait au sein de votre page web ressemble à ceci :
L’outil ‘miro-video-converter’ est un excellent convertisseur vers ces formats. Il est disponible à : http://bit.ly/UpeE0a
Vous pouvez vous en servir pour vous inspirer, mais faites attention, certains n’ont rien compris au HTML5 . http://www.html5gallery.com/
►Microsoft adopte l'HTML5 Comme vous avez pu le voir, l’utilisation de la balise video est très simple. Elle permet d’insérer du contenu multimédia facilement. Ceci évite d’avoir à utiliser un plugin (Flash, Java, Quicktime, etc.). HTML5 peut bien mettre fin à La domination de Flash sur le terrain de la vidéo.
Microsoft a annoncé récemment une flopée d’améliorations apportées à SkyDrive.com, son service en ligne de stockage sur le cloud.
»Audio : Vous pouvez facilement en 2 lignes de code insérer un lecteur MP3 dans votre page web. <audio src="nomdufichier.mp3"> </audio> Les attentes autour de HTML5 sont nombreuses. Reprise en main du Web par des standards libres (face aux solutions propriétaires), support uniforme de la vidéo sur toutes les plates-formes, montée de la sémantique... la liste est longue. Mais aussi les problèmes tournent autour HTML5 surtout avec le problème du support par les différents browsers (Internet Explorer,..) .
Fig. lecteur audio en html5.
Pour s'inspirer: HTML5 Gallery est une… galerie de sites en HTML5. Si vous en réalisez un, soumettez le !
Fig. Compatibilité des navigateurs avec le HTML5. www.teramagazine.tk | numéro 6
20
y x o r P r o T nsurée
non ce & & e m y n o n na
Navigatio
le proxy oignon
roject.org p r o t . w w w
• Protégez votre vie privée. • Défendez-vous contre la surveillance et l’analyse du trafic réseau. • Défiez la censure.
un des seuls moyens fiables pour naviguer anonymement sur Internet. Pour vos montrer la puissance de TOR, sachez que ce proxy était l’ennemi numéro 1 du gouvernement iranien lors du soulèvement postélectoral en Iran, qui a suivi votre porte vers la liberté. l’élection présidentielle iranienne de 2009, car il a permis aux internautes de défier la censure impoouvent pour masquer l’identité et surfer anosée par les autorités. nymement ou détourner la censure imposée C’est quoi TOR: ( IAM bloque parfois l’accès à des sites web à ses clients), nous avons recours à utiliser des Selon Wikipédia : proxys web (exp. : www.proxyweb.net/) ou socks. The Onion Router (Tor) (littéralement : le routage Cependant, ces proxys sont un moyen non fiable en oignon) est un réseau mondial décentralisé de et ils peuvent vous causer des ennuis. Également, routeurs, organisés en couches, appelés nœuds ils peuvent être facilement détectés et par consé- de l’oignon, dont la tâche est de transmettre de quent, ils seront à leurs tours bloqués. manière anonyme des flux TCP. C’est ainsi que
S
tout échange Internet basé sur TCP peut être rendu anonyme en utilisant Tor. Le logiciel Tor Si vous cherchez l’anonymat et la liberté sur met en place un proxy local. Toute application, Internet rappelez vos d’un seul nom. C'est TOR qu’il s’agisse d’Internet Explorer, d’Outlook ou (le proxy open source le plus célébre dans le de tout autre logiciel de communication, pourra monde). L’outil Tor est depuis quelques années,
La solution c’est TOR :
• Un proxy c'est quoi Un proxy est un ordinateur faisant office de passerelle entre le réseau d'un particulier ou d'une entreprise et Internet. Il s'agit dons d'un intermédaire. Sur Internet, il existe différents types de proxy. Les plus courants sont les proxy HTTP. Ils supportent les protocoles HTTP et FTP. • Le proxy peut vous protéger : il peut vous autoriser à vous connecter à l'extérieur et interdire les ordinateurs d'Internet de venir se connecter sur le vôtre. • Le proxy peut masquer les informations concernant votre ordinateur • Le proxy peut mémoriser les pages les plus demandées
21
www.teramagazine.tk | numéro 6
y
baoui
d Dh a m i r a P
profiter de ce proxy et communiquer au travers du réseau Tor.
Comment fonctionne TOR : ◊MODE DE FONCTIONNEMENT :
Tor utilise un réseau de nœuds disponible sur Internet. Le principe fondamental du routage est que le client Tor va sélectionner de manière aléatoire plusieurs nœuds parmi la liste des serveurs disponibles, il va ensuite créer un circuit de tun-
◊LE CHIFFREMENT :
Le chiffrement constitue l’autre méthode qui assure, en principe, l’anonymat et la confidentialité des connexions. Avant que le paquet ne soit envoyé, le client Tor récupère chacune des clefs publiques des relais du circuit et chiffre les données de la manière suivante : -Le paquet est chiffré avec la clef du dernier relais -Le paquet obtenu est chiffré avec la clef du relai n-1 -...
Fig.1 : première étape
Fig.2
Fig.3
Fig.4
nels cryptés. Le réseau Tor repose donc sur une
communauté d’internautes, qui offre des machines pour relayer le trafic des autres utilisateurs. Voir Fig1,2 et 3.
◊LA SÉCURITÉ DU RÉSEAU TOR
Le principe d'anonymat via le réseau Tor réside principalement dans sa méthode de chiffrement et dans son mode de routage. En effet, afin d'assurer la « confidentialité » des données. le réseau Tor utilise une technique de chiffrement qui évite, en principe, la lecture des données tout au long de leur itinéraire aléatoire.
Le chiffrement mis en place ne doit pas permettre à un élément du circuit de déchiffrer le message transmis. Pour cela, un mécanisme de clef publique/clef privée a été mis en place. Lorsque le premier serveur reçoit le paquet, il peut le déchiffrer partiellement avec sa clef privée (il est le seul à posséder cette clef) mais le contenu du paquet reste toujours inaccessible puisque d’autres couches chiffrées encapsulent les données initiales. C’est cette technique de cryptage par "couches" qui a donné le nom de routage en www.teramagazine.tk | numéro 6
22
Tor Proxy Le but majeur d’utiliser Tor est de masquer l’identité de l’utilisateur. On peut s'en assurer, en accédant à l’un des sites qui permettent d’afficher notre adresse IP publique (tel que adresseip.com et ipmarker.com ) à travers mozilla (offert par Tor), qui afficherait l’adresse IP virtuelle affectée par Tor, et un autre navigateur qui afficherai l’adresse IP réelle .
Fig.5 : chiffrement des données dans le réseau Tor.
T
Fig.6 : Déchiffrement Tor.
oignon. Les deux schémas fig 5 et fig 6 illustre le principe de chiffrement suivi par Tor.
Installation: On télécharge la dernière version qui correspond à notre OS depuis le site officiel: https://www.torproject.org/download/downloadeasy.html . Après le téléchargement on lance l’installation : Installez le package Tor (choisissez une installation complète) pour avoir un dossier contenant les fichiers suivants :
Utilisation Une fois le proxy TOR est installé, vous pouvez utiliser le Firefox portable qu’il offre. Vous pouvez démarrer TOR en cliquant sur le bouton " Start Tor " dans la fenêtre de contrôle Vidalia qui apparait dès qu’on ouvre l’application "Start Tor Browser" .
Test : 23
www.teramagazine.tk | numéro 6
Changement de l’identité : Si on souhaite utiliser une nouvelle identité, c’est-à-dire rechanger l’adresse IP avec laquelle on est apparemment connecté, on utilise le bouton « Use a New Identity » et on peut vérifier que notre adresse a changé en accédant de nouveau à l’un des sites précédemment cités.
Avancée Parmi les options les plus fascinantes du projet Tor, l’option « Network Map ». En sélectant le bouton Tor Network Map, Le logiciel affichera une carte géographique du monde indiquant les chemins et les trajets des paquets. Ainsi, une liste de relais permettant de voir les différents relais existant dans le monde. Network Map permet à l'utilisateur Tor de détecter les différents relais dans le trajet des paquets envoyés. Vous pouvez aussi consulter la bande passante consommée par Tor.
♦
Tails : votre système linux annonyme Debian-Tails , La distribution Linux qui protège votre anonymat et votre vie privée disponible en Live CD / USB. Elle est préconfigurée pour utiliser Tor en toute sécurité. Vous n'avez qu'à l'utiliser.
Tails = Tor sur votre téléphone portable:
Pour les appareils mobiles tournant sous android, Tor vous propose orbot. Cet outil vous permet de cacher votre identité tout en naviguant sur web ou en utilisant vos applications Android. • NAVIGATION Vous pouvez utiliser le navigateur de confidentialité Orweb que nous proposons, qui ne fonctionne que via Orbot et Tor. Vous pouvez aussi essayer Firefox Mobile avec notre ProxyMob Add-On pour naviguer via le réseau Tor. • Messagerie instantanée Pour la messagerie instantanée, essayez Gibberbot qui fournit, un support pour Orbot et Tor.
♦La famille Tor Obfsproxy Obfsproxy est un outil qui tente de contourner la censure. www.torproject.org/projects/obfsproxy.html.en
J
e suis un utilisateur fidèle de Tor, les services qu'il me rend sont d'une valeur inestimable. Je vous conseille vivement de l'utiliser, même si vous n'aimez pas l'oignon.
Tor nuage (cloud) Une façon conviviale de déployer des ponts pour aider les utilisateurs à accéder à un Internet non censuré https://cloud.torproject.org/
Atlas
Bras Application Terminal pour surveiller et configurer Tor.
Un site qui offre une vue d'ensemble du réseau Tor.
24
www.teramagazine.tk | numéro 6 www.atagar.com/arm/ https://atlas.torproject.org/
e r i o t L’his d’un s è c c su
G
re, choix...
tion, architectu ta n e s ré p , e ir Histo
écouvrir le d s n o ll a s r dans sier nou ans ce dos . Nous allons faire un tou tons n x système linu e GNU/linux. Nous remo nux. li r le monde lib vrir l'histoire du système iliser on l'ut r décou tu o is p o s d p i o m e u t q r le ssi voir pou Cl . u a s n o ll a s u No miers pas en e r p s o n e ir et fa s n'êtes
D
tion. Si vou e d'exploita m è ns votre st sy n o l'utilisez da très b s n u u o v st e e u x q u in z ts de Fans sache et des géan s b se e w e d rs u n e u pas es serv ie. a majorité d tilise avec jo quotidien. L l'u ..) le g o o acebook,G ficile à l'Internet (F ux, c'est dif in L ( s e é id s e ce re de fausse nt autour d b e m rn o u n to d ) n ... r. ra ng utilise e chez les st difficile à e, ce qui cré u q ti a installer. C'e rm fo e dosin ns le milieu utilisation. C n so e h c ê p système da que em ous montrer négatifs et v s e é d g t ju e ré le p o s les uss gens de ler votre bo pour toutes g st ré e e x d u t in u L b . s ou Mac système sier a pour l de Window git pas d'un a a v s' ri e n n u il x st u e linux les nivea t pour tous utilisations e lite. que pour l'é
L U
Gnu/linux ou ux? seulement Lin
25
www.teramagazine.tk | numéro 6
x u n i L / u n G t s e e m m l'ho e c e d i l'ennem ore. qu'il ign
ux
Histoire de lin
er
pourquoi utilis linux
CLI Apprendre la ux Astuces lin
www.teramagazine.tk | numĂŠro 6
26
// //////////////////
//////////////////
/////////////
oyage ÂťLancez le v
C’est quoi Linux?
L
inux (Gnu/linux) est un système ’exploitation, comme Windows, Mac OS X, IOS et Android ou autre. un os est une plateforme sur laquelle tourne l’ensemble de vous programme. Certains voient encore Linux comme un système compliqué basé sur les commandes difficiles. Ce n’est plus vrai. Linux possède un système graphique agréable, confortable et simple à utiliser. La puissance, les animations et les facilités offertes par les gestionnaires graphiques rivalise bien avec Windows ou Mac. Linux est actuellement l’un des os les plus populaires. Mais saviez-vous comment linux a démarré et comment il est arrivé à son succès. Dans cet article, on retourne à l’origine de l’histoire de ce fabuleux système d’exploitation. Avant de démarrer notre voyage en histoire il est important de vous dire que Linux est seulement un noyau du Système d’exploitation (OS) GNU/Linux. Mais nous avons l’habitude de dire que Linux pour designer les systèmes d’exploitation tels que Ubuntu, Fedora, etc., oui bien sur mais c’est une erreur ou plutôt un raccourcis de nom. Linux n’est qu’une partie du
L'histoire de Linux système, bien sur la partie la plus importante, mais tout seul il ne fait pas un OS. Retenons donc que : Linux est donc un noyau. + GNU = GNU/Linux est le système d’exploitation. parler de Linux comme étant un OS, c’est comme dire parabole pour exprimer tout le dispositif de réception du signal satellitaire. Je crois que vous me comprenez là. Alors, c’est quoi ce GNU/ ?? La réponse viendra dans son contexte historique. Comprendre la chronologie des événements, aide bien à comprendre beaucoup de choses.
Logo copyleft (" gauche d'auteur ") : certains droits réservés Represente l'alternatif à copyright
▲ GNU et tux de linux
27
www.teramagazine.tk | numéro 6
LINUX
La machine de Tim Berners-Lee, le premier serveur web.
Minix Dennis Ritchie, Ken Thompson and PDP-11. L'architécture en couches d'un ordinateur.
en langage “B”. A la base appelé Unics (jeu de mot formé à partir de Multics, gros système développé fin 60 par le MIT et General Electric) . Ce système Payant (retenez ce point) avec un noyau protégé par droits des utilisateurs.
Minix est un système d’exploitation, clone d’UNIX, fondé sur un micro-noyau créé par le professeur Andrew S. Tanenbaum à des fins pédagogiques, volontairement réduit afin qu’il puisse être compris entièrement par ses étudiants en un semestre et qui a servi de source d’inspiration à Linus Torvalds pour créer Linux. http://www.minix3.org/
►1973 : C++
►1969 Le Début de l’histoire
A
vec notre machine de remonte de temps, nous revenons à l’année 1969, la date de naissance d’UNIX. Le premier système d’exploitation qui a vu le jour. premier système Unix écrit par Ken Thompson aux Bell Labs d’AT&T, en assembleur sur PDP-7, puis
D
ennis Ritchie, qui a inventé le langage “C”, récrit Unix en C avec Thompson (vers.4). Rend possible et entraîne le portage d’Unix sur de nombreuses machines (sources d’Unix distribués à de nombreuses universités et sociétés commerciales). Une 3ème personne, Brian Kernighan, contribue également fortement aux premiers développements d’Unix.
►1980 : Gnu
BSD Berkeley Software Distribution, abrégé en BSD, désigne en informatique une famille de systèmes d’exploitation Unix, développés à l’Université de Californie (Berkeley) entre 1977 et 1995 par un groupe de programmeurs qui comprend notamment Bill Joy, Marshall Kirk McKusick et Kenneth Thompson.
D
ans les années 80, beaucoup d’événements intéressants ont vu le jour, créeant un milieu favorable pour la naissance de linux. On note la création du
www.teramagazine.tk | numéro 6
28
BSD, Minix et Le plus important projet GNU. GNU = GNU is Not Unix (« GNU N’est pas Unix »)(un acronyme récursif!) C’est en 1983 que Richard Stallman, un chercheur du MIT, annonce officiellement sur Internet le projet GNU.
la communication entre ses programmes) . C’est ici qu’intervient le noyau LINUX. À partir du début des années 90, on peut dire qu’il existe un système UNIX libre, le système GNU/LINUX. << Logo du noyau HURD du projet GNU
Projet GNU
Ce Projet Lancé à une époque où les sources d’Unix n’étaient plus libres d’accès, avait pour but de réaliser un système (Gnu) semblable à Unix entièrement libre. La première pierre de ce projet était l’éditeur de texte Emacs, qui peu à peu fait l’objet de demandes de la part d’utilisateurs intéressés. Après, le projet a évolué et il a mis en places des composants initiaux: compilateur C (gcc), make (GNU make), Emacs, bibliothèque C (glibc), outils de base (ls, cp ...). Vous avez compris maintenant que les programmes de bases que vous exécutez appartiennent au GNU. Cependant, en début des années 90, le projet GNU avait comme noyau HURD (pour gérer
29
www.teramagazine.tk | numéro 6
≥1991 la naissance de LINUX :
E
n 1991, Linus Torvalds, étudiant finlandais, entreprit l’écriture en C d’un système d’exploitation de type Unix, basé sur Minix (un clone gratuit d’Unix et qui présente des limitations fonctionnelles).Linus a réalisé ce travail dans le cadre d’un projet de fin d’études d’un étudiant finlandais. Il partage an Aout 1991,
la licence GPL Le projet GNU donne naissance à une licence particulière appelée General Public Licence (GPL) qui spécifie les termes qui régissent un logiciel libre. Un logiciel « sous » • GPL est un logiciel : • qu’on peut copier ; • qu’on peut distribuer ; • qu’on peut modifier ; • qu’on peut vendre ; en respectant les contraintes suivantes : • on doit pouvoir en obtenir les sources (par exemple sur Internet) ; •on doit y trouver une copie de la GPL. Cette licence garantit donc qu’un logiciel libre (sous GPL) le reste à jamais, Stallman pense que le logiciel libre ne devrait pas placer de restriction sur l’utilisation commerciale, et la GPL indique explicitement qu’un travail sous GPL peut-être (re)vendu. En cas de modification, le résultat doit être placé sous la même licence.
Les distributions
son travail avec la communauté des utilisateurs de Minix. Son travail attire de plus en plus de développeurs et rapidement ce noyau est devenu le buzz de cette époque-là et le nombre de contributions en code augmente rapidement. Vous pouvez la télécharger version 0.01 de 71 KB sur http://bit. ly/Vl3UCm et les notes de version sur http:// bit.ly/13kBFFL Après l’adoption de linux trovalds la licence GPL l’intégration de Linux comme noyau du projet GNU étais possible. Les outils Gnu associés au noyau linux ont formés un Système d’exploitation, il serait donc plus logique de parler de GNU/Linux en lieu et place de Linux.
1992 à 94
Entre 92 et 94 linux a connu la naissance des projets les plus populaires du linux moderne : Slackware, redhat et Debian.
1992
Slackware a vu le jour comme étant le premier système qui adopte le nouveau noyau linux dans ce temps. Crée par Patrick Volkerding, slackware était la première distribution linux qui contient à côté du nouveau noyeau 0.99 la pile TCP/IP, le X Windows system.
Lorsqu’on souhaite installer un système GNU/ Linux, a moins d’être un expert, on préfère installer un package comprenant à la fois un noyau et des Applications (compilateurs, server X, ...). On nomme ces ensembles noyau + applications des distributions. Il en existe une multitude, qui peuvent être destinées à des publics différents, que cela soit par rapport au niveau d’expertise de l’utilisateur (débutant, expert ...), qu’à l’usage à laquelle celle-ci est destinée (station de travail, serveur ...) Parmi toutes ces distributions, nous pouvons citer : ✓Red Hat : http ://www.redhat.com ✓ Mandrake : http ://www.mandrakelinux.com ✓ Slackware : http ://www.slackware.com ✓ Debian : http ://www.debian.org La distribution Debian a la particularité, contrairement aux autres distributions ci-dessus, de ne pas être issue d’une société mais d’un groupement d’individus qui participent bénévolement au développement et à la diffusion de celle-ci. Celle-ci est réputée pour stabilité et sa robustesse.
1993
lan murdoch crée le Debian linux . linux évolue vers 0.95 pour tourner le système X window.
1994
Le 12 mars, sortie de Linux 1.0. avec 176.250 lignes de code. Le noyau Linux est stable, pour la production et fournit les services d’un UNIX classique (176000 lignes de codes). ➤La numérotation des versions devient celle qu’on connaît encore aujourd’hui : <version majeure>.<version mineure>.<sous version>. Les
versions “stables” ont un numéro de version mineure pair. Le développement de nouvelles fonctionnalités s’effectue sur les versions dites “bêta”, avec un numéro de version mineure impair ◊3 novembre 1994, une autre distribution voit le jour il s’agit de Red Hat Commercial linux, créer par Marc Ewing (Le nom vien du chapeau rouge qu’il portait tout le temps)
www.teramagazine.tk | numéro 6
30
1995 à 99
»une période marquée par l'arrivée du Gnome et KDE.
*1995
l'apparition de Jurix linus, la première distribution qui supporte bootp et NFS et Ext 2. Cette distors était la base de Suse linux que nous utilisons actuellement. • La branche des linux basé sur redhat connait de nouveau distors : Caldera, Mandrake, turboLinux, Yellow Dog et redflag. • Linux apporte du nouveau : plus d’architectures processeur surtout le PowerPC, plus de matériels supportés, modules chargeables, … (311000 lignes de codes). gestion du réseau plus complète, apparition de la Tux. Lecture seul du système NTFS
*1996
Δ cette année a connu la sortie de la version 2.0 de Linux. Les utilisateurs sont estimés à plus de 1,5 million. C’était le début de la reconnaissance de Linux par l’industrie informatique. ΔNaissance de la mascote de linux appelé Tux (Trovalds unix) le pingouin. Dès le 30 septembre, commence la réalisation de Linux 2.1. Δcréation du projet KDE (kool desktop environment ) basé sur Qt. plus besoin de passer par un environnement basé sur X11. La première distribution qui a adopté KDE était Mandrake.
1997
Lancement du brojet Gnome basé sur GTK+, adopté en premier par Redhat .
31
www.teramagazine.tk | numéro 6
1998
: Des géants de la technologie (Oracle, Sun (à l’époque),..) commencent à annoncer leurs supports de Linux. Les administrateurs systèmes commencent à l’adopter dans leurs serveurs.
1999
: La distribution Red Hat devient publique, Des entreprises ont basé leur activité sur Linux. le cours de l’action de Red Hat a triplé en devenant la première entreprise à utiliser Linux sur le marché.
2000 à 05
»La naissance des distributions live .
2000
ΔNaissance de knoppix, une distribution basée sur debian. Il était très populaire à cette époque en raison de sa capacité de booter directement à partir d’un CD. Knoppix a levée la barre pour le reste des linux en fournissant un linux fonctionnel sans passer par le disque dur. Ce principe a été adopté après par la majorité des linux.
Lancement du projet « linux from scratch » (LFS) pour aider les utilisateurs à bâtir leur propre linux à partir des sources sur www.linuxfromscratch.org. ΔNaissance de la LinuxFoundation, pour promouvoir, protéger et standardiser Linux.
2001
En Linux passe à la version 2.4 avec le support de l’USB, bluetooth, PC cards, RAID et EXT3. Ce qui explique que La version 2.4.x a duré jusqu’à la 2011.
2002
Redhat en profitant des revenus de son travail sur linux, adopte une nouvelle approche et divise son produit entre Redhat Entreprise linux(RHEL) 2.1 pour les entreprises et Fedora pour la communauté des utilisateurs. Après que le code source de RHEL a été fourni par Red hat sur ses serveurs ftp, d’autres groupes ont téléchargé et modifié le code pour créer de nouvelles distributions basées sur redhat comme : Centos, Oracle linux, CERN et scientific linux 2002 : la naissance d’archelinux
2003
: IBM diffuse une publicité célèbre sur Linux pendant le Superbowl. Nombre d’utilisateurs estimé (linuxcounter): 18 millions. Linux est à sa version 2.6 qui apporte le support de PAE et le 64 bit, possibilité d’avoir un système de fichier d’un volume 16 TB, EXT4, etc.
2006 à 20012
2006 le lancement de Mint qui est devenu le 4 éme os dans le monde et le linux le plus populaire. le 5 novembre annonce officielle du système d’exploitation mobile basé sur Linux, Android. 90% des utilisateurs ne savent pas qu’Android est un linux.
2007
2011
: Linux fête ses 20 ans et équipe aujourd’hui les super-ordinateurs du monde entier, bourses, téléphones, distributeurs de billets, appareils de santé, réseaux... et ce n’est qu’un début ! 22 juillet 2011 la sortie de la version stable 3.0. Tous les trois mois une nouvelle version de Linux voit le jour. Lancement de Gnome 3 qui apporte un nouveau bureau sans icône !!
2012
Mars redhat pèse 1 miliard $ de chiffre d’affaires
Donc où en est Linux aujourd’hui ? Aujourd’hui, la communauté du développement du noyau compte des milliers de membres, et des centaines d’entreprises qui collaborent ensemble au développement de Linux. Linux est à sa version 3.8. Linux domine le monde informatique : ⌬Il permet 75% des transactions boursières dans le monde,Il fait tourner les serveurs d’Amazon, de Facebook, de Twitter, d’eBay, et de Google. ⌬Vous vous servez de Linux littéralement à chaque fois que vous allez sur internet. ⌬C’est dans votre téléphone, votre télé, sur 95% des superodinateurs, et dans beaucoup d’autres appareils que vous utilisez tous les jours. Linux est partout. Et qu’est devenu le programmeur d’Helsinki qui a tout commencé ? ⌬Il orchestre le travail de cette armée mondiale de développeurs depuis le bureau de sa maison à Portland en Oregon,en tant que membre de la Fondation Linux. Il est joignable par Email à trovalds@linux-foundation.org.
www.teramagazine.tk | numéro 6
32
Linux 0.0.1 Pour les spécialistes
L
e noyau Linux est officiellement né avec une version 0.0.1 publiée le 17 septembre 1991. La taille totale des sources représentait moins de 64 Ko avec compression (les versions actuelles compressées pèsent au moins 20 Mo). Les sources du noyau 0.01 occupent 230 Ko, comportent 11 dossiers et 88 fichiers. Le premier niveau de l'arborescence de la source est simple : Linux 0.01 /boot /fs /include /init /kernel /lib /mm /tools Elle s'inspire de l'arborescence de Minix. les systèmes d'exploitation se composent de quatre parties principales : le gestionnaire des processus, le gestionnaire de la mémoire, le gestionnaire des chiers et le gestionnaire des périphériques d'entrée-sortie. Le répertoire kernel correspond aux couches 1 et 2 de Minix (processus et périphériques d'entrée-sortie). Les procédures des bibliothèques standard C utilisées par le noyau (open(), read(),...) se trouvent dans le répertoire lib (pour LIBrary). Les répertoires mm (pour Memory Management) et fs (pour File System) comportent le code du gestionnaire de mémoire et du gestionnaire de chiers. Le répertoire include contient les fichiers d'en-têtes nécessaires au système Linux. Il sert à la constitution du noyau, mais également à la programmation Linux une fois le noyau constitué. Les trois derniers répertoires contiennent les outils de mise en place : le répertoire boot permet de démarrer le système ; le répertoire init d'initialiser le système (il ne contient que la fonction principale main()) ; le répertoire tools per-
33
www.teramagazine.tk | numéro 6
met de construire le noyau. Linux 0.01 disposait de cinquante appels-système, c'est-à-dire l'essentiel des fonctionnalités de base de gestion des processus, de la mémoire et des fichiers : fork(), exit(), waitpid(), execve(), getpid(), getppid(), setuid(), getuid(), geteuid(), setgid(), getgid(), getegid(), setpgid(), getpgrp(), setsid(), open(), creat(), close(), read(), write(), lseek(), access(),ioctl(), fcntl(), mkdir(), rmdir(), dup(), dup2(), pipe(), link(),unlink(), stat(), fstat(), chmod(), chown(), utime(), chdir(), chroot(),sync(), stime(), time(), kill(), signal(), alarm(), pause(), brk(),umask(), nice(), times(), uname(). A ceci s'ajoutent les points d'entrée pour les seize appels-système suivants, qui n'étaient pas encore implémentés, et renvoyaient toujours l'erreur ENOSYS : mknod(), mount(), umount(),rename(), ftime(), ulimit(), ustat(), ptrace(), acct(), phys(), lock(), mpx(), stty(), gtty(), prof(), break(). Pour mieux comprendre la structure du noyau linux et son évolution je vous conseil le livre indiqué dans les références.
Start using linux
Why to use Linux read more... Lien utiles RÉFÉRENCES : Site officiel du noyau linux : http://www.linux.org/ ≥le livre Conception Archive linux : http://kernel.org/ de systèmes d’exploitation Newsgroups: gmane.linux.kernel Le cas Linux (Patrick Cegielski). linux foundation : www.linuxfoundation.org freshmeat.net, sourceforge : pour tous les logiciels libres, avec le type de licence ≥Wikipédia distrowatch : pour tout savoir sur votre distribution www.teramagazine.tk | numéro 6 34
Pourquoi Adopter un Pinguin(Linux)? ⌬Découverte du système Linux
⌬Le Temps est venu pour essayer linux
V
ous êtes probablement un utilisateur fidèle à Windows. Probablement, C’était le premier système que vous avez utilisé et vous n’avez jamais osé utiliser un autre. Pourquoi le faire, si Windows vous plait ? Si vous n’utilisez pas linux et vous êtes toujours sous Windows, c’est que soit vous ne le connaissez pas ou que vous avez des préjugés sur son utilisation. Certains, voient encore Linux comme un système compliqué basé sur les commandes difficiles. Ce n’est plus vrai. Linux possède un système graphique agréable, confortable et simple à utiliser. La puissance, les animations et les facilités offertes par les gestionnaires graphiques rivalise bien avec Windows ou Mac. L’objet de cet article est de présenter des arguments pour vous inciter à choisir d’installer et d’utiliser le système d’exploitation Linux. Si vous n'aimez pas les pinguins, c'est pas grave.
35
www.teramagazine.tk | numéro 6
?
Pourquoi linux? La réponse réside dans sa manière distinguée de faire les choses et qui convient des millions d’utilisateurs partout dans le monde. Nous allons parcourir un ensemble d'aspects qui font la force de linux.
»Sécurisé >> stabilité >>flexible >> Simple >> libre et gratuit.
fait et ceux qui vous disent que le leur ne plante jamais, absolument jamais, sont des menteurs. Cependant, certains systèmes sont si stables que la plupart des utilisateurs ne les voient jamais planter, même en plusieurs années d’utilisation. C’est le cas de Linux. Voici un bon moyen de le constater. Lorsqu’un système plante, il doit être éteint ou redémarré. Par conséquent, si votre ordinateur peut rester allumé pendant longtemps, même avec une utilisation intensive, alors vous pouvez dire que le système est stable. Linux peut tourner pendant des années sans avoir besoin d’être redémarré (la plupart des serveurs web tournent sous Linux, et ils ne redémarrent presque jamais)
Une réduction du risque d’infection par les virus et protection contre les intrusions surtout avec La création de Selinux. Ce n’est pas une légende, il n’y a que très peu de virus sous Linux. D’une »Sécurisé >> stabilité >>flexible >> part par la conception même du système et la Simple >> libre et gratuit. gestion très poussée des utilisateurs et de leurs droits, mais aussi car, il y a moins d’utilisateurs modulaire des sysque sur Windows ce qui intéresse moins Certains, L’architecture tèmes Linux les rend flexible, les pirates. En plus du fait qu’avec le voient encore vous pouvez ajouter le module nombre important de développeurs, les failles de sécurité peuvent être Linux comme un qui vous convient pour une Personnalisation à l’extrême. détectées plus tôt et corrigées système compliqué Apparence des fenêtres, de la plus vite. Les mises à jour du noyau et de basé sur les com- barre des tâches, des polices, des dossiers, des icônes, de tous les logiciels sont également mandes difficiles. l’écran de connexion, préféplus faciles : pas besoin de prendre Ce n’est plus rences de tes logiciels... Tout tes logiciels un par un, ton système y passe. Ce sentiment de liberté saura les mettre à jour en une fois. vrai" est vraiment formidable qui ne s’estompe pas au fil du temps. »Sécurisé >> stabilité >>flexible >> Contrairement à Windows dont l’interface graSimple >> libre et gratuit. phique vous est imposée, il existe différents gestionnaires d’interfaces graphiques sous Linux, les La réputation de stabilité de Linux n’est pas une principales étant Gnome, KDE et XFCE. Il est même allégation. L’immense majorité des serveurs dans possible de faire fonctionner Linux sans interface le monde les utilise, ce n’est pas pour rien. graphique, ou même de ne lancer l’interface graSans doute vous avez des histoires à propos des phique que quand vous le souhaitez. plantages de Windows et la perte des données ?
"
Une écran bleu« écran bleu de la mort » contenant des messages d’erreur qui s’affiche sans prévenir et redémarre l’ordinateur ou un logiciel qui plante et affiche le message « le processus explorer a cessé de fonctionner», etc. Bref, je n’ai pas besoin de vous raconter les problèmes d’utilisation de Windows. Les toutes dernières versions de Windows, en particulier la série des « Professional », sont plus stables que les précédentes. Mais ce genre de problème arrive toujours assez fréquemment. Bien sûr, aucun système d’exploitation n’est par-
»Sécurisé >> stabilité >>flexible >> Simple >> libre et gratuit. Contrairement à ce que vous pensez, linux est plus simple à utiliser que Windows. L’installation se fait en quelques cliques, la mise à jour se fait automatiquement. Vous pouvez installer linux en quelques minutes sans perdre votre installation Windows existante. En plus de sa simplicité linux est léger. En effet, Linux est léger vous pouvez le faire tourner sur des anciens ordinateurs comme sur les superordinateurs (90% des superordinateurs et serveurs tourne sous un linux) www.teramagazine.tk | numéro 6
36
ΔNe vous souciez plus des pilotes Linux supporte presque la totalité des composants que vous pouvez ajouter à votre ordinateur. Surtout avec la participation des grands constructeurs (Nvidia, ATI..) du matériel dans le développement de linux. On peut trouver facilement le driver qu’on cherche déjà présent sur le système. Imaginez que vous voulez installer Windows sur un tout nouvel ordinateur. Pour chaque périphérique, vous devrez trouver le dernier pilote (ou utiliser un CD), l’installer, et redémarrer à chaque étape. Carte graphique, carte son, clavier, souris, carte mère, etc. (mieux vaut faire la carte graphique d’abord ou vous serez coincés avec votre super écran dans une petite résolution) et cela après l’installation déjà longue de Windows. Linux ne nécessite pas de pilotes séparés. Tous les pilotes sont déjà inclus dans le noyau Linux, le cœur du système et cela avec chaque installation Linux. Cela implique: •
Une installation très rapide et autonome. À la fin, vous disposez de tout ce qu’il faut pour commencer à travailler (même les logiciels que vous utiliserez, voir l’article «Lorsque le système est installé...» sur ce site)
•
Périphériques prêts dès l’installation
grandes qualités, bien plus qu’aux systèmes développés par une poignée d’employés d’une entreprise. ΔUne communauté présente et active Dérivant directement du point précèdent, les développeurs et utilisateurs communiquent très facilement dans le monde de Linux. Vous trouverez des documentations fournies, des forums très actifs et de nombreux sites et blogs spécialisés
Linux supporte presque la totalité des composants que vous pouvez ajouter à votre ordinateur.
»Sécurisé >> stabilité >>flexible >> Simple >> libre et gratuit. Linux est un système d’exploitation libre cela veut dire simplement que tout le monde peut voir le code source du logiciel, le modifier, le copier, le distribuer. Linux est gratuit vous pouvez télécharger une distribution linux (Fedora, Opensuse, Ubuntu…) gratuitement pour l’utiliser sur votre ordinateur personnel ou pour une utilisation en entreprise sans avoir à acheter une licence. ΔDes logiciels libres et semblables à ceux de Windows Si l’entreprise possédant un logiciel propriétaire décide de prendre une direction qui ne vous plaît pas, vous ne pourrez pas y faire grande chose. Avec les logiciels libres, n’importe qui peut reprendre le projet à son compte et en faire un produit dérivé. Linux offre des logiciels aussi performants que ceux de Windows (Openoffice, GIMP, ..). La communauté de développeurs étant potentiellement infinie, alors on prête à ses logiciels de
37
www.teramagazine.tk | numéro 6
Fig.1: Ylmfos un linux comme Windows.
Aucune raison de ne pas tester C’est finalement là que je voulais en venir : même si vous ne pensez pas pouvoir vous séparez définitivement de Windows, il n’y a aucune raison de ne pas essayer ! Voilà pourquoi :
Live CD
C’est quoi ça ? Tout simplement un CD d’installation que vous pouvez utiliser pour tester une distribution sans toucher à votre disque dur ! Aucun risque de faire une bêtise. Entre-temps, vous pouvez tester un CD Live Linux en toute sécurité ici : www.linux-live-cd.org
Facilité du multiboot Un basculement complet est difficile dans certains cas : matériel incompatible (rare), vous êtes
fans des jeux vidéo, logiciels propriétaires indispensables... Toutefois, installer Linux ne veut pas dire se passer définitivement de Windows ! Mon PC principal peut ainsi faire démarrer aussi bien l’un ou l’autre système, installés tous les deux sur le même disque dur. J’ai simplement un écran supplémentaire au démarrage qui me pose la question.
Utilisez vos programmes et vos logiciels Windows sous linux »Wine
Si vous tenez bien à vos logiciels Windows vous pouvez les porter sur linux en utilisant l’outil Wine. Wine est l'acronyme récursif anglophone de « Wine Is Not an Emulator », littéralement Wine n'est pas un émulateur. Jusqu'en 1997, Wine était l'acronyme de « WINdows Emulator »2. Ce logiciel est une implémentation libre de l'interface de programmation Windows bâtie sur X et UNIX (BSD, Linux), c’est-à-dire qu'il permet d'utiliser sous Linux ou Mac OS X des programmes conçus pour fonctionner sous Windows.
intégré) : MonoDevelop, avec notamment le support de la complétion de code . • Un serveur web léger entièrement compatible avec la technologie ASP.NET. • .... Vous pouvez apprendre plus sur cette platforme à www.mono-project.com
»Clone de Windows : Ylmf OS est une distribution Linux gratuite dérivée du système d'exploitation Ubuntu. Cette distribution se caractérise principalement par son interface utilisateur, très similaire à celle de Microsoft Windows XP. Elle connaît une grande popularité en Chine. http://ylmf-os.fr.malavida.com/linux/download Désormais vous n'avez plus d'excuses de ne pas essayer un linux. Si vous êtes un débutant, je vous conseil d'installer linux Mint ou Ubuntu dans une machine virtuelle.
Wine vous permet d'utiliser vos programmes winows (.exe) sous linux
»MONO : Si vous êtes un développeur ".net" vous avez sur linux la platforme Mono. Mono est une mise en œuvre open source (sous licence GNU GPL) de la plate-forme de développement Microsoft .NET. Mono est une plate-forme de développement complète basée sur une mise en œuvre de l'environnement d'exécution de code .NET et des API de base définis à l'ECMA. Mono supporte pour l'instant la version 4.0 du framework Mono propose entre autres : • •
Un compilateur C# 3.0 Un IDE (environnement de développement www.teramagazine.tk | numéro 6
38
>>Maitriser l’utilisation de la CLI # Δ Faire face à l’outil qui fait peur aux ignorants. Un pouvoir immense sous vous doigts. Vous avez besoin de savoir comment l'utiliser. Nous vous donnons un premier aide
L
es commandes linux sont des outils formidables et puissantes pour interagir avec votre ordinateur. Elles vous aident à mieux gérer la situation et à comprendre ce qui se passe. Pour un amateur ou un professionnel, l’interface des commandes(CLI) reste un très bon moyen de communication avec le système. Dans cet article nous allons bien découvrir comment maitriser son utilisation. Lancez votre terminal et suivez nous.
39
www.teramagazine.tk | numéro 6
Q
uand vous lancez votre terminal sous linux, vous trouvez l'entête suivante dans chaque ligne de commandes. Cette entête ressemble à
[tera@tera_machine ~]$. Chaque élément a une
signification utile, comme le présente le schéma suivant :
Le symbole $ qui est à la fin, indique le type d'utilisateur. $ pour utilisateur ordinaire et # pour le super utilisateur (le root). le nom d'utilisateur courant
[tera@tera_machine ~]$ le nom de la machine
le symbole @ signifie que l'utilisateur tera est connecté à la machine tera_machine
L'emplacement courant dans le système des fichiers ~ pour designer le dossier personnel
Δ EN RÉSUMÉ utilisateur@nom_de_la_machine: l’emplacement_courant :type d’utilisateur
Si vous tapez la commande su (super user) et vous donnez le mot de passe cette entête [tera@
tera_machine ~]$ se transforme en [root@tera_machine /tera]# . On remarque le
changement du nom de l'utilisateur et du symbole $ en #. pour se déconnecter du compte super utilisateur, tapez la commande exit.
www.teramagazine.tk | numéro 6
40
>>Structure d’une ligne de commande
IL
existe des milliers de commandes disponibles sous linux, mais vous n’avez à retenir par cœur qu’une dizaine, si jamais vous voulez passer par la CLI. L’affiche disponible à http://bit.ly/VeLVN9 résume des commandes basiques à connaître et leurs options. Dans cette partie nous allons exécuter notre première commande linux . Dans un terminal tapez :
ls
Cette commande liste le contenu d’un dossier. Semblable à "dir" sous (Ms-dos/windows). Si elle est exécutée seule, elle donne le contenu du dossier courant. Une ligne de commande linux est généralement de la forme suivante :
2éme argument
l'option
[tera@tera_machine ~]$ ls -l /home /root
La commande
41
www.teramagazine.tk | numéro 6
premier argument
Presque toutes les commandes linux suivent ce modèle : Commande [option] argument 1 argument 2….. Pour connaître les options disponibles et la structure de la commande, vous pouvez faire appel à l’aide en utilisant : • man commande, pour faire appel au manuel de la commande (pressez q pour quitter le manuel) Fig 3. • Commande –h exemple : ls -h • Commande --help Cette documentation détaillée des commandes est un point fort qui distingue linux. Amusez vous à essayer toutes les commandes. NB: Certaines commandes ont besoin des privilèges de super user . Vous aurez donc à se connecter en tant que root ou utilisez la commande sudo au début comme par exemple: sudo ifconfig eth0
www.teramagazine.tk | numéro 6
.--. |o_o |:_/ | // \ \ (| | /'\_ _ 42 \___)=
#Apprenez à taper moins. >> Les astuces qui vous facilitent la vie :
1
TABULATION
:
Le bouton Tabulation de votre clavier, vous complète les commandes que vous êtes en train de taper. S’il y a une ambiguïté, il vous propose les commandes similaires.
[tera@tera_machine ~]$ ifc
+ [tera@tera_machine ~]$ cd /e
2
[tera@tera_machine ~]$ ifconfig <----->
=
[tera@tera_machine ~]$ cd /etc/
COPIER / COLLER CTRL+ALT+C : copier.
CTRL+ALT+V : coller. Ajoutez un ALT à vos habitudes ctrl+c et ctrl+v
4
EFFACEMENT CTRL+L : efface les lignes affichées par le terminal CTRL+K : efface la ligne courante depuis le curseur CTRL+U : supprime ce qui est avant le curseur (si le curseur est en fin de ligne il surprime toute la ligne)
[tera@tera_machine ~]$ ifco|n CTRL+U CTRL+A
+
↷
3
DÉPLACEMENT DU CURSEUR CTRL+A : vous déplace au début de la ligne CTRL+E : vous déplace en fin de ligne
ifconfi | ifconfig
[tera@tera_machine ~]$ ifco|n
[]$|nfig 43
www.teramagazine.tk | numéro 6
Début
+
CTRL+K
↷
↷
CTRL+U
[]$ ifco| Fin
5
PROCESSUS : CTRL+C : annule et ferme le travail en cours CTRL+Z : envoie le programme en cours au background
Utilisez ceci si vous avez un programme en cours d’exécution qui bloque l’utilisation du terminal et vous voulez écrire de nouvelles commandes sans mettre fin au programme courant. Pour récupérer votre programme, utilisez la commande fg. CTRL+D : se déconnecter .
6
HISTORIQUE: Des commandes et raccourcis utile pour ne plus faire la même chose plusieurs fois.
!! : La dernière commande exécutée !:n : le nième argument de la dernière commande !* : Tous les arguments de la dernière commande Examples : • Ls /etc /home /srv • Cd !:1 sera exécuté cd /etc • Cd !:2 sera cd /home
nfig
↷
touch monfichier1 monfichier2 monfichier3 monfichier4 rm -f !:1-3 est équivalent à "rm -f monfichier1 monfichier2 monfichier3"
ig |
nfig
7
.--. |o_o |:_/ | // \ \ (| | /'\_ _ \___)=
BUREAU CTRL+ALT+L verrouiller l'écran CTRL+ALT+D Afficher le Bureau
la commande uname -o = imprime os name www.teramagazine.tk | numéro 6
44
Quelle solution RAID vous convient? ♦FAITES LE BON CHOIX DU RAID ADAPTÉ À VOS BESOINS
L
es disques durs ne durent pas éternellement. Chaque disque dur a une durée de vie durant laquelle, il peut tomber en panne plusieurs fois. Les constructeurs utilisent l’indice MTBF (mean time between failure) qui représente la durée de vie avant que le disque tombe en panne. La valeur
moyenne du MTBF est 1 million d’heures ce qui correspond à 114 ans pour un nouveau disque dur. Cette valeur représente un ratio de panne annuel ( AFR annual failure rate) de 1 %. Cependant, Google affirme dans une recherche (http:// research.google.com/ archive/disk_failures. pdf) que les valeurs
S
AFR varient entre 2% et 6% selon l’âge du disque dur. Ce qui signifie que, si l’AFR est de 4 % et que vous utilisez 10 disques durs. Vous avez la possibilité de 66% de passer une année sans pannes. Le danger existe bien les disques tombent en panne prenez vos gardes.
Par : YASSIN HAMICHI INGÉNIEUR EN INFORMATIQUE . SPÉCIALISTE EN RÉCUPERATION ET STOCKAGE DES DONNÉES
S
oyons clairs, le RAID n’est pas une solution de backup. Il vous permettra de créer un large et fiable système de stockage composé de petits disques de stockage non fiable. Mais il ne vous protégera pas contre la suppression des données (surtout la fameuse commande linux rm –rf /) non plus contre une panne matérielle. Aucune configuration RAID ne protègera la fiabilité des données contre la corruption d'un fichier système ou d'un logiciel.
ans être un spécialiste du stockage de données, vous savez que Les données constituent la ressource la plus vitale des entreprises d’aujourd’hui. Les pertes de données (utilisateurs, donnée internes.) peuvent provoquer des catastrophes. Même si vous effectuez des sauvegardes régulières. Vous avez besoin d’une méthode de protection qui garantisse que vos données sont protégées et accessibles sans interruption en cas de défaillance d’un disque en ligne surtout que Les pannes arrivent toujours au mauvais moment et sans prévenir avant que ne puissiez faire votre sauvegarde. L’un des moyens les plus économiques pour assurer à la fois la protection et l’accessibilité de vos données est L’ajout d’un système RAID à vos configurations de stockage.
45
www.teramagazine.tk | numéro 6
RAID,C'EST QUOI ? RAID (Redundant Array of Independents Disks, matrice redondante de disques indépendants) est une technologie simple qui améliore les performances des solutions de stockage externe. Ce document décrit les différents niveaux RAID utilisés dans les dispositifs professionnels de stockage et les caractéristiques utilisées par chaque mode afin d'optimiser la vitesse, la sécurité ou la capacité de stockage des disques durs dans le système RAID. La technologie RAID divise ou copie la tâche d'un parmi de nombreux disques durs (ou simplement de deux) afin d'améliorer les performances ou de générer la redondance des données en cas de panne du disque. Vous pouvez choisir comment le dispositif manipule les données en configurant son mode RAID. Il existe deux Types de systèmes RAID : un RAID logiciel et un autre matériel. Dans cet article on se focalise sur le premier type qui est le plus courant. À la fin nous allons présenter une comparaison entre les deux systèmes.
QUEL RAID CHOISIR ? Pour choisir le niveau RAID le mieux adapté à vos besoins, commencez par prendre en compte les facteurs ci-dessous. Il existe un rapport de compromis entre chacun de ces facteurs : • Coût du stockage sur disques • Niveau de protection ou de disponibilité des données requis (bas, moyen, élevé) • Niveau de performances requis (bas, moyen, élevé) Le facteur coût se ramène à un compromis entre la capacité des disques et l’optimisation de la disponibilité des données ou des performances. Par
exemple, RAID 1/10 et le nombre limité de disques de RAID 6 peuvent s’avérer coûteux en termes d’espace disque perdu (50 %), mais performants en terme de disponibilité des données. Le niveau de performances dépend aussi du mode d’accès (aléatoire/séquentiel, écriture/lecture, long/court) et du nombre d’utilisateurs. Ce livre blanc entend donner un aperçu des niveaux de performance et de disponibilité des différents systèmes RAID en général, au risque de ne pas être pertinent pour tous les scénarios d’utilisation.
le Raid n’est pas un remplacement des solutions de backup Termes RAID à retenir : Pour mieux comprendre comment la technologie RAID fonctionne, veuillez tout d'abord vous familiariser avec les termes ci-dessous : LE STRIPING (ENTRELACEMENT) est la séparation des données entre plusieurs disques. Les matrices RAID en striping visent à regrouper la capacité maximale en un seul volume. LE MIRRORING (MISE EN MIROIR) correspond à la copie de données vers un ou plusieurs disques. Les matrices RAID en mir-roring permettent généralement la panne d'au moins un disque de la matrice sans aucune perte de données, en fonction du niveau RAID de cette matrice. LA TOLÉRANCE AUX PANNES ✦ permet à une matrice RAID de continuer à fonctionner (c'est-à-dire que les données stockées dans la matrice sont encore disponibles pour l'utilisateur) en cas de panne d'un disque. Toutes les matrices RAID en mir-roring ne sont pas conviviales. Par exemple, certains dispositifs RAID doivent être éteints avant qu'un disque défaillant ne soit remplacé. www.teramagazine.tk | numéro 6
46
Description des niveaux RAID : RAID 0 (entrelacement) Raid 0 est le mode RAID le plus rapide. Nécessitant au moins 2 disques, RAID 0 recopie ( stripe ) les données sur chaque disque. Les capacités disponibles de chaque disque sont ajoutées afin qu'un seul volume logique apparaisse sur l'ordinateur. Ce modèle Offre un niveau de performances optimal à bas coût, mais aucune tolérance aux pannes ; la défaillance d’un seul disque résulte dans la perte de TOUTES les données. Les entreprises utilisent RAID 0 principalement pour les tâches nécessitant un accès rapide à une grande capacité de stockage temporaire sur disques (comme la post-production audio/vidéo, l’imagerie multimédia, la CAO, la journalisation des données, etc.) où, en cas de défaillance de disques, les données peuvent être rechargées facilement sans conséquence sur l’activité de l’entreprise. Il n’y a également aucun désavantage en termes de coût, puisque tout l’espace de stockage est utilisable. La capacité utilisable de RAID 0 est de 100 %, puisque tous les disques disponibles sont utilisés.
RAID 0 est idéal pour les utilisateurs qui nécessitent une vitesse et une capacité maximales
RAID 1 (écriture miroir) Le principe de RAID 1 est la conservation d’ensembles dupliqués de toutes les données sur des disques séparés. Ce système offre également le plus haut niveau de disponibilité des données puisque deux copies complètes de toutes les informations sont conservées. La configuration doit comprendre deux disques Un volume logique apparaît sur l'or-
47
www.teramagazine.tk | numéro 6
dinateur et la capacité disponible combinée des deux disques est limitée à la capacité du disque de capacité inférieure. Si l'un des deux disques tombe en panne, les données sont immédiatement disponibles sur l'autre disque. Il existe un désavantage en termes de coût, puisque la capacité utilisable correspond à la moitié du nombre de disques disponibles. RAID 1 offre une garantie de protection des données pour les environnements où la redondance absolue des données, la disponibilité et les performances jouent un rôle essentiel, et où le coût par gigaoctet de capacité utilisable est un élément secondaire. La capacité utilisable de RAID 1 correspond à 50 % des disques disponibles dans l’ensemble RAID. Choix : Offre un haut niveau de tolérance aux pannes, à un prix abordable, pour les configurations comprenant deux disques Aucune donnée n'est perdue si l'un des deux disques tombe en panne.
RAID 3
Raid 5
RAID 3 utilise un striping d'octets avec un disque de parité dédié (disque 4 sur les illustrations à droite) afin qu'un seul volume logique apparaisse sur l'ordinateur. Une matrice RAID 3 peut tolérer la panne d'un seul disque sans aucune perte de données. Si l'un des deux disques tombe en panne, les données du disque défaillant peuvent être reconstruites sur un disque de remplacement. En cas de défaillance d’un deuxième disque avant que les données n'aient pu être reconstruites sur un disque de remplacement, toutes les données de la matrice seront perdues. Choix : RAID 3 fournit une bonne sécurité de données pour les environnements dans lesquels de longs fichiers séquentiels sont lus, comme par exemple des fichiers vidéo. La panne d'un disque n'entraîne pas d'interruption de service car les données sont lues à partir de blocs de parité. RAID 3 est utile pour les personnes qui souhaitent un certain niveau de performance et ont besoin d'avoir constamment accès à leur données, par exemple les éditeurs vidéo. La technologie RAID 3 n'est pas recommandée pour une utilisation intensive avec des fichiers non séquentiels car les performances de lecture aléatoire sont entravées par le disque de parité dédié.
RAID 5 combine l’entrelacement de RAID 0 et la redondance des données dans une matrice avec un minimum de trois disques. Conçue pour assurer la tolérance aux pannes, mais il ne nécessite pas la duplication des données comme RAID 1. Les données sont entrelacées sur tous les disques de la pile .En plus d’un bloc de parité (P) est enregistré sur la même bande pour chaque bloc de données. Ce bloc de parité calculée à partir des autres unités de bande de la même bande.
Si l'un des deux disques tombe en panne, les données du disque défaillant peuvent être reconstruites sur un disque de remplacement. Aucune donnée n'est perdue en cas de panne d'un seul disque, mais si un deuxième disque tombe en panne avant que les données n'aient pu être reconstruites sur un
www.teramagazine.tk | numéro 6
48
disque de remplacement, toutes les données de la matrice seront perdues. Choix : Les performances en lecture sont donc excellentes, mais les écritures sont pénalisées en ce que les données de parité doivent être recalculées et enregistrées en même temps que les nouvelles données. Pour éviter les goulets d’étranglement, les données de parité pour des bandes consécutives sont imbriquées avec les données sur tous les disques de la pile. RAID 5 est devenu la référence pour les environnements de serveurs nécessitant une capacité de tolérance aux pannes. Comme la parité RAID nécessite un disque par ensemble RAID, la capacité utilisable correspond toujours à un disque de moins par rapport au nombre de disques disponibles dans la configuration de capacité disponible – ce qui est toujours mieux que RAID 1, où la capacité utilisable n’est que de 50 %. Les configurations RAID 5 nécessitent un minimum de trois disques et un maximum de seize disques. La capacité RAID 5 utilisable est comprise entre 67 % et 94 %, en fonction du nombre de disques de données dans l’ensemble RAID.
•
On peut intégrer ce disque de secours au RAID et repartir l’espace de secours sur l’ensemble du RAID 5. Cette pile s’appelle RAID5EE. Le fait de passer d’une pile RAID 5 à quatre disques avec un disque de secours à une pile RAID5EE à cinq disques se traduira par une augmentation des performances de l’ordre de 25 %. Cette configuration réduit le coût lié à l’utilisation d’un disque de secours. Ce niveau RAID ne peut tolérer qu’une seule panne de disque. La capacité RAID5EE utilisable est comprise entre 50 % et 88 %, en fonction du nombre de disques de données dans l’ensemble RAID. Les configurations RAID5EE nécessitent un minimum de quatre disques et un maximum de seize disques.
RAID 6
Dans RAID 6, les données sont en striping sur tous les disques (quatre au minimum) et deux blocs de parité sont enregistrés sur la même bande pour chaque bloc de données (p et q sur le schéma Fig.8). Si l'un des deux disques tombe en panne, les
Raid5EE
Utilisation d’un disque de secours sur RAID5 Pour affronter les risques, un disque de secours est utilisé dans le RAID 5 pour reconstruire le système dès qu'un disque tombe en panne donc au moins quatre disques sont nécessaires. Ce disque peut être utilisé par deux méthodes : • Il est Ajouté en tant que disque de secours » vide » et au repos dans l’attente d’une panne. Cependant Cette technique ne fait pas un usage optimal du disque de secours.
Fig.8 : schéma du RAID6
données du disque défaillant peuvent être reconstruites sur un disque de remplacement. Ce mode RAID peut prendre en charge jusqu'à deux disques sans aucune perte de données. RAID 6 fournit une reconstruction plus rapide des données issues d'un disque défaillant. Choix : RAID 6 assure une bonne fiabilité des données, mais également une reconstruction efficace en cas de panne d'un disque. RAID 6 est par conséquent utile pour les personnes qui souhaitent un niveau élevé de sécurité et pour lesquelles les performances sont moins importantes.
Remarque : Avec des disques SATA plus économiques, mais moins fiables, dans une configuration de type RAID 6, il est possible de parvenir à
49
www.teramagazine.tk | numéro 6
un plus haut niveau de disponibilité qu’avec une pile de type RAID 5. Cela est dû au fait que le deuxième disque de parité dans l’ensemble RAID 6 peut gérer une deuxième défaillance au cours d’une reconstitution, contrairement au RAID5. Lors de la reconstruction de donné après une panne d’un disque le
système RAID 6 il ne représente pas de vulnérabilité puisque le deuxième disque de parité agit comme protecteur si jamais une panne arrive dans cette phase critique.
NIVEAUX RAID COMBINÉS Nous pouvons combiner un ou plusieurs types de RAID pour profiter des caractéristiques de chacun.
RAID 10 (ensembles
RAID 1 entrelacés)
RAID 10 (également appelé RAID 1+0) est un autre niveau RAID qui combine les attributs des autres niveaux, en particulier RAID 1 et RAID 0. Ce niveau offre l’optimisation des performances inhérente à l’entrelacement des données tout en assurant la redondance des données caractéristique de l’écriture miroir. RAID 10 est le résultat de la formation d’une pile RAID 0 à partir d’au moins deux piles RAID 1. Ce niveau RAID assure la tolérance aux pannes – jusqu’à un disque par sous-pile peut tomber en panne sans entraîner de perte de données. La capacité utilisable de RAID 10 correspond à 50 % de la capacité des disques disponibles. Le nombre de disques des matrices RAID 10 doit être un multiple de quatre.
RAID 50 (ensembles RAID 5 entrelacés)
Choix RAID 0+1 fournit de bonnes vitesses en raison du striping de RAID 0 mais réduit de moitié la capacité disponible d'un dispositif (en supposent que tous les disques de la matrice aient la même capacité)
Combine des ensembles RAID 5 multiples avec RAID 0 (Entrelacement). L’entrelacement permet d’accroître la capacité et les performances sans avoir à ajouter de disques à chaque pile RAID 5 (ce qui réduirait la disponibilité des données et pourrait avoir un impact sur les performances en mode dégradé). Cette configuration permet de bénéficier des avantages de RAID 5 dans la mesure où la pile fractionnée RAID 0 permet d’incorporer beaucoup plus de disques dans une même unité logique. Jusqu’à un disque dans chaque sous-pile peut tomber en panne www.teramagazine.tk | numéro 6
50
sans perte de données. Les délais de reconstitution sont également moindres que dans une pile RAID 5 unique de grande capacité. Le choix des RAID combinés vous aide à profiter des avantages offerts par chaque RAID utilisé. Cependant, la combinaison nécessite un investissement supplémentaire en matériels. Le choix du RAID convenable est déterminé par vos besoins et votre stratégie de stockage. Le tableau suivant peut vous aider à mieux comprendre les avantages et les défauts de chacun des systèmes RAID que nous avons pu voir dans cet article . bien entendu, rien n'est gratuit, et la souplesse s'acquiert certainement au prix de performances un peu moindres.
Quel niveau RAID est le mieux adapté à mes besoins ? COMPARAISON DES NIVEAUX RAID
51
www.teramagazine.tk | numéro 6
RAID MATÉRIEL
RAID LOGICIEL
RAID LOGICIEL ET MATÉRIEL Idéal pour les applications basées sur des blocs de grande taille, comme • l’entreposage de données ou la vidéotransmission en continu. Convient • aussi dans les cas où les serveurs disposent des cycles UC qui leur permettent de gérer les opérations gourmandes en E/S requises par certains niveaux RAID. Inclus dans le système d’exploitation, comme Windows et Linux. Toutes les fonctions RAID sont gérées par l’unité centrale de l’hôte, ce qui peut gravement amputer sa capacité à effectuer d’autres calculs.
Économique Nécessite seulement un contrôleur standard
Idéal pour les applications basées sur des blocs de petite taille, comme les bases de données transactionnelles et les serveurs Web. Les opérations RAID gourmandes en temps processeur sont déchargées de l’unité centrale de l’hôte pour optimiser les performances. L’utilisation d’un cache à écriture différée avec batterie de secours peut améliorer les performances de manière considérable sans risque de perte de données.
Avantages en matière de protection des données et de performances. Fonctionnalités de tolérance aux pannes plus robustes et performances optimisées par rapport au système RAID logiciel
Calcul de la capacité du RAID : Avant la mise en place du RAID, il faut faire des calculs sur la capacité qui sera disponible. il existe un outil en ligne qui vous permet d'obtenir des résultats exactes: www.ibeast.com/content/tools/Raidcalc/RaidCalc.asp La formule de calcul diffère d'un système RAID à un autre.
Mdadm Puisque on parle de linux dans ce numéro,le raid logiciel peut être mis en linux à l'aide de mdadm ou à l'aide de LVM2. le vidéo ci-dessous réalisé par teramagazine vous montre l'utilisation de mdadm : http://www.youtube.com/watch?v=_o-8o5VpRck
• •
Calcul de la capacité RAID 5 Tous les disques d'un système RAID 5 doivent avoir la même capacité. La capacité de stockage d'une configuration RAID de niveau 5 est calculée en soustrayant 1 au nombre de disques et en multipliant par la capacité de disque, soit C = (n-1)*d où : C = capacité disponible n = nombre de disques d = capacité de disque Par exemple, dans une matrice RAID 5 avec quatre lecteurs chacun d'une capacité de 1000 Go, la capacité totale de la matrice se-rait de 3000 Go : C = (4-1)*1000
Important le RAID logiciel nous permet de forcer la création d'un système ne comportant pas tous les morceaux requis et de www.teramagazine.tk | numéro 6 52 modeler à chaud sa disposition.
Le hacking génére de l'argent L
e piratage informatique n’est plus un simple hobby ou une démonstration de force et de compétences, mais il devient de plus en plus un business attirant. Dans ce domaine on peut faire de l’argent par mille moyens : SPAMMING, botnet, vente de vulnérabilité 0 day, espionnage, etc. Tout est à vendre.
tement annulée si l’exploit est diffusée ou distribuée). La valeur de l’exploit est déterminée par trois facteurs : Difficulté, gravité (danger) et l’impact.
Marché des vulnérabilités zero-day Ce marché est en cours d'évolution rapide. Une investigation publiée dans un article dans la Forbes Magazine intitulé “Shopping For Zero-Days: A Price List For Hackers’ Secret Software Exploits“ que vous pouvez trouver ici : http://onforb.es/ UvM4Jf, estime que les prix des exploits zero-day varient entre 1000$ à 100,000$. le tableau suivant présente les prix des vulnérabilités qui touchent un ensemble de logiciels/systèmes les plus populaires. Les prix bien sur, demandent une vente exclusive (la valeur d’une vulnérabilité 0-day est immédia-
53
www.teramagazine.tk | numéro 6
En effet, trouver une vulnérabilité sous Windows est plus facile qu’IOS d’Apple. Cependant, une vulnérabilité qui affecte OS X a moins de valeur qu’une vulnérabilité découverte en chrome ou un navigateur populaire. Pour la gravité, une vulnérabilité qui offre la possibilité d’exécuter un code à distance est plus grande est donc plus cher. La valeur de la vulnérabilité 0-day demeure jusqu’à ce qu’un patch soit réalisé par les éditeurs
du logiciel ou du système concerné.
Un million de dollars. Pour les chercheurs en sécurité, les vendeurs de logiciels tels que Google, Facebook donnent des prix pour les vulnérabilités découvertes pour mieux sécuriser leurs produits. Dans Google Pwnium, le challenge était: 1 million de $ pour celui qui pirate le navigateur Google chrome. Seulement deux gagnants ont réussi à décrocher 60,000$ pour leurs exploit 0-day. On peut aussi, tirer profit du hacking en exposant les failles découvertes à des acteurs en sécurité (chercheurs, Labo, antivirus..) ou aux éditeurs des logiciels (Microsoft, Adobe,..) ou simplement présenter ses retrouvailles dans une des conférences de sécurité qui sont organisées un peu partout pour attirer les recruteurs.
Où vendre Sur la base de données injector(http://1337day. com/) vous trouvez tout le temps des vulnérabilités présentées à vendre. Les prix changent selon l’importance du produit offert. Des offres gratuites et d’autres à des milliers de dollars, un vrai marché informatique. Les bases similaires se sont multipliées sur Internet.
Location d’un botnet – Combien ça coûte ? Un botnet est un réseau de milliers d'ordinateurs sous le contrôle d'un seul pirate. Ce réseau permet d'envoyer du spam ou encore d'attaquer des sites en les surchargeant (via Ddos). Une étude menée par Verisign (iDefense Intelligence Operations Team) montre que le coût moyen de location d'un botnet est $9 par heure ou $67 pour 24 heures d’utilisation. La même étude affirme que 25 offre de location est disponible avec des possibilités de réduction. Les propriétaires de botnet en plus de se faire de l’argent en louant leurs réseaux, ils font parfois du chantage en demandant des rançons pour vous éviter des attaques DDOS contre votre site web. En acte de gentillesse il vous propose parfois 30% de réduction. Voici un exemple de mail que vous pouvez lire un jour : “Hello. If you want to continue having your site operational, you must pay us 10 000 rubles monthly. Attention! Starting as of DATE your site will be a subject to a DDoS attack. Your site will remain unavailable until you pay us. The first attack will involve 2,000 bots. If you contact the companies involved in the protection of DDoS-attacks and they begin to block our bots, we will increase the number of bots to 50 000, and the protection of 50 000 bots is very, very expensive. You will also receive several bonuses. 1. 30% discount if you request DDoS attack on your competitors/enemies. Fair market value ddos attacks a simple site is about $ 100 per night, for you it will cost only 70 $ per day. 2. If we turn to your competitors / enemies, to make an attack on your site, then we deny them.”
Vous pouvez aussi vous connecter à des chaînes irc pour visiter des marchés noirs pour les botnets, code de virus, cartes bancaires tout ce que vous pouvez imaginer. Pour avoir une idée regardez cette vidéo : http://www.youtube.com/watch?v=mQtfefw9Co8 Pour avoir plus d’informations sur comment exploiter le marché des vulnérabilités et gagner de l’argent d’une manière légitime je vous invite à lire l’article, “The legitimate vulnerability market: the secretive world of 0-day exploit sales”.
C’est un vrai travail de mafia. Avec un bénéfice similaire, le domaine du piratage ou celui de la sécurité informatique attirera sans doute plus d’intérêt. Cette évolution fait peur aux intéressés de la sécurité informatique, car tant que l’argent devient un moteur du piratage informatique les dangers qui menacent les internautes s’aggraveront de plus en plus, prenez soin de votre sécurité. www.teramagazine.tk | numéro 6
54
Botnets-as-aService (BaaS) ➤ Créer un réseau de bot (botnet) facilement : CAPFIRE4 La tendance actuelle : les services en ligne, arrive bien chez les pirates informatiques. Ils offrent à leurs tours, leurs services malicieux en ligne ou sur Cloud pour les intéressés. L’exemple unique dont on parle dans les milieux de la recherche en sécurité est Capfire4, que je présente dans ce modeste article.
Capfire4, c'est quoi?: Capfire(capfire4.com) est un service en ligne qui présente un support technique payant aux gens qui ont des intentions de piratages afin de mener leurs propres attaque sans autant avoir des connaissances techniques avancée. Il permet de créer et personnaliser des malwares (logiciels malveillants), il propose une interface pour contrôler les victimes à travers une interface web simple à utiliser. Toutes les opérations sont bien documentées et en détail.
chevaux de Troie personnalisés, gérer les victimes infectées par le navigateur Web et d'héberger les logiciels malveillants. Cela signifie que les clients n'ont pas à se soucier des questions techniques, et ils n'ont pas besoin de compétences particulières ou des connaissances. Les prestataires fournissent les outils, l'hébergement et le serveur de commandement et de contrôle. Bref tout ce dont vous avez besoin.
1-Lorsque vous vous connectez à votre compte
personnel, vous pouvez voir le menu principal, des tutoriels et des raccourcis.
2-Ensuite, vous pouvez
créer un nouveau malware personnalisé (cheval de Troie) qui sera générés en temps réel. Ils prennent soin des détections antivirus pour vous. Les echantillons créés ont une détection très base.
3-Alors, le temps d'accueillir le malware vient. Les
Le malware populaire sur ce site est RAT (Remote administration tool), je pense que la majorité des gens qui ont débuté en sécurité informatique ou en piratage ont crée un. Ce programme permet de faire des taches sur la machine victime comme le keylogging (enregistrement des frappes sur clavier), vole de mot de passe, capture écran ….
Quelques étapes sont suffiantes pour créer un botnet Les clients paient pour le service, puis ils ont accès à un portail Web où ils peuvent générer des
55
www.teramagazine.tk | numéro 6
clients peuvent choisir entre des domaines faux qui semblent légitimes. L'administrateur du service a acheté deux domaines pour créer les sousdomaines faux. Pour vous permettre d’envoyer le lien de votre malware à vos victimes par mail ou autre.
3
²
1 4-Enfin, une fois infecté, vous
pouvez facilement gérer vos victimes. Vous pouvez effectuer le contrôle à distance sur la machine, mot de passe volé, et exécution de la commande. Désinstaller le logiciel, Reboot, fermeture de session utilisateur, Tuer le processus, Envoyer commande DOS, Télécharger un fichier exécutable, Ouvrir la page Web.
4
5-Si vous avez besoin d'infecter plus de cibles, vous n’aurez qu’à payer plus. En guise de conclusion, le phénomène de monétiser les malwares est de plus en plus populaire sur Internet comme le cas de cafire qui permet aux utilisateurs sans compétences techniques de pirater les autres. Probablement d’autres services similaires à capfire vont voir le jour. Désormais, il est possible que vous soyez soit un client soit une victime puisque tout le monde pourra devenir pirate.
6 5
www.teramagazine.tk | numéro 6
56
Pensez en Assembleur Comprenez mieux votre CPU
ΔNous allons apprendre à écrire une routineutiliser, utiliser les boucle et la pile... ΔUne des bonnes taches de codage est bâtir votre propre armure de routines utiles.
Routine On utilise le mot routine dans le jargon du langage assembleur pour parler d'un sous-programme, fonction ou d'une procédure. Le système d'exploitation comporte un certain nombre de routines . Les plus importantes constituent le noyau (kernel en anglais).xs
57
D
ans le dernier article, nous avons appris comment afficher à l’aide d’un code en assembleur, un message à l’écran. Nous avons vu que cette tâche simple pour les langages de haut niveau demande un peu de codage supplémentaire en assembleur. Les développeurs qui utilisent les langages du haut niveaux (c, c++java…) sont habitués aux appels des fonctions ou des bibliothèques pour réutiliser un code existant. Pour l’assembleur, les choses sont un peu similaire, nous pouvons créer nos propres routines et les appeler quand on aura besoin de les utiliser. C’est exactement ce que nous allons apprendre durant cet article. C’est intéressant.
sentent le code pour afficher une chaîne de caractère à l’écran. Si on veut faire un code plus modulaire nous pouvant les placer dans une routine séparée qui sera appelée par la suite ou dans d'autre programme. Nous allons appeler cette routine print_string. Elle aura besoin que connaître la longueur et l’emplacement du message à imprimer sur l’écran. Nous allons mettre la chaîne de caractères à affichée dans le registre ECX, appeler notre routine print_string et sortir. Notre programme ressemblera en gros à quelque chose comme : section .text global _start _start: mov ecx, message (code de la print_string ici) Si vous vous rappelez bien, mov eax,1 les lignes ci-dessous préint 0x80
www.teramagazine.tk | numéro 6
section .data message db "teramag",10,0 À ce code, manque bien sur la définition de notre routine print_string, que nous allons définir par la suite. Comme vous remarquez, nous n’avons pas définit dans notre programme la longueur du message (chaîne) à affiché et en plus nous avons mis un zéro à la fin. Il s’agit d’une astuce utile : le zéro ne veut rien dire en ASCII et il ne sera pas affiché (contrairement au 10 qui est le retour chariot ou l’indice de nouvelle ligne). Notre routine print_string peut le rechercher comme étant la fin de la chaîne et par suite elle l’utilisera pour calculer la longueur du message. Vous allez comprendre plus par la suite l’utilité de cette astuce. Nous allons donc par la suite écrire le code d’une routine
sens de l'éxcusion du programme
qui permet de connaître la taille de la chaîne du mov eax,10 message et l’afficher à l’écran. mov ebx,cx À connaître avant de dévelop- mon_label: ;code à exécuter ici add eax,40 per une routine Comme le label _start que nous avons déjà vu call, ret : (dans l’article précédent). Ici mon_label n’est pas Les instructions call et ret utilise la pile (La pile est un espace mémoire dans lequel on peut sauve- une instruction du CPU mais seulement un point de référencement dans le code, vers lequel on garder temporairement des valeurs pour les récupérer par la suite ) pour enregistrer l’emplacement peut sauter. Dans une expression de condition if, nous comdes appels dans le code. parons la valeur du registre à une valeur et ensuite Quand on utilise un call, l’emplacement de l’exécution en cours dans le code est placé dans la pile on saute « jump ». Pour comparer, on utilise l’instruction cmp : et l’exécution saute à l’emplacement que nous Cmp eax, 100 indiquons par call (le code de la routine dans notre Dans l’ exemple suivant, nous comparons le cas). contenu du registre EAX et le nombre 100 . pour compléter le bloque de conditions nous allons ajouter des labels et un saut : Code Mov eax, 100 instruction 1,2.. Cmp eax,100 Je label_cent call routine la routine ;code N1 Label_cent : ;code N2 Ceci ressemble à if (eax==100) { code N1} else instruction N {code N2}. ret
Quand vous utilisez un ret (au sein de notre routine), c’est l’inverse. L’emplacement original de l’exécution est récupéré de la pile et l’exécution continue dans le code.
if,else,jmp Après avoir compris call et return, nous allons explorer de nouveaux concepts. Probablement, vous vous demandez si on peut utiliser une expression de condition telle qu’if-else en assembleur. La réponse est oui, bien évidemment, mais on utilise les conditions un peu différemment des autres langages (if else n’existe pas en tant qu’instruction). En assembleur, on compare le contenu d’un registre aux nombres ou au contenu d’un autre registre et on saute « jumps » à différents places dans le code selon le résultat de la comparaison. Pour l’exemple dans ce code « jmp » déplace l’exécution du code vers mon_label jmp mon_label
Je crois que Les choses deviennent un peu claires. "Je" est une instruction de comparaison qui veut dire «jump if equal » c-a-d si le résultat de la comparaison est l’égalité saute au code qui se trouve en dessous du label label_cent. Vous pouvez, comme j’ai déjà di, comparer la valeur de deux registres ; cmp eax, ebx comme vous pouvez utiliser différentes types d’instructions de saut selon le résultat de cmp (voir le tableau). Je jump if equal = Jne jump if not equal != Jg jump if greater than > Jl jump if less than < Jge jump if greater than or equal to >= Jle jump if equal less than or equal to <= Donc à l’aide de cmp et ces instructions (je,jne..) de saut, vous Contrôlez l’exécution de votre programme et vous choisissez un bloc spécifique à exécuter en approchant ainsi le « if-else « des langages de haut niveaux. Nous allons investir ces connaissances, pour calculer la taille de notre chaine à afficher. www.teramagazine.tk | numéro 6
58
Utilisation de la mémoire. Avant d'écrire notre routine, il reste une chose à connaître, il s’agit de la sauvegarde des données dans la mémoire. Un registre peut contenir un nombre qui peut être utilisé dans les différentes opérations (copie, comparaison. ). En outre, ces registres peuvent aussi pointer sur une partie de la mémoire. Par exemple nous avons besoin de faire des calculs avec le nombre 5000 Mov eax,5000 Cependant, nous pouvons aussi travailler avec l’emplacement 5000 de la mémoire en utilisant la méthode appelée « déréférencement ». Vous pouvez imaginer que la mémoire est un ensemble de cellules alignées où chacune a un emplacement précis et elle contient une information. Nous pouvons alors extraire l’information se trouvant dans la cellule qui se trouve à l’emplacement 5000 en utilisant le code : Mov eax, 5000 Mov ebx, [eax] Notez que les crochets [] sont très importants car, ils indiquent à l’assembleur que nous ne voulons pas copier le nombre 5000 dans EAX, mais la valeur stockée dans l’emplacement mémoire ayant pour adresse 5000. Ce mécanisme ressemble à l’utilisation des pointeurs en C. Notons que les OS modernes chargent les programmes en différents emplacement en mémoire donc vous ne pouvez pas garantir ce que peux contenir la position 5000. En revanche, vous pouvez utiliser des label dans la section .data pour retrouver le contenu à partir de la mémoire .Exemple Mov eax, le_text Mov ebx, [eax] Section .data Le_text db « Hello » , 0 Dans la première ligne nous avons placé l’emplacement mémoire de la chaîne le_text dans le registre EAX. Le contenu est bien sur le message « Hello » libellé par le_text. En utilisant le label, nous pouvons mettre sa position dans les registres et l’utiliser. Donc EAX, dans ce cas, peut contenir 346465 ou une valeur selon ou l’OS a mis la valeur «Hello » dans la mémoire. Dans la deuxième ligne, grâce aux crochets nous pointons le premier octet d’EAX sur EBX. Vous pouvez deviner que le premier octet est le code ASCII de H. Ce déréférencement permet de manipuler l’allocation de la mémoire en utilisant les
59
www.teramagazine.tk | numéro 6
registres. C’était un point important que nous ayons couvert, désormais on fait un grand Progress.
►Ecrire la routine .. Après ces explications nous partons pour créer notre routine. Si vous vous rappelez au début de cet article, j’ai dit que notre routine aura besoin qu’on lui passe la valeur du message a imprimé et sa longueur. Pour la valeur nous allons la mettre dans le registre ECX. C’est là où le noyau cherchera la valeur. En revanche, Pour la taille du message, nous allons utiliser les connaissances requises en haut pour le calculer. L’algorithme a suivre est simple nous allons compter caractère par caractère jusqu'à ce qu’on arrive au 0 que j’ai ajouté comme signe de fin (le terminus ). Le code de notre routine en complet sera de la forme : Print_string : Push ecx Mov edx, 0 .loop :
cmp byte [ecx],0 Je .finish Inc ex Inc ecx Jmp .loop
;zero atteint ou non
.finish : Mov eax,4 Mov ebx,1 Pop ecx Int 0x80 ; appel noyau Ret ;retourner au code appelant la routine Cette définition doit être mise dans la section .text du code qui l’utilise. J’explique ce code : Dans l'entête on met le nom de la routine sous forme de label. Ensuite, nous mettons en pile le contenu du registre ESX car, la routine sera appelée dans un code existant et par conséquent le ESX peut contenir des valeurs "globales" importantes pour la suite du programme. Nous faisons cette sauvegarde sur la pile car, nous utilisons temporairement le registre ESX pour calculer la taille de notre chaîne. Nous avons utilisé aussi le registre EDX pour compter le nombre de caractères existants. Vous pouvez utiliser EAX,EBX, ECX pour cette tache. Je
le préfère parce que le noyau s’attend à y trouver la taille de la chaîne (a affichée). Après, nous utilisons le label .loop pour réaliser notre boucle. Nous marquons ici un point très important. Il s’agit de la présence du point au début du label. Ce point indique que le label est local c.-à-d. Il n’est utilisé qu’au sein de notre routine print_ string. Quand on écrit jmp .loop , l’assembleur (NASM) ne cherche pas ce label à partir du début du code qui utilise notre routine mais il cherche à l’intérieur du code de la routine print_sting (label en section text). Dans la boucle, nous commençons par la lecture du premier octet de notre chaîne et on le compare avec 0 pour savoir si la fin de la chaîne est atteinte. Dans la comparaison nous utilisons [ECX] qui représente la position sur mémoire du premier octet du contenu (notre chaîne "teramag") du registre ECX . Nous utilisons aussi le mot byte pour dire à l’assembleur que nous voulons faire une comparaison d’un octet car nous utilisons le code ASCI et chaque caractère est stocké seul sur un octet de mémoire. Nous comparons donc le contenu de cet emplacement mémoire avec 0. Si on atteint le zéro qui est la fin de chaîne on saute au code sous le label .finish, sinon nous incrémentons le compteur EDX en utilisant l’instruction inc ( dec pour décrémenter). Nous incrémentons aussi le ESX pour qu’il pointe sur le prochain caractère (octet). Après ces deux incrémentations on saute au début de la boucle pour continuer la comparaison. Quand la boucle se termine, nous passons au bloc du code sous le label local .finish . à l’issue de notre boucle on obtiendra dans le registre EDX la taille de notre chaîne. Il nous reste à indiquer au noyau qu’il doit afficher ce message pour le faire nous mettons la valeur 4 dans EAX. Le ECX doit retrouver la valeur du message a affiché donc on fait un pop (pop ecx) pour récupérer la valeur initiale. À la fin pour retourner au programme principal qui a appelé notre routine nous utilisons l’instruction ret. Ainsi nous avons mis en place notre routine qui peut être utilisé par vos programmes en assembleur futurs. Une fois le code de la routine est prêt nous pouvons l'inclure dans le code principal de notre programme pour faire le test.
Test :
Le code complet sera fourni sous le lien pastbin
suivant : http://pastebin.com/tk3LtkR0 Je nomme le fichier de mon code tera.asm et nous exécutons les commandes de compilation de code : Nasm –f elf tera.asm && ld –o tera tera.o ensuite exécuter ./tera.
Appel dans un programme séparé. Cette routine que nous avons réalisé, peut être mise dans un fichier *.asm sous forme de bibliothèque. Nous pouvons alors l'inclure dans un autre code pour utiliser notre routine en utilisant %include « *.asm ». Nous allons découvrir cette méthode dans l’article, qui sera publié dans le prochain numéro de revue Teramagazine.
LE MOIS PROCHAIN Récapitulons ce que nous avons appris jusqu'à ces lignes. Nous avons appris comment écrire un programme en assembleur et comment l’exécuter en utilisant NASM. Nous avons appris l’utilisation des registres, de la pile, des boucles. Nous avons vu comment faire une comparaison et comment écrire une routine et l’appeler dans un code. Ces connaissances sont les clés fondamentales pour apprendre le langage assembleur. Dans l’article prochain nous allons découvrir comment faire un programme plus avancé. www.teramagazine.tk | numéro 6
60
ANNEXE Comprendre la Pile : Le langage assembleur n’as pas le concept de variable comme c’est le cas des les langages de haut niveaux. Il offre une alternative : l’utilisation des registres pour contenir des valeurs. Cependant, le nombre des registres est limité, dans le cas où on aura besoin de plus de registre pour contenir plus de valeurs alors l’utilisation de la pile entre en jeu. La pile est un espace mémoire dans lequel on peut sauvegarder temporairement des valeurs pour les récupérer par la suite. La pile suit le système LIFO –Last-in First-out- . si vous placez les nombres 1,2 et 3 dans la pile selon cet ordre, alors quand vous voulez les récupérer vous aurez 3,2,1. Vous pouvez imaginer que la pile ressemble à un cylindre. les objets qu’on met en premier se place au fond et les derniers objets sont en haut. Cette gestion par pop/push fait que la pile est plus rapide en location d’espace et facile à gérer. En assembleur pour mettre (sauvegarder) une valeur dans la pile on utilise push. Pour l’opération inverse on utilise pop pour récupérer nos valeurs de la pile. Exemple Push 10 Mov eax, 30 Push eax Par ce code nous plaçons la valeur 10 et la valeur du registre Eax dans la pile. Si on utilise : Pop EBX Pop ECX EBX contiendra la valeur 30 et ECX la valeur 10. Pour les curieux, Vous n’avez pas à se soucier où se trouve la pile dans la mémoire, ceci est géré par le système d’exploitation en revanche ce qui mérite d’être connu c’est l’existence d’un registre 16-bit nommé pointeur de pile « steack Pointer » SP qui pointe sur l’adresse du sommet libre de la pile.
Les registres ESI et EDI : A coté des registres standards, il existe ESI et EDI, des noms dérivés de source index et destination index, créer à l’origine pour des opérations sur les chaînes de caractères. À titre d’exemple, si nous mettons l’emplacement mémoire d’une chaîne dans le registre ESI et nous utilisons l’instruction lodsb (load string byte). Nous allons trouver un octet de la chaîne de caractères dans le registre EAX et le registre ESI s’incrémente par un octet ( ce qui signifie qu’il pointe sur le caractère suivant de la chaîne). D’une façon similaire, stosb ( store string byte) sauvegarde le contenu du registre EAX ( l’octet de début) dans l’emplacement mémoire indiqué par EDI. L’instruction movsb copie un octet à partir de l’emplacement mémoire pointé par ESI vers celui pointé par EDI. Vous pouvez aussi mettre un compteur en ECX et utiliser l’instruction rep pour répéter une opération le nombre de fois spécifié en ECX: Mov ecx, 3 Mov esi, msg1 Mov edi, msg2 Rep movsb … Section data Msg1 db “hello”,0 Msg2 times 10 db 0 Ce code copie les 3 premiers caractères de la chaîne msg1 vers msg2 (« hel »). L’utilisation de times 10 définie 10 octets en 0 dans la mémoire.
61
www.teramagazine.tk | numéro 6
Push all pop all pusha et popa qui sauvegarde et restore respectivement le contenu des registres standards dans la pile. Ces instructions peuvent être très utiles surtout dans le cas d’appel des routines au sein d’un programme. Sans doute vous remarquez que notre routine change la valeur des registres principaux EAX,EBX.. Ce changement peut avoir un grand impact sur le programme qui fait appel aux routines. Une des solutions est la sauvegarde du contenu de chaque registre dans la pile avant de faire appel à une routine. Cette opération s’avère embêtent car elle demande que l’on connaît les registre à sauvegarder et que pour chacun on fait appel à push pop. Une solution meilleure est de faire en sorte que la routine elle-même sauvegarde le contenu de tous les registres: Pprint_string : Pusha Code Popa Ret popa copie les valeurs dans la pile et pucha restore à la fin de la routine les valeurs initiales des registres En plaçant l’instruction pusha au début de la routine et popa en fin, ne nous soucions plus de la modification contenu des registres principaux après l’appel de la routine. L’utilisation de ces deux instructions complique les choses quand on veut que la routine nous retourne une valeur à travers un registre mais nous allons voir le mois prochain comment faire.
Assembleur pour ARM : Dans cette série d’articles nous ne ciblons que l’architecture X86. Comme vous le savez, il existe d’autres architectures dont la plus connue est ARM qui domine le monde des Smartphones et des tablettes et même des consoles de jeu. Si vous êtes tenté par le codage pour ARM, je vous recommande d’utiliser une ancienne console de jeu comme GameBoy ou un émulateur tel que QEMU (lisez l’article émulation d’architecture apparue en Teramagazine N3 ). C’est une machine simple à utiliser et bien documenté sur internet, donc vous pouvez apprendre rapidement l’écrire de code assembleur destiné à l’ARM. Pour s’inspirer visitez les liens suivants : tinyurl.com/cp37asr tinyurl.com/d447ase
www.teramagazine.tk | numéro 6
62
La Série
Devenir un
Sysadmin
Partie 1: DNS Partie 2: DHCP
C
omme promis, mes amis les futurs administrateurs des systèmes, dans la deuxième partie de cette série “devenir sysadmin”, nous allons continuer dans la section réseau pour acquérir de nouvelles connaissances afin de réussir dans ce métier. Si vous avez lu l’article précédent, apparu en Teramagazine Numéro 5, vous savez que nous
nous sommes lancés dans la mise en place d’un réseau informatique et la configuration des différents services de bases (Mail, web…) sous linux. Vous vous rappelez que nous voulons bâtir un réseau local étape par étape, selon le schéma que je vous ai présenté (fig. 1). Nous avons vu aussi comment faire la configuration des interfaces réseaux pour une machine ou un serveur.
Si vous n’avez pas lu comment, veuillez le faire car, on en aura besoin pour cette étape. Cette fois c’est le tour de découvrir le DNS et le DHCP qui sont des composants angulaires dans le réseau d’entreprise. Cet article vous apprend à configurer votre propre serveur et client DNS/DHCP pour guider les utilisateurs à travers votre réseau.
Point de départ Dans cet article, nous allons considérer les aspects suivants : • Nous allons configurer une machine Linux (RHEL, OPENSUSE, DEBIAN..) pour devenir un serveur DNS/DHCP, avec un ip fixe 192.168.14.21 et un nom « NS1 ». • Le réseau local est en 192.168.14.*, nous allons choisir comme nom de domaine pour notre réseau "tera.ma’’ (les domaines en ". ma" sont payant). Remarque : Si vous voulez que votre DNS ne gère que votre réseau local, alors L'utilisation du TLD (Top Level Domain) fictif du genre ".local" est voulue. En effet, n'utilisez pas un TLD existant comme .com ou .ma sans en être le propriétaire. •
Le serveur de mail se nomme mail, son adresse IP est 192.168.14.22, Le serveur web qui héberge le site web de l’entreprise se nomme « www » son IP est 192.168.14.23. Un IP publique unique ou plage d’IPs publiques : Pour une utilisation du DNS en local, un IP publique n’est pas demandé. Par contre, si vous voulez que votre serveur DNS soit utilisé par les utilisateurs externes, vous aurez besoin le lui attribuer un ip publique au niveau de votre NAT (routeur ADSL). Le DNS ne doit être accessible par l’extérieur que lorsque vous voulez héberger des services en internes et les rendre accessible, par nom de domaine, en extérieur de votre réseau. Vous pouvez, vous vous procurez la plage d’IP chez votre FAI(fournisseur d'accès Internet).
Dans cet exemple, je suppose que j’ai la plage d’IP publique suivante : Serveur DNS (NS1) : 81.80.80.80 Serveur web (www) : 81.80.80.81 Serveur mail : 81.80.80.82 J’opte pour l’utilisation d’une plage d’IP publique, ce qui est courant chez les grandes entreprises.
►Introduction au DNS :
Le DNS (Domain Name System) fonctionne comme un annuaire où un nom de machine correspond à une adresse, qui permet de convertir les noms d’hôtes de réseaux (ou autres alias) en adresses IP et Inversement. Par exemple, le passage de www.google.com en 216.239.51.100. En effet lorsque qu'une requête est transmise sur le réseau vers une machine le plus souvent les applications ou les utilisateurs ou bien encore les administrateurs vont utiliser le nom de la machine afin de simplifier la tâche; dans ce cas on fera appel à notre DNS afin qu'il nous donne l'adresse IP de la machine visée, ensuite le paquet sera routé jusqu'au destinataire. La figure Fig.2. présente les étapes de résolution de noms sur Internet.
e met d r e p s NS "Le D ir les nom ert aux conv s de rése en ) te d’hô tres alias ersev u (ou a es IP et In s adres t" men
ip prive 192.168.15.1 ip publique 81.*.*.*
ip 192.168.14.1
Fig.1 : schémas du réseau à configurer.
Un peu d’histoire pour mieux comprendre : Le service DNS signifiant: Domain Name Services est né de la volonté de faciliter et de standardiser le processus d’identification des ressources connectées aux réseaux informatiques comme Internet. Avant le DNS, la résolution d'un nom sur Internet devait se faire grâce à un fichier texte appelé HOSTS.TXT, recopié sur chaque ordinateur par transfert de fichier (ce fichier contient une table de correspondance entre noms de machines et adresses IP). C'était le seul moyen d'éviter de travailler avec les adresses IP. La croissance explosive du nombre d'hôtes a fait rapidement exploser du même coup ce mécanisme et plusieurs propositions de remplacement voient le jour. En 1982, le système de noms des domaines est né, c'est-à-dire le DNS.
Pourquoi un DNS ? Les machines ne sachant communiquer qu’à travers l’échange d’adresses IP difficiles à mémoriser pour l’homme Le DNS a pour objectif de permettre aux applications réseau (local ou Internet) et à leurs utilisateurs de nommer ce qui doit avoir un nom unique à l'échelle globale. Des noms facilement mémorables pour des choses telles que les pages Web et les serveurs mail, plutôt que de longues séries de chiffres ou de codes, présente l'un des avantages évident du DNS. Nous savons aussi que le routage ne se fait que par IP et non par nom de domaine par conséquent pour accéder à une ressource il faut connaître son IP d’où la nécessité du DNS. Ce qui est moins évident mais tout aussi important est la séparation du nom de quelque chose de son emplacement. Les choses peuvent être déplacées vers un endroit totalement différent du réseau de façon entièrement transparente, sans devoir procéder à un changement de leur nom. www.tera.ma peut se trouver sur un ordinateur à Marrakech aujourd'hui et sur un autre ordinateur à Genève demain, sans que Quiconque ne s'en aperçoive.
répondre aux requêtes des utilisateurs internes comme aussi aux utilisateurs externes (par Internet). Je vais développer ce point après.
Nom de domaine Un nom de domaine est un identifiant alphanumérique d'un domaine sur le réseau (Internet..). Un domaine est un ensemble d'ordinateurs reliés à Internet et possédant une caractéristique commune (appartenance au même réseau ou entité, etc...). Souvent, Il correspond au nom d'une société, d'une marque, d'une association, d'un particulier, etc. ; et d'un suffixe appelé aussi TLD (.ma, .de, .ca, .jp, .net, .com, etc.) comme tera.ma.
RAPPEL DU FONCTIONNEMENT DU DNS Les trois principaux composants du DomainName-System sont : • Un espace de noms hiérarchique permettant de garantir l'unicité d'un nom dans une structure arborescente, à la manière des systèmes de fichiers d'Unix. • Un système de serveurs distribués permettant de rendre disponible l'espace de noms. • Un système de clients permettant de « résoudre » les noms de domaines, c'est-àdire interroger les serveurs afin de connaître l'adresse IP correspondant à un nom. Lorsqu’un client souhaite accéder à une ressource (serveur web,ftp...) sur un réseau (Internet,..), il aura besoin de convertir le nom d’ordinateur en
Pourquoi un DNS local ? La mise en place d’un serveur DNS dans un LAN personnel ou même celui d’une entreprise, permet aux utilisateurs de ne plus avoir à taper les IPs des différentes machines du réseau, les noms sont beaucoup plus pratiques. En plus du contrôle du DNS, vous pouvez accélérer l'opération de résolution de nom, surtout en activant le cache du serveur. Votre DNS local peut être utilisé pour
65
www.teramagazine.tk | numéro 6
Fig.2: la résolution du nom de domaine
adresse IP. Il transmet alors une requête au serveur de noms par la bibliothèque de résolution. Le serveur renvoie l’information demandée, dirige la requête vers un autre serveur de noms (celui de
son fournisseur d'accès (FAI) par exemple) ou renvoie un message d’erreur, s’il ne peut pas fournir un résultat à la requête. Le mécanisme consistant à trouver l'adresse IP correspondant au nom d'un hôte est appelé « résolution de nom de domaine ». L'application permettant de réaliser cette opération (généralement intégrée au système d'exploitation) est appelée "résolveur" (en anglais « resolver »). la figure 2 résume cette procédure.
Domaine et zone La notion du domaine et zone sont souvent confondu. Le DNS est un modèle réparti hiérarchisé, Les données ou nom de domaine stockées dans un serveur DNS sont organisés en arborescence. Chaque nœud de l’arbre, appelé domaine, reçoit une étiquette. Le nom de domaine du nœud est la concaténation de toutes les étiquettes des nœuds sur le chemin du domaine racine. Exp. tera+.ma. Un ensemble d'enregistrements DNS pour un nom de domaine est appelé une "zone". L’administration d’une zone est définie et attribuée à un ou plusieurs serveurs. Le principe de fonctionnement du DNS est la délégation : chaque zone est gérée par une autorité. La zone .ma est gérée par l’ANRT (L’Agence Nationale de Réglementation des Télécommunications) délégué par l’ICANN.
noms secondaire, permettant de prendre le relais du serveur de noms primaire en cas d'indisponibilité. Le système de nom est une architecture distribuée, où chaque entité est responsable de la gestion de son nom de domaine. Les serveurs correspondant aux domaines de plus haut niveau sont appelés « serveurs de noms racine ». Il en existe treize (la liste est disponible sur root-servers. org), répartis sur la planète, possédant les noms « a.root-servers.net » à « m.root-servers.net ». Un serveur de noms définit une zone,
◊TLD, SLD, FQDN
L’espace de noms est découpé en domaines dits de premier niveau ou TLD (Top Level Domain). Ils définissent la nature des organisations et leur provenance géographique. La liste des 295 TLD existants est connue de tous les serveurs racines. Enfin, les domaines de second niveau (SLD) décrivent plus précisément leur nom ou leur titre. Au niveau des domaines de second niveau, des milliers d’autres serveurs sont sollicités pour répondre aux besoins de traduction en adresse IP. Le FQDN, Fully Qualified Domain Name d'un hôte est son nom d'hôte accompagné du nom de son domaine d'appartenance : Exp : www.tera.ma est le nom complet de l'hôte, www appartenant au domaine tera.ma. FQDN= nom+SLD+TLD. Le domaine de niveau supérieur, appelé arpa (ARPAnet) est toujours utilisé du fait que son utilisation dans une table d'hôtes lors du passage au DNS. Les serveurs racine font également autorité pour le domaine de premier niveau .arpa. La zone inaddr.arpa, utilisée pour la résolution inverse des adresses IPv4, était gérée par les serveurs racine jusqu'en février 2011. Elle est désormais sous la gestion technique des registres Internet régionaux. Après cette longue présentation, nous allons entrer dans le vif du sujet : mettre en place notre propre serveur DNS.
Fig.3 : arborescence du DNS
►DNS en Internet Chaque domaine possède un serveur de noms de domaines, appelé "serveur de noms primaire" (primary domain name server), ainsi qu'un serveur de Fig4. l'emplacement géoraphique des 13 serveur DNS Racines. www.teramagazine.tk | numéro 6
66
"Le TLD ‘com’, le plus répandu, est géré par la société Vérisign sur 13 serveurs DNS."
1.2 Installation
Pour Installer le serveur bind nous installons une liste de paquets associés au DNS : • bind9 • Le paquet dns-utils fournit des outils très pratiques pour tester et débugger le service . • caching-nameserver.*.noarch pour les anciennes versions de bind . (on n'aurra pas besoin de ce paquet, car nous allons installer bind 9.7).
»RHEL/fedora/centos...
yum -y install bind bind-libs bind-utils
»opensuse
zypper install bind bind-utils bind-libs
»ubuntu/Débian
apt-get install bind9 dnsutils
1.3-Configurer BIND Fig.5 : résolution DNS en utilisant les serveur racines.
1.Bind: Impélementation du DNS. 1.1-Mise en place de Bind:
La configuration est presque identique pour tous les linux. Par conséquent, je continue la configuration sur RHEL/fedora. La partie facile est terminée ! Il faut ensuite paramétrer plusieurs fichiers qui nécessitent une configuration minimum. BIND stocke ses données de configuration dans
Sous linux pour mettre en place un DNS on utilise BIND. Fichier Fonction BIND est un acronyme named.conf (le fichier le plus contient la configuration DNS principal et pour (Berkeley Internet important, le reste sont des auxiindique à BIND où trouver les fichiers de zone Name Domain) déveliares) pour chaque domaine que vous gérer loppé initialement par named.options (fichier optionnel) contient des parametres de configuration l'université de Berkeley spécifiques au fonctionnement du processus en Californie et désornamed(DNS). le contenu de ce fichier peut mais maintenu par etre inclus dans named.conf l'ISC (Internet Systems Consortium) qui est un resolv.conf fichier indiquant les serveurs Dns à contacter. groupe qui maintient les les fichiers de zones associe un nom de domaine de zone à ip logiciels liés au DNS sous fichiers des zones inversées associe un ip à un nom de domaine linux Il s’agit est une implémentation des protocoles named.conf qui se trouve dans le répertoire /etc du système de noms de domaine (DNS) et fournit ou sous /etc/bind/ selon le système utilisé. En une implémentation des composants majeurs du effet, avec Debian / Ubuntu, tous les fichiers de système de noms de domaine, y compris: configuration, le fichier named.conf primaire et ➤ Un serveur DNS (named) tous les fichiers de zone DNS se trouvent dans le ➤ Des bibliothèques de résolution du Domain répertoire /etc/bind. Contrairement à Red Hat/ Name System (resolver.) ➤ Des outils pour vérifier le bon fonctionnement du serveur DNS (rndc, named-checkconf…) Le programme le plus connu est named, le processus (daemon) qui traite les requêtes de résolution DNS reçus. BIND est le serveur DNS le plus utilisé sur Internet, spécialement sur les systèmes de type UNIX et il est devenu un standard.
67
www.teramagazine.tk | numéro 6 Fig.5: fichier named.conf sous Mint (Débian)
Fedora, named.conf se trouve dans le répertoire /etc. les références à d'autres fichiers dans ces fichiers de configuration doivent inclure le chemin complet. • Les fichiers de données de zone sont stockés par défaut dans /var/named ou /var/lib/named (mais vous pouvez modifier ce chemin si vous le souhaitez). • named.ca : Indique les serveurs dns racines. Ce fichier n’a pas à être modifié. Il contient les adresses des serveurs dns racine.
2.Base Configuration: Creation du named.conf ►CONFIGURATION DE BASE DU SERVEUR : Éditons le fichier named.conf vi /etc/named.conf vi /etc/bind/named.conf pour débian/ubuntu J'aimerais signaler que les paramètres de configuration peuvent être separés en différents fichiers (une question d'ordre) et ces derniers inclus dans le fichier named.conf ou tous les données sont mis directement dans named.conf.
►2.1 Déclaration des options La déclaration options permet de paramétrer des options globales du serveur de noms. Une seule déclaration options peut être utilisée dans le fichier /etc/named.conf. Voici un exemple de déclaration "options" avec les options les plus utilisés : options { Directory chemin ; Forwarders {[adresse ; [adresse ; …]]} ; Forward (only | first) ; }; nous allons mettre dans cette partie options { directory "/var/named"; dump-file "/var/named/cache_dump.db"; statistics-file "/var/named/named_stats.txt"; forwarders { 81.192.108.228; 81.192.108.227; }; } Exemple d'une configuration d'un serveur DNS primaire : named.conf options { forward first; forwarders { IP_de_IAM; }; };
•
directory : spécifie le répertoire de travail du serveur de noms. Par défaut, le répertoire /var/named est utilisé. • forward : contrôle le fonctionnement de la directive forwarders. Les options acceptées sont les suivantes : • first : Le serveur de noms envoie toutes les requêtes au serveur de noms spécifié dans la directive forwarders avant que bind tente de résoudre le nom lui-même. • only : spécifie que bind ne doit pas résoudre le nom lui-même. • L'option “forwarders” permet de rediriger les requêtes qui ne sont pas résolues par notre serveur vers un serveur DNS distant (serveurs DNS de IAM ou de Google par exemple). • dump-file défini le chemin absolu de la base de données (cache DNS) en réponse à une dumpdb rndc. • statistics-file : Spécifie un autre emplacement des fichiers de statistiques ►2.2.Déclaration des Zones: Nous voulons que notre DNS gère la zone tera. ma. Donc nous devons déclarer cette zone dans le fichier named.conf et créer par la suite son fichier de définition. Pour déclarer une zone dans un serveur DNS nous ajoutons le bloque suivant zone nom_domaine in { type slave,master ; masters {adr_ip ; [adr_ip ; …]} ; file nom ; }; Ajoutez les éléments suivants (remplacer les occurrences de "tera.ma" par la zone que vous voulez gérer : Déclaration de zone Une déclaration de zone définit les caractéristiques particulières d’une zone, tels le nom de son fichier de configuration et les zone communément utilisées : Zone « tera.ma » in { Type master ; File /etc/bind/zone/tera.db; }; Le dossier /bind/zone n’existe pas, nous devons donc le créer . • type : type du serveur maître ou esclave. Ici le serveur est "master" car, il posséde les fichiers de configuration de la zone. www.teramagazine.tk | numéro 6
68
•
File : fichier dans lequel on définit notre zone tera.ma. Les fichiers de données de zone sont stockés par défaut dans /var/named ou /var/ lib/named. Il existe d'autres options que vous pouvez consulter dans la documentation de bind9. L'extension du fichier .db n'as pas d'importance vous pouvez mettre .zone ou autre. Nous fermons notre fichier named.conf et on passe à la création des fichiers de zones. Pour tester votre configuration de named.conf utilisez : named-checkconfig pour s'assurer de l'absence de toute erreur (oublie de ; ...) Nous allons maintenant passer à la zone inverse. Si vous voulez également créer un reverse DNS, vous pourrez y procéder en tapant les éléments qui suivent (remplacez 192.168.1 par ip publique si votre DNS est destiné aux utilisateurs externes): zone “14.168.192.in-addr.arpa”{ type master; notify no; allow-query { any; }; file “/etc/bind/zone/192-168-14.db”; }; Nous avons ainsi déclaré notre zone tera.ma et la zone inverse 14.168.192.in-addr.arpa. Désormais on définit les ressources de notre zone. ►2.3.Définition des Zones: Nous avons défini dans notre configuration la zone tera.ma pour laquelle nous devons créer un fichier « /etc/bind/zone/tera.db» comme il a été indiqué dans la déclaration de la zone. Pour gagner du temps vous pouvez recopier un des fichiers de zone fournit par défaut avec bind comme celui de la zone localhost. 2.2.1 Enregistrement de ressources Les enregistrements de ressources représentent les premiers composants d’un fichier de zone. Il existe de nombreux types différents d’enregistrements de ressources, les plus fréquemment utilisés sont énumérés ci-dessous. Notre fichier etc/bind/zone/tera.db de la zone tera. ma sera comme suivant : $TTL 86400 ;$ORIGIN tera.ma @ IN SOA ns1.tera.ma. root.tera.ma. ( 123 ; Serial 604800 ; Refresh 86400 ; Retry
69
www.teramagazine.tk | numéro 6
2419200 ; Expire 86400 ) @ IN NS ns1.tera.ma. NS1 IN A www IN A mail IN A
192.168.14.21 ; 192.168.14.23 192.168.14.22
Ce fichier est pour la résolution en local. Pour faire une résolution DNS pour les clients extérieurs nous devons déclaré et crée une zone "tera_exterieur.db" de la même façons en changeant les IP privés par des ips publiques. Le fichier /etc/bind/zone/192-168-14.db de la zone inverse : $TTL 86400 ;$ORIGIN teram.ma @ IN SOA ns1.tera.ma. root.tera.ma. ( 1234 ; Serial 604800 ; Refresh 86400 ; Retry 2419200 ; Expire 86400 ) @ IN NS ns1.tera.ma. ;$ORIGIN 14.168.192.in-addr.arpa. 21 IN PTR ns1.tera.ma. ; 23 IN PTR www.tera.ma. 22 IN PTR mail.tera.ma. Vous remarquez bien que le contenu des deux fichiers ressemble, seulement les dernières lignes qui change. ♦Explication : Enregistrements de ressource : nous avons déjà vu ci-dessus la forme d'un fichier de zone (db) composé de « Resource Record » (RR). Un RR contient les informations liées à un nom (nom de machine). En utilisant la structure suivante : ________________________ TTL NAME CLASS TYPE DATA -------------------------------------Signification des termes des zones : TTL, Time To Live en secondes. Cette valeur sert à indiquer la durée de l'entrée dans la base. C'est nécessaire de limiter la durée d'une entrée dans les DNS car, une machine peut changer d'adresse.
♦SOA (Start of Authority) L’enregistrement SOA (ou Origine d’autorité) indique l’origine de la zone. Voici la syntaxe de cet enregistrement : @ IN SOA nom_serveur. email_contact. ( numero_serie ; Serial rafraichissement ; Refreah nombre_essais ; Retry expiration ; Expire ttl_minimum) ; Minimum Le symbole @ place la directive $ORIGIN (ou le nom de domaine) en tant qu'espace de nom, défini par le présent enregistrement de ressources SOA. Le SOA permet de définir les informations relatives à la zone. En l'occurrence le nom du serveur DNS primaire "NS1.tera.ma." et l'adresse mail du contact technique (root.tera.ma. ; le @ est remplacé par un point) ce point est indispensable. Cet enregistrement se compose de plusieurs champs : • numéro_série est incrémentée chaque fois que vous changez le fichier de zone afin que named sache qu'il doit recharger cette zone • Rafraîchissement indique à tout serveur esclave combien de temps il doit attendre avant de demander au serveur de noms maître si des changements ont été effectués dans la zone. • ttl_minimum demande que d'autres serveurs de noms placent en cache les informations pour cette zone pendant au moins cette durée (en secondes). •
Expire: le serveur sera considéré comme non disponible au bout du délais Expire.
Les valeurs qui suivent correspondent respectivement au : @ IN SOA ns1.tera.ma. root.tera.ma.( 2000101500 ; numéro de série 28800 ; rafraîchissement toutes les 8 heures 14400 ; nouvel essai toutes les 4 heures 604800 ; expiration dans 7 jours 86400 ) ; temps de vie minimal 24 heures 1. au numéro de série (souvent on met la date courante suivie d'un numéro d'ordre); AAAAMMJJxx. 2. au temps de rafraichissement (refresh; ici, 8 heures); la valeur recommandée est de 24 heures. 3. au temps entre deux essais (retry; ici, 2 heures);
la valeur recommandée est de 2 heures. 4. au temps d'expiration (expire; ici, 1 semaine); la valeur recommandée est de 1000 heures. 5. au valeur TTL minimum (minimum; ici, 1 jour); la valeur recommandée est de 2 jours. Dans le système des noms de domaine, le point est un séparateur de domaine. Par convention, un Fully Qualified Domain Name est terminé par un point, ce qui signifie qu'il est suivi par une chaîne vide qui représente le domaine racine. Par extension, on représente aussi le domaine racine par un point. ♦NS : Name Server L’enregistrement NS indique le serveur de noms responsable d’un domaine. Sa syntaxe est la suivante : IN NS serveur. IN NS 192.168.14.21 ns1.tera.ma Il est possible de spécifier plusieurs enregistrements NS. ♦A : Address L’enregistrement A, indique l’adresse d’un hôte. Voici la syntaxe de cet enregistrement : nom_hôte_complet IN A adresse_IP Par exemple, la ligne : www.tera.ma. IN A 192.168.14.23 indique l’adresse IP du serveur web www.tera. ma. Le fichier de zone doit contenir au moins un enregistrement A par hôte. Il est possible d’indiquer uniquement le nom de l’hôte, comme dans l’exemple suivant : www IN A 192.168.14.23 Le nom de domaine sera automatiquement ajouté au nom de l’hôte. ♦CNAME : Canonical Name L’enregistrement CNAME indique l’alias d’un hôte officiel. Voici la syntaxe d’un enregistrement CNAME : nom_alias IN CNAME nom_hote. Par exemple, l’enregistrement Siteweb IN CNAME www.tera.ma ♦PTR : Domain Name Pointer PTR, PoinTeR, pointe sur un autre nom. Utilisé pour fournir le nom correspondant à une adresse IP (correspondance adresse-nom) : il fait alors correspondre un nom de inaddr.arpa à un nom de la zone. Cet enregistrement transforme une adresse IP en nom d’hôte. C’est le service des noms de domaine inverse. Voici la syntaxe d’un enregistrement PTR : www.teramagazine.tk | numéro 6
70
adresse_IP IN PTR nom_hôte. Par exemple, l’enregistrement 10.10.10.10 IN PTR www.site.com associe l’adresse IP 10.10.10.10 à l’hôte www.site. com. ♦MX, Mail Exchanger, indique un serveur acceptant le courrier à destination de la zone ainsi que son degré de préférence (nombre arbitraire. Plus il est élevé par rapport aux autres MX et moins le serveur est approprié). Il doit y avoir au moins un MX (= on doit toujours pouvoir envoyer du courrier électronique, au minimum au zone-contact). Après avoir terminer la création de notre zone tera. ma nous pouvons vérifier notre configuration de zone en utilisant : named-checkzone « nom de zone” « chemin de fichier de zone ». Une fois les changements dans le fichier de zone effectués, il faut redémarrer BIND9 pour qu'ils prennent effet : sudo service bind reload ou restart ou bien : rndc reload
3. Configuration d’un client DNS : La configuration des clients du réseau, peut se faire par deux moyens différents: statiquement o dynamiquement. Configuration statique d’un client DNS : Le fichier /etc/nsswitch.conf indique à une machine linux l’ordre à suivre pour faire une résolution de nom de domaine. La ligne : hosts files dns (ceci est la ligne standard vous pouvez changer l’ordre) indique au client DNS que la résolution du nom sera réalisée à partir du fichier /etc/hosts de l’ordinateur local, s’il n’existe pas de résultat, il interroge alors un serveur de nom (Name Server) qui est indiqué dans le fichier /etc/resolv.conf. le fichier /etc/hosts contient une correspondance entre des ip et leurs noms de domaine Exemple : 127.0.0.1 localhost serveur_DNS Vous pouvez ajouter les entrés que vous voulez, l’avantage de cette méthode c’est que la résolution de DNS sera immédiate sans faire appel à un serveur DNS Le fichier /etc/resolv.conf joue un rôle très impor-
71
www.teramagazine.tk | numéro 6
tant dans la configuration du client DNS search Nom_domaine1 Nom_domaine2 nameserver 192.168.14.21 namserver « ip du deuxieme DNS » L’entrée « search » impose au programme de tenter de résoudre un nom incomplet. Ce nom de domaine est ajouté après les noms incomplets. Nameserver indique les serveurs DNS à interroger !! Si vous avez lu l’article précédent vous savez qu’on peut indiquer les DNS à utiliser et les noms de domaine sur les fichiers de configurations des cartes réseaux (ifcfg files)
Configuration dynamique d’un client DNS : La méthode précédente demande une intervention manuelle pour chaque machine sur le réseau On l’utilisera que pour le client installé sur le serveur DNS qu’on a mis en place. Le reste du réseau apprendra le serveur DNS à utiliser par DHCP. Une fois la machine acquiert un ip par dhcp elle acquiert aussi l’adresse IP du DNS à utiliser. Je vais développer ce point par la suite.
Test : Pour tester le bon fonctionnement de notre serveur DNS, veuillez éditer le fichier /etc/resolv.conf pour indiquer l’ip(192.168.14.21) du serveur DNS sur une machine linux ou dans les paramètres de connexion réseau pour Windows. Nous allons tenter de résoudre le nom de domaine www.tera.ma Ping –c3 ns1.tera .ma Le programme ping permet de vérifier si une connexion fonctionne en affichant de l’information semblable à celle ci-dessous : >>Nslookup >>server //pour voir les serveurs DNS qui seront interrogées nous devons voir le 192.168.14.21 Sinon vérifier votre /etc/resolv.conf CTRL+C pour sortir de cette commande L'utilitaire dig permet de faire des requêtes DNS évoluées et fournit un maximum d'informations sur la requête. Il est très utile pour vérifier la bonne configuration d'un serveur DNS. ►Exemples d'utilisation de dig : Requête sur la champ "MX" du nom tera.ma auprès du serveur DNS 192.168.14.21 : > dig tera.ma MX Ou dig « nom serveur DNS » +» domaine » « ou
nom de machine » La sortie de la commande dig est très détaillée ; la réponse à la requête (la partie qui vou intéressera le plus !) se trouve en dessous de la ligne suivante : ;; ANSWER SECTION:
4. Séparation en view interne/ externe Nous avons réussi jusqu’à maintenant à mettre en place notre réseau DNS et nous avons tester la bonne configuration et le bon fonctionnement mais toute cette configuration a été destinée à un usage interne puisque comme vous l’avez remarqué on utilise que les ips publiques. Pour une configuration d’un serveur DNS qui peut servir les requêtes provenant de l'extérieur (Internet) et de l'intérieur on crée des "View" dans le fichier où nous avons déclaré les zones named. conf ou (named.conf.local) pour que la réponse soit convenable (ip publique au requête publique et ip privé pour requêtes privés). acl internal { 192.168.14.0/24; localhost; };
}; Toutes les zones doivent être déclarés au sein de la view.
Conseil:
Après chaque modification, n’oubliez pas d'utiliser la commande reload. Pensez à vérifier /var/log/ messages
♳Logging
Le fichier /var/log/messages doit être consulté après chaque lancement de named puisque les erreurs et Résolution de nom avec Bind les problèmes y seront consignés. L'activation d'enregistrement des log se fait par rndc querylog Pour stopper le log DNS, utilisez la même commande.
♴sécurité
options { directory "/var/named"; };
Le protocole DNS a été conçu avec un souci minimum de la sécurité. Plusieurs failles de sécurité du protocole DNS ont été identifiées depuis. Le grand danger reste l' empoisonnement du cache DNS. Ce type d'attaque permet, par exemple, d'envoyer un utilisateur vers un faux site dont le contenu peut être dangereux.
view "internal" { match-clients { internal; };
♵Chroot
recursion yes; zone "tera.ma" { type master; file " /etc/bind/zone/tera.db"; allow-transfer { any; }; }; };
Pour des raisons de sécurité vous pouvez configurer BIND de sorte qu'il réside dans un environnement restreint, ce qui signifie qu'il ne peut voir ou accéder aux fichiers à l'extérieur de sa propre arborescence. Si l'enjeu de sécurité vous préoccupe, ce http://bit.ly/Vpd28e guide peut vous être utile.
view "external" { match-clients { any; }; recursion no; zone "tera.ma" { type master; File /etc/bind/zone/tera.externe.db"; allow-transfer { none; }; }; www.teramagazine.tk | numéro 6
72
RNDC
La commande Dig
BIND possède un utilitaire appelé rndc qui permet d’administrer le démon named à partir de la console locale ou d’un hôte distant. Démarrage du serveur DNS Il est possible de démarrer le serveur de nom manuellement à l’aide de la commande suivante : service named start Recharger la configuration d’un serveur DNS Après chaque modification des fichiers de configuration le serveur DNS doit être relancer. La commande suivante permet de changer la nouvelle configuration : rndc reload Arrêt du serveur de noms La commande suivante permet d’arrêter le serveur de noms : rndc stop Afficher les statistiques L’utilitaire rndc permet aussi d’afficher différentes statistiques : l'outil rndc Quand on exécute rndc sur un hôte local configuré de façon appropriée, les commandes suivantes sont disponibles: ◊halt — Arrête immédiatement le service named. ◊querylog — Déclenche le logging pour toutes les requêtes effectuées par des clients vers le présent serveur de noms. ◊refresh — Rafraîchit la base de données du serveur de noms. ◊reload — Dit au serveur de noms de recharger les fichiers de zone mais conserve toutes les réponses précédemment placées en cache. Cela vous permet d'opérer des changements sur les fichiers de zone et de leur faire prendre effet sur vos serveurs maîtres et esclaves sans perdre toutes les résolutions de nom stockées. Si vos changements n'affectent qu'une zone particulière, vous pouvez dire à named de ne recharger que cette zone-là. Tapez le nom de la zone après la commande reload. ◊stats — Evacue les statistiques du named en cours vers le fichier /var/named/named.stats. ◊stop — Arrête le serveur avec égards, en enregistrant toute mise à jour dynamique et donnée IXFR avant l'arrêt complet.
La commande Dig est très largement utilisée par les administrateurs de réseau/systèmes pour résoudre les problèmes liés aux services de résolution de noms. Nous allons voir quelques cas d'utilisation :
dumpdb [-all|-cache|-zone] [view ...] Vider les caches du serveur (par défaut) dans le fichier de vidage spécifié dans le fichier named. conf (l'option dump-file).
73
www.teramagazine.tk | numéro 6
La structure de la commande dig est la suivante : dig @serveur nom type serveur : le serveur DNS à interroger nom : nom de domaine cible type : type d'enregistremet dig teramagazine.tk Qui retourne quelque chose comme :
; &lt;&lt;&gt;&gt; DiG 9.5.1-P1-RedHat-9.5.1-1.P1.fc10 &lt;&lt;&gt;&gt; teramagazine.com ;; global options: printcmd ;; Got answer: ;; -&gt;&gt;HEADER&lt;&lt;- opcode: QUERY, status: NOER ROR, id: 10503 ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 2 ;; QUESTION SECTION: ;teramagazine.com. IN A ;; ANSWER SECTION: teramagazine.com. 75788 IN A 81.93.82.70 ;; AUTHORITY SECTION: teramagazine.com. 75788 IN NS NS31B. HAISOFT.net. teramagazine.com. 75788 IN NS NS31A.HAISOFT.net. ;; ADDITIONAL SECTION: NS31A.HAISOFT.net. 47403 IN A 81.93.82.70 NS31B.HAISOFT.net. 41905 IN A 81.93.82.217 ;; Query time: 2 msec ;; SERVER: 192.168.14.21#53(192.168.14.21) ;; WHEN: Mon Jan 2 10:58:33 2013 ;; MSG SIZE rcvd: 122 Beaucoup d’informations sont retournées. Le première partie renseigne sur la version même de dig utilisée, suivi des options globales, dans cet exemple : printcmd qui peut ne pas être affiché en utilisant l’option +nocmd juste après le dig. La partie qui suit – Got answer – apporte des informations sur le serveur. Cette partie ne sera pas affichée en ajoutant l’option +nocomments, mais attention car elle supprime également les entêtes de sections.
R-
Arrive la section QUESTION SECTION qui comme son nom l’indique affiche la question que vous avez posé au serveur DNS. Dans la forme simplifiée utilisée ici, la recherche est par défaut faite sur les enregistrements A. En général, vous savez ce que vous avez demandé, donc pour neutraliser cette partie dans le résultat, utiliser l’option +noquestion. Pour terminer, la réponse est affichée dans la section ANSWER SECTION. L’IP de teramagazine.com est 81.93.82.70. Même cette partie du résultat peut être neutralisée avec l’option +noanswer (mais je ne vois pas dans quel cas on demande quelque chose sans être intéressé par la réponse…). La section AUTHORITY SECTION renseigne sur les serveurs DNS autoritaires du domaine. Pour ne pas afficher cette section, c’est l’option +noauthority. La fin affiche la section ADDITIONAL SECTION qui donne les IP des serveurs DNS autoritaires utilisés pour la requête. On devine comment ne pas l’afficher : +noadditional Et le résultat se termine par des statistiques sur la requête, que l’on désactive par l’option +nostats
$ dig google.com ANY +noall +answer # Vérification de la résolution de nom inverse. dig ptr 100.90.168.192.in-addr.arpa Beaucoup de possibilité avec toutes ces petites options.
Quelques exemples
# Récupération de l'enregistrement SOA d'une zone dig soa teramagazine.com # Obtenir l'adresse du serveur hébergeant teramagazine.com $ dig teramagazine.com A +noall +answer # Obtenir la liste des serveurs de messagerie de
$ dig google.com MX +noall +answer # Obtenir la liste des serveur DNS autoritaires pour Google $ dig google.com NS +noall +answer # Obtenir toutes les informations demandées cidessus
LE MOIS PROCHAIN
références:
http://www.bind9.net/ http://www.feub.net/2009/02/dig-par-lexemple/
Désormais vous savez bien maîtriser l’utilisation de Bind serveur. Afin que le serveur DNS soit indiqué automatiquement à l’ensemble des machines réseau Nous allons mettre en place un serveur DHCP. Dans l’article suivant nous allons voir comment faire.
www.teramagazine.tk | numéro 6
74
Sysadmin part 2 MISE EN ŒUVRE D’UN SERVEUR DHCP et configuration dynamique du client DNS
C
ette partie décrit la procédure de mise en oeuvre d'un serveur DHCP dans notre réseau local.
Serveur DHCP
Vérification et installation des paquetages nécessaires, à savoir : dhcp-common , dhcp-server.
Ubuntu/Debian
Un serveur DHCP (Dynamic Host Configuration apt-get install dhcp3-server Protocol) permet d’attribuer des adresses IP dynamiques, masques réseau, adresse du Serveur Yum install dhcp DNS, passerelle par défaut et d’autres paramètres IP aux clients PCs qui n’ont pas d’IP statiques. On évite ainsi d’aller paramétrer tous les postes du Zypper install dhcp-server réseau manuellement.
ΔRedhat/fedora ΔOpensuse
Instructions : L'adresse de notre réseau est 192.168.14.0/24 . Notre serveur DHCP distribuera des adresses IP dans la plage d'adresses suivante : De 192.168.14.3 à 192.168.14.254. Le choix de l’adressage vient du nombre de clients à adresser. Dans cette plage nous aurons des ip qui sont fixés et ne doivent pas être alloués : L'adresse de ma passerelle sera 192.168.14.2 Serveur DNS est 192.168.14.21 Serveur Mail : 192.168.14.22 Serveur web : 192.168.14.23 Serveur SGDB : 192.168.14.24 Le domaine DNS auquel j'appartiens est tera.ma
Installation : 75
www.teramagazine.tk | numéro 6
Configuration:
À la base des instructions que nous avons vus, nous allons désormais configurer notre serveur DHCP. Nous allons indiquer la plage des ips à attribuer aux clients du réseau, l’adresse de notre serveur DNS à utiliser pour la résolution des noms de domaine, etc. La configuration se fait à travers le fichier /etc/ dhcp3/dhcpd.conf ou dhcpd.conf (selon le système). Le contenu sera comme suivant : option domain-name "tera.ma"; option domain-name-servers 192.168.14.21; option routers 192.168.14.2; default-lease-time 3600; max-lease-time 604800; authoritative;
subnet 192.168.14.0 netmask 255.255.255.0 { range 192.168.14.3 192.168.14.254; option subnet-mask 255.255.255.0; option broadcast-address 192.168.0.255; option routers 192.168.14.2; } explication : • l'option "domain-name" : permet de fournir aux clients le nom du domaine. • l'option "domain-name-servers" donne aux clients le ou les serveurs DNS (séparés par des virgules). • l'option router donne l’adresse de la passerelle par défaut . • l'option default-lease-time donne le délai du bail en secondes avant de redemander une adresse ip. Il est préférable d’augmenter la valeur par défaut pour limiter le trafic sur le réseau. • La ligne authoritative indique que ce serveur DHCP est responsable de la zone concernée • Le reste comme vous remarquez n’est que les paramètres de notre réseau. • Pour éviter des problèmes d’adressages IP avec les machines qui ont un ip fixe appartenant à la plage d’ip offerte par le serveur DHCP. On indique les machines (serveur dans notre cas) qui ont des ip fixes et ceci à l’aide de l’enregistrement suivant host serveur X { hardware ethernet 00:05:5d:f5:08:02; fixed-address 192.168.14.X; option host-name "serveur X"; } À l’interieur de subnet {}. En fin pour activer ces modifications nous redemarons le service DHCP. /etc/init.d/dhcp3-server restart ou service dhcpd restart
Configuration des postes clients Nous devons indiquer aux postes clients que l'attribution des ip et des paramètres (DNS..) se fait par le serveur DHCP. Nous devons donc modifier le fichier de configuration de l'interface réseau. Systèmes basés sur Debian: Nous éditons le fichier /etc/network/ interfaces Pour contenir : iface eth0 inet dhcp Systèmes basés redhat: Dans /etc/sysconfig/network-scripts, il y a un fichier
intitulé : ifcfg-eth0. Il doit contenir cette ligne BOOTPROTO="dhcp" pour en savoir plus veuillez consulter l'article précédent de la série devenir sysadmin publié dans le numéro 5 de teramagazine.
Test Avec un client Linux, pour redemander une adresse au serveur DHCP on utilise la commande : • Sur linux : dhclient • pour windows : ipconfig /release + ipconfig/ renew. Si tout passe bien essayez de "pinguer" ensuite une machine le réseau. ping 192.168.14.21 Enfin pour vérifier côté serveur que les baux ont bien été attribués, on peut regarder le fichier Des baux d'adresses : more /var/lib/dhcpd/dhcpd.leases Vous pouvez aussi consulter en temps réel les logs pour savoir si tout fonctionne correctement : tail -f /var/log/messages
À la
fin de ce long article j'aimerais bien vous signaler qu'il existe beaucoup de choses à savoir et à apprendre concernant DNS/Bind et DHCP. Il existe des livres en centaines de pages couvrant ces deux services. J'ai essayé de donner l'essentiel qui vous aide à bien comprendre le fonctionnement et la mise en ouvre de ces services vitaux dans le réseau. Nous avons parlé le langage des admins réseau dans ces deux derniers articles, rien d'anormal puisque le métier d'administrateur système s'interfère avec d'autres domaines, que ça soit l'administration réseau, la maintenance, la sécurité informatique ou autre. C'est cette richesse qui m'attire le plus dans ce métier.
Le mois prochain nous allons
voir comment mettre notre serveur mail, Samba, firewall.. pour terminer avec ce passage dans le monde du réseau pour partir ensuite vers le fonctionnement des systèmes linux et windows et découvrir leurs architectures.
www.teramagazine.tk | numéro 6
76
Discussion autour linux Avec mohammed radi mohamed.raddi1@gmail.com
le bon ingénieur ne travaille pas il crée des oueuvres.
Q Pouvez-vous vous présenter rapide- Q Pouvez-vous nous décrire une de vos ment pour nos lecteurs?
journées normale?
Je m'appelle Mohammed radi, 30 ans. Je suis né à Casablanca, je vis à paris. Je suis actuellement, ingénieur système chez "iksa system" en France. Je vous remercie pour cette occasion.
En tant que chef d’équipe, je dois tout d'abord gérer mon équipe. Nous avons quotidiennement une réunion matinale pour faire un plan de journée et pour fixer nos buts. En tant qu'ingénieur, j'aborde les urgences et les problèmes sur nos serveurs (un peu de logging), ensuite je m'assure du support clients, de la maintenance et du bon fonctionnement du matériel. Après ce tour, je retourne au bureau pour avancer un peu sur les projets en cours. Je prends mon café si tout va bien.
Q De quel type d’infrastructure êtesvous responsable actuellement?
Je m'occupe d'un parc informatique d’une centaine de machines à travers le monde. Je suis le responsable d'une équipe d'exploitation et de support d’une Platform propriétaire de la gestion distante des ressources, en tant que spécialiste linux/ BSD, principalement Redhat/Solaris et FreeBSD.
Q Comment êtes-vous arrivé là? Pouvezvous, nous décrire rapidement votre parcours?
Q Dans ce numéro de Teramagazine
nous parlons de linux. Pourriez-vous nous dire vous débuts avec ce système.
Je l'ai découvert dans le sens d'utilisation au cours de mes études en informatique. Une fois le diplôme d'ingénieur en poche. J’ai J’ai débuté avec Ubuntu. J’ai demandé le cd à cacommencé par un court passage dans un opéranonical et je l'ai reçu. ca m'a encouragé à franchir le teur téléphonique au Maroc, où j'ai été embauché pas. Pour l'information ce service a été stoppé malen temps qu'ingénieur système Solaris. J'ai quitté après, vers une structure plus importante en France heureusement. Avec beaucoup d'enthousiasme, je l'ai installé sur ma machine Windows. À l'époque, pour un poste d'administrateur système et réseau. Pour finir chez mon employeur actuel depuis 3 ans. je ne connaissais pas de partitionnement ni de dual boot et j'ai par "mal"chance écraser mon Windows. Je n’ai pas eu beaucoup de remord puisque
77
www.teramagazine.tk | numéro 6
j'ai aimé ce nouveau système et j'ai passé après à Fedora, etc. Vous savez j'aime savoir comment les choses marchent, linux vous donne cette possibilité. Vous avez une transparence attirante pour les curieux. J’ai décidé alors de se spécialiser dans ce nouveau système.
Q Donc vous avez appris linux au cours de vos études en informatique.
Non du tout, les études vous font peur de linux.
Q Pourquoi? La méthode pédagogique adoptée pour enseigner linux aux étudiants est compliquée, du moins au Maroc. J’ai appris l'utilisation et la manipulation de linux en lisant les livres et en pratiquant, ni plus ni moins.
Q Parlons un peu du technique, on parle BSD, GNU, linux, c’est quoi la différence?
GNU et linux forment un système GNU/linux dans lequel linux est le noyau et GNU présente les programmes de base (gcc, make …). Bien sur Unix c’est l’OS père de tous les systèmes d’exploitation. Quant au BSD c’est une famille d’os basée sur Unix. Dans cette famille on trouve FREEBSD, NETBSD, etc. Ils sont des os différents de GNU/linux.
Q Exemple de différence ? Je parle selon mon expérience avec freeBSD. Les différences avec Gnu/linux sont nombreuses. Je cite deux exemples : Le nom des périphériques sont différents : Sous linux les cartes réseau « filaires » s’appellent en général eth*, quel que soit le type de la carte. Sous BSD, le nom est lié au driver : fxp pour intel, rl pour realtek … Certaines commandes n’ont pas la même syntaxe ou usage que linux. Par exemple l’affichage de la table de routage du noyau : pour GNU/linux c’est route – n , l’équivalent sous BSD est : netstat –rn –f inet.
Q À l'occasion pourriez-vous nous ex-
pliquer la différence entre Shell, terminal, console?
Selon ma connaissance, ces notions sont étroitement liées. Le Shell est un programme qui interprète les commande et retourne les résultats ». Il existe différent shell : c-Shell, bourne Shell, le plus répandu est bash Shell (/bin/bash). Le terminal est votre lien avec le Shell, c’est en quelque sort une fenêtre entre l’utilisateur et le Shell. Avant, un terminal étais un appareil physique avec un écran et clavier, la plupart des gens utilisaient des terminaux pour communiquer avec les ordinateurs distants. Ils y tapaient des programmes, les faisaient tourner, etc. Les programmes s'exécutent sur l'ordinateur hôte, mais les résultats s'affichent sur l'écran du terminal. Un câble reliait le terminal à l'ordinateur (souvent de manière indirecte). On l'appelait terminal puisqu'il était situé à une extrémité terminale de ce câble. Dans la terminologie client-serveur en réseau, on pourrait penser que le terminal est le client et l'ordinateur hôte le serveur. Avec l’évolution des os Unix/linux : bonne gestion multitâches et système de fenêtrage le concept de terminal a été intégré en tant qu’un concept logiciel. Actuellement, vous avez des outils comme le terminal gnome qui lance une fenêtre pour lancer le
GNU et linux forment un système GNU/linux dans lequel linux est le noyau et GNU les programmes de base (gcc, make …) Shell et y passer vous commandes. Si vous exécutez la commande "who" ou "tty" vous avez le nom du terminal virtuel utilisé par les utilisateurs connectés à votre machine. En relation, on peut dire qu’un terminal n'est qu'une émulation d'une console. Dans Les linux modernes, Il y a normalement 6 consoles disponibles, elles sont accessibles via CTRL+ALT+FX(ou alt+Fx) avec x est le numéro de la console à laquelle vous voulez vous rattacher (ttyX). A partir de F7 il ne s’agit plus de consoles à proprement parler, mais de session Xorg Terminal est un programme qui ouvre une console dans une interface graphique pour lancer des commandes. Pour résumé les consoles (car il peut en avoir plusieurs) sont émulées (ou simulées) par des Terminaux (une console dans une petite fenêtre) afin d'être accessibles en mode graphique. www.teramagazine.tk | numéro 6
78
Q
Q
Q
ter aussi le paramètre de confiance : Au Maroc les décideurs prennent en mesure le prix comme paraLequel nous devons utiliser ? mètre de qualité et de fiabilité et donc linux n’est Il est en général, préférable d’utiliser le terminal pas adopté. (en mode utilisateur normal et non superuser) pour Pour l’utilisation personnelle, La transition vers lancer des lignes de commandes, mais les consoles linux sera immédiate si les éditeurs de logiciels ont peuvent se révéler indispensables si par exemple, plus de courage pour cibler linux. Je pense qu'avec l’interface graphique plante ou pour utiliser le resl'évolution rapide du matériel, Windows n'aura pas cue mode. de souffle à continuer en tête. Un dernier mot, je vous préconise de tester le système Ylmf OS . Il Des outils/systèmes que vous aimez? vous permet de passer à Linux en gardant l'aspect Je ne vous cache pas qu’à coté de mes propres de Windows XP. Ylmf OS, une distro gratuite basée scriptes, j'aime l'outil Webmin (je le conseille à sur Ubuntu et idéale pour les débutants. Un bon nos clients), Loganalyzer et Nagios. Ces outils sont clone de Windows. des solutions web, webmin pour la gestion des serveurs sous linux, loganalyzer pour l'analyse des Q Conseil pour un débutant? fichiers log et Nagios pour la supervision. En ce qui Commencer par installer un virtualiseur comme concerne les systèmes ça dépend de l'utilisation virtrualbox ou vmware et installer Ubuntu ou Mint. souhaitée. En général j'opte pour Fedora ou OpenIls sont très bien documentés et vous avez l’aide suse en serveur et Mint ou Mageia pour pc. nécessaire pour réussir (Ubuntu Linux Toolbox 1000+ Commands for Ubuntu and Debian Power Nous parlons beaucoup de la sécurité Users, etc.. ). sur linux, qu'en pensez-vous? Un conseil en or, ne vous contentez pas de consommer les tutoriels sans les produire. Sachez Oui en effet, la majorité des serveurs web, ftp.. que quand vous produisez de l'information, c'est sur le net sont sous linux et par conséquent il est vous qui apprend plus, car vous aurez l'occasion de ciblé par les hackers. Les développeurs linux sont regrouper et ordonner vous idées sur le sujet. Je conscients de ce problème et propose des solutions comme c'est le cas de selinux. En outre, si une vous encourage à créer des blogs et publier ce que vous apprenez au cours de vos expériences. Si vous faille est détectée, des patches sont rapidement acquissiez un bon niveau, pensez à la certification disponibles. En tout cas, pour les particulier linux linux. n'est pas vulnérable comme l'est windows.
Q Quel est l'état du marché de l'emploi Q Votre contact si c'est possible, pour dans le secteur selon vous?
D'après le contact avec mes clients, il y a une demandes en ce moment, surtout pour des profils orientés open source. Mais je ne pense pas qu'il y ait une carence.
Q Comment vous voyez la transition de Windows vers linux
Excepté, si vous êtes un Gamer ou un désigner, je vous recommande de migrer vers linux. Vous savez, en France des ministères ont migré leurs infrastructures vers linux (ubuntu) dans le but d’économiser de l’argent et ils réussissent bien cette expérience. Je pense que c’est juste un changement de mentalité qui est nécessaire. Du coté des entreprises, on peut parler de la très bonne publicité des produits Windows ou bien de la dépendance historique au produit Microsoft qui entrave toute migration vers linux. On peut ajou-
79
www.teramagazine.tk | numéro 6
nos lecteurs?
Je suis joignable par Email : mohamed.raddi1@gmail.com Je suis prêt à aider les nouveaux linuxiens ou ceux qui ont des problèmes.
Mot de fin : Je vous remercie pour cette interview, je suis heureux d'apprendre qu'une revue marocaine "libre" selon le jargon de GNU/linux, prend le souci de promouvoir l'esprit de partage des connaissances informatiques. Bonne chance à vous.
Next Month: Discussion autour J2EE avec un autre expert , envoyez vos questions à tera.revue@gmail.com
MEGA LE NOUVEAU MEGAUPLOAD OFFRE
P
50 GO
lus d’un an après que Megaupload ait été stoppé par la justice américaine, son successeur Mega voit le jour. Mega est la nouvelle version du fameux Megaupload accessible à cette adresse mega.co.nz. Il vous permet de stocker des fichiers comme on le pouvait avec Megaupload, mais il dispose également d’un certain nombre de protections concernant la confidentialité qui font de lui un service quasi « anonyme ». Lorsque vous vous inscrivez, vous disposerez instantanément d’un « plan libre », qui vous donne accès à 50 Go d’espace de stockage. À titre de comparaison, Dropbox offre 2 Go, Google Drive 5 Go et Skydrive 7 Go. Mega propose une interface d’utilisation simple et claire. Elle n’a rien avoir avec celle de Megaupload avant que le service ne soit fermé. Il est très facile de charger des fichiers. Il suffit de choisir un dossier ou des fichiers spécifiques et ces derniers seront ajoutés en temps-réel sur le service. Pas besoin de rafraîchir la page tout est automatique. La partie la plus intéressante concerne le partage d’un fichier. Dès lors que vous cliquez sur le bouton de lien sur la droite, une boîte de dialogue s’affiche vous demandant de renseigner quelques détails, et notam-
ment ce que vous souhaitez partager aux gens. Vous pouvez protéger votre fichier en utilisant une clé de protection. Partager le lien de votre fichier et partager par la suite votre clé dans un autre canal « sécurisé ». Pour le futur, Mega prévoit également des améliorations et de nouvelles fonctionnalités. De ce que l’on peut relever sur le site, on pourrait retrouver un composant pour un service de messagerie sécurisé, ainsi que la possibilité pour les non-utilisateurs de Mega d’envoyer des fichiers volumineux à ceux qui ont un compte Mega. la compagnie ne s’arrêtent pas là, puisque la firme mentionne aussi le fait qu’elle prépare des logiciels de traitement de texte, de tableur et de calendrier, , ainsi qu’un client tel que l’on a avec Dropbox pour Windows, Linux et Mac.
www.mega.co.nz www.teramagazine.tk | numéro 6
80
ans l'article précédent, nous avons appris quelques notions à propos de l'utilisation des composant WPF et du visual studio. Nous avons créé une interface graphique sous forme d'un formulaire. Notre but était de faire un premier contact avec le monde des interfaces graphiques en WPF. Pour cette fois, nous allons découvrir plus de notion (événement, fonction...) en développant une calculatrice graphique.
Yo u tu Pa be rtie 2
Àl ec ad alc éco ula uv tric erte eW du WP PF F en 15 D mi
Un
Par l'occasion du lancement de la chaîne youtube (www.youtube.com/terarevue) nous avons mis en ligne une vidéo qui resume cette article. Lien: http://www.youtube.com/watch?v=1U1pLTXaqIQ le code source est disponible en http://bit.ly/VKi6lD
81
www.teramagazine.tk | numéro 6
nu
tes
نظــام هالل ُ لينكس
لينكس هي توزيعة ُ هالل ُ لينكس يتم تطويرها بواسطة متطوعين من أنحاء الوطن العربي ,ويتم نشرها بالمجان لجميع سكان العالم ,وحالي ًا عدد واحد منهم هو مطوري التوزيعة شخصان فقط, ٌ المصمم واآلخر هو مطور التوزيعة الرئيسي ,بالطبع التوزيعة احتوت على مساهمات من قبل مجتمع المستخدمين حول العالم ,من آراء وخلفيات ومساهمات صغيرة أخرى ,لكن دائم ًا ما يكون عدد المطورين الثابتين قلي ً ال عندنا لضعف الخبرات العربية أو انشغالها بحياتها الشخصية أو العملية ,ولكن هناك مساهمات فردية من وقت إلى آخر من هنا أو هناك .لقد قررنا عمل توزيعة جديدة عوض ًا عن المساهمة في واحدة موجودة مسبق ًا ألسباب عديدة ,منها أننا نمتلك رؤيتنا الخاصة وسياسة التطوير ّ أصح أن تتبع ,ولهذا فإن التوزيعات التي نعتقد بأنها الموجودة لن توافق على جميع األمور التي نقترحها أو نضيفها ,مما دفعنا إلى إنشاء توزيعة ُ لينكس جديدة ,أطلقنا عليها هالل ُ لينكس. مميزات هالل ُ لينكس عن التوزيعات األخرى عديدة, منها مركز تحكم هالل ومركز برمجيات هالل اللذان تم تعديلهما من تطبيقات أخرى وتعريبهما ودعم العربية فيهما باإلضافة لعدة إصالحات وإضافات أخرى ,وهناك أدوات صغيرة وامتدادات للواجهة تم عملها ,أيض ًا هناك إصالحات نقوم بها للمشاكل التي نراها في التوزيعة التي قمنا بالبناء عليها, أيض ًا في هالل هناك حزمة كبيرة من التطبيقات المنتقاة بعناية والتي تكفي لعمل كل شيء تقريب ًا بالنظام ودعم للغة العربية بشكل ممتاز ,فض ً ال عن التوثيق الذي نقوم به ,هذا عن هالل في أوبونتو ,أما
82
مدير تطوير هالل لي ُنكس: محمد هاني صباغ. www.teramagazine.tk | numéro 6
2
توزيعة إسالمية عربية مبنية على توزيعة “أوبن: سوزي” من ُ لينكس (مسبق ًا كانت مبنية على أوبونتو حتى اإلصدار 3.0النهائي) سورية المنشأ ,سريعة ومعاصرة ومجهزة بمعظم التطبيقات التي يحتاجها المستخدم ألداء مهامه اليومية ,باإلضافة الحتوائها على الكثير من البرامج التي تم برمجتها بواسطة فريق التطوير وأخرى إسالمية وعربية من توزيعات أخرى وإصالحات لمعظم العلل الموجودة بالمنبع ودعم اللغة العربية والخطوط الخاصة بها باإلضافة لعشرات اللغات األخرى ,تشكل مع ًا نظام تشغيل وخال من الفيروسات عالي الجودة وسريع وخفيف ِ تمام ًا قد يطلبه أي مستخدم للحواسيب المكتبية أو المحمولة.
هالل المبنية على أوبن سوزي فبها الكثير من المميزات اإلضافية األخرى ,منها برامج كاملة تم تطويرها بواسطة فريق التطوير وبرامج تسجيل لسطح المكتب وأدوات أخرى لتنفيذ كل شيء بالنظام بسرعة وسالسة ,وستكتشفونها عندما نطلق هالل 3.21إن شاء اهلل. بدأنا في تطوير هالل ُ لينكس في نهاية ,2010 وأطلقنا أول إصدار في ,2011/1/18ثم توالى إطالق اإلصدارات األخرى ,هالل ُ لينكس كانت مبنية على توزيعة أوبونتو حتى اإلصدار 3 النهائي ,حيث كانت أوبونتو تصدر كل 6أشهر وبعدها تصدر هالل بحوالي الشهر محملة باألدوات و التضبيطات التي طورناها ,ولكنها تحولت بعد اإلصدار 3إلى البناء على توزيعة "أوبن سوزي" وحالي ًا نعمل على اإلصدار الجديد من هالل الذي سيكون إن شاء اهلل مبني ًا على توزيعة أوبن سوزي 3.21وهو محمل بالكثير من األدوات التي تم برمجتها بواسطة فريق التطوير. التوزيعة تأتي بواجهة جنوم شل وبملف .iso حجمه 3.1جيجابايت ,ونوفر نسخة خفيفة من هالل بحجم 700ميغا بواجهة lxde للحواسيب الخفيفة والقديمة ,ودائم ًا نستخدم نواة التوزيعة األصلية التي نقوم بالبناء عليها, لتلقي التحديثات أو ً ال بأول وتفادي ًا لحصول أي أخطاء مستقبلية .من ناحية الدعم فقد قمنا بفتح العديد من الخدمات لدعم المستخدمين, مثل منتدى الدعم لهالل ُ لينكس ,وإجابات هالل ,وقناة الـ ,IRCوأما من ناحية التطوير فنعمل حالي ًا على مستودع خاص بالتوزيعة لتثبيت التطبيقات الخاصة بها منه والتحديث منه أيض ًا ,وهناك مستودع برمجي آخر يجري تطويره على .Gitub خططنا المستقبلية للتوزيعة هي تطوير المزيد من األمور الخاصة بالتوزيعة ,ونشر التوزيعة عربي ًا ودولي ًا بشكل أفضل من ذي قبل ,كما نخطط إلطالق المزيد من المواقع الداعمة للتوزيعة ,ونبحث أيض ًا عن مطورين إضافيين للعمل على هذا المشروع العربي الواعد إن شاء اهلل. في النهاية ال يسعني سوى أن أشكر فريق مجلة Teramagazineعلى المجهود الذي يقوم به ,وأشكر جميع القراء على سعة صبرهم بقراءة هذه اللمحة السريعة عن توزيعة هالل ُ لينكس وأدعوكم لزيارتنا على: http://helal.is-sec.org
s k c i 4 r t and s p i t with Gmail 1
Google Talk, Hiddens Emoticons
i
n this topic we 'll discover a funny issue. I think most of you use gmail , and its instant messaging Chat function. To express your emotions gmail offer some emoticon (emotion icon). But did you know that there is a hidden list of new emoticons/smiles. The table bellow show you some secret code to use for hidden emoticons.
Emoticone Cowbell Crab
Code +/â&#x20AC;&#x2122;\ V.v.V
Devil
}:-)
Wince
>.<
Pig
:(:)
Broken Hear
</3
moustach
:{
Rock out
\m/
Big nose wink
;^)
Robot
[:|]
Monkey
:(|)
equal sad
=(
83
www.teramagazine.tk | numĂŠro 6
I like using the devil icon. You have to keep in mind that all emoticons are available for Gmail chat client but Google talk does not supports all of them. You can find hidden emoticons for yahoo, facebook and others, do you search. Finally, please don't try this ~@~ in your chat .
2
Text formating
There are a few bits of formatting you can use to add nuance to your online communication.
To bold a word, asterisk it like this: *tera* To add italics, just underscore before and after the word like this: _tera_ And to strike a word through, add hyphens before and after like so: -tera-
Variations 3 Create of Your E-mail Address Although technically you only have one Gmail address, you can create as many variations of it as you wish to help manage your incoming mail. You can do this by adding a word after your name with a plus sign (if the site you're entering the address into allows it). So, yourname+newsletters@gmail.com,
4 Find Out if a Message Was Sent Just to You Useful for prioritizing replies if nothing else, there's a setting in Gmail that will enable you to see if a message has been sent just to you, or a mailing list.
yourname+newz@gmail.com, and so on. to send us an email you can user terar.evue@ gmail.com or tera.revue+"anything"@gmail.com This alias system then comes into its own if you also set up filters to direct those messages where you want them. For example, they could skip the inbox and be archived, have a label applied, be forwarded to another account, and so on. To set up a filter, go to "Settings," hit the "Filters" tab, select "Create New Filter" and follow the simple steps from there.
To activate it, go to "Settings," then scroll down to "Personal level indicators" and select "Show indicators." This will now mean that every message in your mailbox shows how many recipients there were at a glance. No arrows will show if the message was sent to a mailing list, ">" shows up when the message was sent to you and others, and ">>" indicates the message was sent to just you.
www.teramagazine.tk | numĂŠro 6
84
Quize
Participez et gagnez les livres en informatique suivants: ΔPremieres applications Web 2.0 avec Ajax et PHP
ΔProgrammer en Java 5 & 6 (5ème Ed)
ΔJava Persistence et Hibernate
ΔPro Linux System Administration
ΔSecurite Informatique - Principes et méthode
ΔLinux Bible 2010 Edition
ΔLes Réseaux - 5eme et 6eme Δ Autre, selon votre édition demande.
Sous Gnu/linux, Comment peut-on pinger l'adresse en ipv6: ipv6.google.com?
1. ping -c6 ipv6.google.com 2. ping6 ipv6.google.com 3. pingv6 ipv6.google.com Envoyez vos réponses à tera.revue@gmail.com pour participer à la tombola.
la recherche sur internet est interdite. www.teramagazine.tk | numéro 6 La 85 réponse de la question précédente = 2 paires
DID you know?
A
Android
»Shortcut your Contacts
dd a contact to your home screen for quick and convenient access. For the majority of us, the contact list has become the focal point of our smartphone and it’s the key to managing everything to do with our friends and business associates. If you’ve a number of people that you need to keep in contact with, adding a shortcut to their details on your home screen is a valuable timesaver. You don’t need to install anything:
1.
»Backup your Data with Google...
From your home screen, perform a long press and wait for the pop-up window to appear. Scroll through the list of options and select the shortcuts icon.
2.
Take a shortcut From the select shortcut window, search and select yout Contact.
Δ Android Backup
3.
An icon will appear in your home screen. You can press it to call, send sms or email your contact
Did you know that you can back up your Android data, to the Google servers automatically by going to Settings>privacy settings and choosing Back up my data. If you already use Gmail, this option presents no greater security risk because you’re using the same company to store your data.
www.teramagazine.tk | numéro 6
86
s c i m o C
87
www.teramagazine.tk | numĂŠro 6
Message d'erreur pour Windows Phone : "insert your Windows installation disc and restart your computer !!!!!!!" Il s'agit bien d'un smartphone, NON?
www.teramagazine.tk | numĂŠro 6
88
t n e r e ff
& e g d e l w o n k
pro o
i t n e r u app
i d Be are your sh
s u t in
Sans doute, vous avez une connaissance à partager. Soyez positif et rejoignez TERAmagazine, envoyeznous vous participations et vos idées.
Jo
tera.revue@gmail.com facebook.com/tera.maga twitter.com/terarevue youtube.com/terarevue
teramagazine.tk 89
www.teramagazine.tk | numéro 6
www.facebook.com/tera.maga Rejoignez no tre page Face ook pour rece nos publicati voir ons quotidien nes (News, H tech, alerte d ighe sécurité...)
s u o n -
z e iv
su
a
g a m . ra m/te
co . k o ebo
ac f . w ww
P
our recevoir nos publications (actifs) : Après que vous rejoignez notre page, veuillez-vous abonner à nos publications Sur votre page de flux.
www.teramagazine.tk | numéro 6
90
Si vous avez Des problèmes
Des événements
Besoin de conseils
nous pouvons les couvrir gratuitement
Des articles Nous pouvons Les résoudre
Des idées nous pouvons vous aider
Contactez-nous tera.revue@gmail.com facebook.com/tera.maga
Nous pouvons les publions