Logiciels libres et Open source ANDSI 13/04/2004 NGO Can Chieu
Plan Les concepts Linux Système d'exploitation Linux pour serveurs Linux pour stations Serveurs d applications Développement Applications horizontales Applications métiers Synthèse
Les concepts du logiciel libre et de l'open source
Logiciel libre Le concept du logiciel libre (Free software) a été proposé par Richard Stallman en 1984 On réfère au logiciel libre par rapport à la liberté, non à la gratuité. Un logiciel libre implique les 4 libertés suivantes : La liberté d'exécuter le programme, pour tous les usages. La liberté d'étudier le fonctionnement du programme, et de l'adapter à vos besoins. Pour ceci l'accès au code source est une condition requise. La liberté de redistribuer des copies. La liberté d'améliorer le programme et de publier vos améliorations, pour en faire profiter toute la communauté.
Quelques nuances La licence impliquant les quatre libertés précédentes est la GNU General Public License (GNU-GPL) Plusieurs autres licences existent ; la différence majeure entre celles-ci est la notion de copyleft très importante dans la GPL Copyleft: obligation de donner au minimum les mêmes droits aux logiciels améliorés qu au logiciel original. «Open source» n est pas «Logiciel libre»
Avantages Comme tout le code source est connu, le logiciel est en général plus fiable. Les mises à jour ne se font pas attendre. Pas de monopole possible: pérennité assurée Coût de licence absent (on fera souvent payer pour le service).
Open source - Définition Libre redistribution : donner ou vendre Code source : doit être inclus dans la distribution Travaux dérivés sont autorisés Intégrité du code source de l'auteur doit être respectée Pas de discrimination entre les personnes ou les groupes Pas de discrimination entre les domaines d'application Droit de redistribution sur l ensemble de logiciel La licence s applique sur l ensemble de logiciel La licence ne doit pas contaminer d'autres logiciels (pas de «copyleft»)
Les autres Logiciel du domaine public Implique qu'il n'y a pas de copyright, les gens sont libres d en faire des logiciels propriétaires Logiciels semi-libres Assortis de conditions limitatives (ex: pour les écoles) Freeware (gratuiciel) Logiciel propriétaire dont le code source est fermé qui est distribué gratuitement. Shareware (partagiciel) Logiciel propriétaire dont le code source est fermé qui est distribué pour une période d essai.
Résumé
Système d'exploitation Linux
Les installations Linux Différentes méthodes d installation: Sur disque dur à partir des CD (ou DVD) : Debian RedHat Suse -... Sur disque dur à partir du réseau : Debian Redhat Suse -... En mémoire vive à partir du réseau : LTP En mémoire vive et CD (ou DVD) : Knoppix MandrakeMove...
Linux sur CD - KNOPPIX Créé par Klaus KNOPPER à partir de Debian Tout linux sur un seul CD Ressources utilisées sur le poste de travail : Mémoire, processeur, lecteur CD Environ 2 Go d applications sur le CD : Knoppix Terminal Server Rdesktop, x3270, serveur X, ssh, Open Office, Navigateurs, Multimédia, Écriture possible sur mémoire USB ou disque dur
Knoppix
Knoppix Terminal Server Sur le serveur : Lancer le service KTS Sur les stations : Possibilité d accès à toutes les applications logées sur serveur Exécution se fait sur la station de travail
KTS Debian + KTS Support de l environnement Linux pour stations Image Linux-KTS à l amorçage des stations Echanges NFS pour tous modules exécutables Stations diskless KTS Exécution locale des applications
Linux sur mémoire USB Ressources nécessaires sur le poste de travail = Mémoire + processeur + mémoire USB Pendant l amorçage les modules USB sont appelés pour le chargement de l image Linux qui se trouve en mémoire USB Exemple = Damn Small Linux (moins de 60 Mo), Flonix,... Browser, Chat, Éditeur de texte Possibilité de personnalisation du système
Linux pour serveurs
Z/Linux Z/Linux = GNU/Linux + ZSeries GNU/Linux : Ré-implémentation d Unix en 32 et 64 bits Composants d origines variées Développement ouvert Librement distribuable ZSeries : Haute disponibilité Haut niveau de performance Virtualisée
Apports de Z/Linux Fiabilité Extensibilité Consolidation du matériel Multiple OS sur VM Administration centralisée
IHM sur Z/Linux
Stations Linux Dans un environnement hétérogène MVS Linux - Unix - Windows
Interopérabilité Linux Unix Windows Mainframes Serveur Web Serveur Java X11 RDP ICA Applications Emulateur s Navigateu r Html JVM Pilotes Matériel
Terminal polyvalent Linux Serveur Linux ou Unix Windows Terminal Server MVS Terminal À base Linux
Outils de connectivité sur Linux Émulateur 3270 : X3270 Accès distant à Windows: Rdesktop Accès distant à Linux ou Unix: Serveur X Ssh, telnet
x3270
Remote Desktop
X et ssh
Serveurs d applications sous Linux
Les serveurs open source Serveur HTML : Apache Serveur JSP, Servlet: Tomcat, Jetty Serveur EJB: Jboss, Jonas
Le développement
Eclipse Projet open source à l initiative d IBM qui offre un environnement intégré pour le développement Java, C, C++, Cobol, Basé sur une architecture modulaire, Eclipse s enrichit rapidement grâce à une communauté très active
Eclipse : Java + Tomcat + JBoss
Applications horizontales
Les outils bureautiques Des outils de très bonne qualité en open source sont à notre disposition: OpenOffice Koffice Ximian Evolution
Groupware Groupware désigne des outils qui facilitent le travail collaboratif Les services groupware peuvent comprendre le partage d agenda, la rédaction collective, la gestion d emails, les accès partagés au Base de données, l audio ou visioconférence, Les projets groupware en open source dont on parle: OpenGroupware: issu du projet Skyrix 4.1 de Software AG Kolab : un serveur groupware pour l environnement KDE egroupware : un serveur basé sur la technologie PHP...
egroupware
Portails - CMS Il existe plusieurs produits en open source : Java : Liferay Uportal Exo JetSpeed OpenCMS Zope - Plone Php : PHPNuke NPDS PHPWebsite...
Etude de cas : Zope - Plone Basé sur Python, Zope est particulièrement bien adapté pour les applications d'infrastructure éditoriale et de travail collaboratif Principales fonctionnalités offertes par Zope et les produits sousjacentes: Communication Gestion des connaissances Partage des données Travail de groupe Travail à distance Workflow Documentation
Un exemple : Portail Techem
Applications métiers
Compiere CRM Gestion des relations avec les partenaires Gestion de la chaîne de livraison ERP Online Analysis Processing
CRM-CTT
Synthèse
Qui utilise les logiciels libres? 30% des serveurs web tournent sous Linux Les gouvernements (France, Allemagne, Chine, Japon, Corée,...) Les entreprises Toyota, Korean Airline, France Telecom, Cisco, Les pays émergents (Chine, Vietnam, )
Conclusion Des solutions libres ou open source existent pour de différents besoins Des outils matures à prendre en compte lors des choix de produits De nombreuses organisations les utilisent POURQUOI PAS NOUS?