SlideShare une entreprise Scribd logo
1  sur  13
Télécharger pour lire hors ligne
Construction et sécurisation d'un
système Linux embarqué
Frédéric AIME
faime@janua.fr
0 950 260 370
Différentes approches
●

Création d'une distribution “From Scratch”
–
–

Forte granularité

–

Parfaite maîtrise du projet

–

●

Nécessite un investissement intellectuel

Conseillé si LINUX est stratégique

Choix d'un produit commercial
–
–

Cross compilation

–
●

Outils graphiques
Support technique

Mais
–

Granularité moindre

–

Coût de support parfois élevé
Phases de construction d' n système
u
●

●

●

●

●

Optimisation de la procédure de démarrage du système
Réduction drastique de l'utilisation mémoire (utilisation de ucLibc
et Busybox)
Optimisation du noyau en fonction des fonctionnalités
nécessaires (pilotes de périphériques, réseau ou non, etc...).
Réduction et simplification du nombre de fichiers et répertoires
de configuration comme /etc contenant la majorité des fichiers de
config.
Suppression du système de swap: un système embarqué est
destiné à un usage bien défini et sera donc suffisamment
dimensionné en mémoire vive pour éviter l'utilisation d'une
partition de swap.
Optimisation du démarrage
•

boot du système par LILO (LInux LOader) ou un programme
équivalent

•

chargement du noyau

•

lancement par le noyau du processus init (/sbin/init)

•

lecture du fichier /etc/inittab par le processus init. Ce fichier
contient en général le nom du script de démarrage:
# System initialization (runs when system boots).
si:S:sysinit:/etc/rc.d/rc.S

•

le script en question poursuit l'initialisation du système
Construction d'un environnement
“Lightweight”
•

Utilisation de uclibc
•

Nécessite:
•
•

•

binutils
gcc

Remplacement des commandes systèmes par
busybox
•

Prend en charge la majorité des commandes usuelles
Linux
Optimisation du noyau
•

Sélection de l'architecture cible

•

Inventaire des drivers utiles
•

Supprimer tous les autres

•

Optimisation en espace (option -Os de gcc)

•

Suppression des fonctionnalités inutiles
Interfaces graphiques
•

De plus en plus fréquent
X Window System: parfois peu adapté car coûteux en ressources

•

•

•

•

Reste cependant la référence dans le monde UNIX (plugins, etc...)
XFree86 peut être optimisé en taille et ressources (Xkdrive, mode VESA...)

Frame-buffer LINUX: accès aux modes graphiques sans X11 (en général mode VESA
+ quelques supports spécifiques)
QTopia (ex Qt/Embedded )

•

•

Compatible source avec Qt: à la base de KDE et du navigateur OPERA

•

Utilise le frame-buffer LINUX

•

•

•

Déja éprouvé dans des solutions industrielles avec OPERA (Motorola, Sony mylo,
sharp, volvo,...)
Existe en version GPL ==> applications DOIVENT être GPL
GTK+
Exemple d'environnement de
développement pour l'embarqué
*
ou
Station de développement
Cross GCC
Binutils architecture cible
ucLibc architecture cible

Filesystem cible:
Base-layout
ucLibc
Busybox

* en utilisant un sous-système permettant de faire fonctionner gcc, ex: cygwin
Sécurisation du système
●

Principes de sécurisation identiques à
l'informatique traditionnelle
–

La sécurité parfaite N'EXISTE PAS

–

Objectif : Rendre le plus complexe possible les
« turnaround »

–

Contraintes particulières
●
●

D'espace de stockage
D'espace mémoire
Sécurisation du système
●

Isoler applicatif du système
–

Environnement « chrooté »
●

●
●

●

Un environnement « virtuel » et disjoint du système
principal
Exemple : serveur FTP, serveur WEB, ...
Cantonner l'impact d'une brèche de sécurité à cet
environnement
Difficile à mettre en place dans certains cas
–

–

Front-end web de configuration du système

Utilisateurs applicatifs non privilégiés (non root)
Sécurisation du système
●

Noyau compilé dans l'esprit « SELinux »
–
–

●

SELinux : un ensemble de règles de configuration
Mais reste un noyau standard avec éventuellement
quelque patches

Un module est capable de tout faire
–

Modules de noyau figés
●

Phase de boot
–
–

Chargement des modules connus
echo off > /proc/modules en fin de phase de boot (<= linux-2.4.x)
Sécurisation du système
●

Définir les éléments qui peuvent être mis à jour
–
–

Modules « trustés »

–
●

Noyau
Applicatifs

S'assurer que l'on parle au bon serveur de mise
à jour
–

Utilisation de certificats « clients » pour valider le
serveur

–

Utilisation de signature numérique des paquets à
mettre à jour
Sécurisation du système
●

Ce que fait Netfilter
–

Effectuer des filtrages de paquets, principalement
pour assurer des fonctions de Firewall (Filter)

–

Effectuer des opérations de NAT (Network Address
Translation)

–

Effectuer des opérations de marquage des paquets
(Mangle)

Contenu connexe

Tendances

Concevoir un système Linux embarqué avec Yocto Project
Concevoir un système Linux embarqué avec Yocto ProjectConcevoir un système Linux embarqué avec Yocto Project
Concevoir un système Linux embarqué avec Yocto ProjectChristian Charreyre
 
Lightning talk LyonJUG février 2016 - Ansible
Lightning talk LyonJUG février 2016 - AnsibleLightning talk LyonJUG février 2016 - Ansible
Lightning talk LyonJUG février 2016 - Ansiblelyonjug
 
Linux et les systèmes embarqués
Linux et les systèmes embarquésLinux et les systèmes embarqués
Linux et les systèmes embarquésStéphane Legrand
 
Hacking, Open Source et sécurité Par Certilience, solutions linux, Mai 2013
Hacking, Open Source et sécurité Par Certilience, solutions linux, Mai 2013Hacking, Open Source et sécurité Par Certilience, solutions linux, Mai 2013
Hacking, Open Source et sécurité Par Certilience, solutions linux, Mai 2013Certilience
 
Présentation king sbc solution janvier 2014 nutanix v1.1
Présentation king sbc solution janvier 2014 nutanix v1.1Présentation king sbc solution janvier 2014 nutanix v1.1
Présentation king sbc solution janvier 2014 nutanix v1.1KING SBC
 
Virtualisation avec virtualbox
Virtualisation avec virtualboxVirtualisation avec virtualbox
Virtualisation avec virtualboxeric German
 
Virtualisation légère du réseau dans React OS
Virtualisation légère du réseau dans React OSVirtualisation légère du réseau dans React OS
Virtualisation légère du réseau dans React OSGeeks Anonymes
 
Docker & son ecosystème
Docker & son ecosystèmeDocker & son ecosystème
Docker & son ecosystèmeAymen EL Amri
 
Introduction aux conteneurs - Agaetis
Introduction aux conteneurs - AgaetisIntroduction aux conteneurs - Agaetis
Introduction aux conteneurs - AgaetisAgaetis
 
Sécurisez-vous avec des solutions Open Source
Sécurisez-vous avec des solutions Open SourceSécurisez-vous avec des solutions Open Source
Sécurisez-vous avec des solutions Open SourceCertilience
 
OSIS18_IoT : RTEMS pour l'IoT professionnel, par Pierre Ficheux (Smile ECS)
OSIS18_IoT : RTEMS pour l'IoT professionnel, par Pierre Ficheux (Smile ECS)OSIS18_IoT : RTEMS pour l'IoT professionnel, par Pierre Ficheux (Smile ECS)
OSIS18_IoT : RTEMS pour l'IoT professionnel, par Pierre Ficheux (Smile ECS)Pôle Systematic Paris-Region
 
Séminaire Captronic Yocto 24 février 2015
Séminaire Captronic Yocto 24 février 2015Séminaire Captronic Yocto 24 février 2015
Séminaire Captronic Yocto 24 février 2015Christian Charreyre
 

Tendances (16)

Concevoir un système Linux embarqué avec Yocto Project
Concevoir un système Linux embarqué avec Yocto ProjectConcevoir un système Linux embarqué avec Yocto Project
Concevoir un système Linux embarqué avec Yocto Project
 
Lightning talk LyonJUG février 2016 - Ansible
Lightning talk LyonJUG février 2016 - AnsibleLightning talk LyonJUG février 2016 - Ansible
Lightning talk LyonJUG février 2016 - Ansible
 
Meetup 10 os paris
Meetup 10 os parisMeetup 10 os paris
Meetup 10 os paris
 
Linux et les systèmes embarqués
Linux et les systèmes embarquésLinux et les systèmes embarqués
Linux et les systèmes embarqués
 
OS libres pour l'IoT - Zephyr
OS libres pour l'IoT - ZephyrOS libres pour l'IoT - Zephyr
OS libres pour l'IoT - Zephyr
 
Hacking, Open Source et sécurité Par Certilience, solutions linux, Mai 2013
Hacking, Open Source et sécurité Par Certilience, solutions linux, Mai 2013Hacking, Open Source et sécurité Par Certilience, solutions linux, Mai 2013
Hacking, Open Source et sécurité Par Certilience, solutions linux, Mai 2013
 
201505 monitoring
201505 monitoring201505 monitoring
201505 monitoring
 
Présentation king sbc solution janvier 2014 nutanix v1.1
Présentation king sbc solution janvier 2014 nutanix v1.1Présentation king sbc solution janvier 2014 nutanix v1.1
Présentation king sbc solution janvier 2014 nutanix v1.1
 
Virtualisation avec virtualbox
Virtualisation avec virtualboxVirtualisation avec virtualbox
Virtualisation avec virtualbox
 
Virtualisation légère du réseau dans React OS
Virtualisation légère du réseau dans React OSVirtualisation légère du réseau dans React OS
Virtualisation légère du réseau dans React OS
 
Docker & son ecosystème
Docker & son ecosystèmeDocker & son ecosystème
Docker & son ecosystème
 
Introduction aux conteneurs - Agaetis
Introduction aux conteneurs - AgaetisIntroduction aux conteneurs - Agaetis
Introduction aux conteneurs - Agaetis
 
Sécurisez-vous avec des solutions Open Source
Sécurisez-vous avec des solutions Open SourceSécurisez-vous avec des solutions Open Source
Sécurisez-vous avec des solutions Open Source
 
OSIS18_IoT : RTEMS pour l'IoT professionnel, par Pierre Ficheux (Smile ECS)
OSIS18_IoT : RTEMS pour l'IoT professionnel, par Pierre Ficheux (Smile ECS)OSIS18_IoT : RTEMS pour l'IoT professionnel, par Pierre Ficheux (Smile ECS)
OSIS18_IoT : RTEMS pour l'IoT professionnel, par Pierre Ficheux (Smile ECS)
 
Séminaire Captronic Yocto 24 février 2015
Séminaire Captronic Yocto 24 février 2015Séminaire Captronic Yocto 24 février 2015
Séminaire Captronic Yocto 24 février 2015
 
Automatisation de la production
Automatisation de la productionAutomatisation de la production
Automatisation de la production
 

En vedette (20)

Investigacion juridica
Investigacion juridicaInvestigacion juridica
Investigacion juridica
 
Procesadores
ProcesadoresProcesadores
Procesadores
 
irena Sendler
irena Sendlerirena Sendler
irena Sendler
 
MÉTODOS DE ESTUDIO
MÉTODOS DE ESTUDIOMÉTODOS DE ESTUDIO
MÉTODOS DE ESTUDIO
 
Formación productiva en veracruz
Formación productiva en veracruzFormación productiva en veracruz
Formación productiva en veracruz
 
Paint
PaintPaint
Paint
 
le numérique alpha ou oméga du devenir des bibliothèques
le numérique alpha ou oméga du devenir des bibliothèquesle numérique alpha ou oméga du devenir des bibliothèques
le numérique alpha ou oméga du devenir des bibliothèques
 
Diaporama mda edemocratie
Diaporama mda edemocratieDiaporama mda edemocratie
Diaporama mda edemocratie
 
Abrege. voc le logement
Abrege. voc le logementAbrege. voc le logement
Abrege. voc le logement
 
Viator web56fr
Viator web56frViator web56fr
Viator web56fr
 
Viator web051fr
Viator web051frViator web051fr
Viator web051fr
 
Tras las huellas de miguel hernandez
Tras las huellas de miguel hernandezTras las huellas de miguel hernandez
Tras las huellas de miguel hernandez
 
Petroleo
PetroleoPetroleo
Petroleo
 
Metacognici+ôn
Metacognici+ônMetacognici+ôn
Metacognici+ôn
 
Nevada a l'h
Nevada a l'hNevada a l'h
Nevada a l'h
 
Club ies_oct2011_le conflit, source d’informations et de compétitivité
Club ies_oct2011_le conflit, source d’informations et de compétitivitéClub ies_oct2011_le conflit, source d’informations et de compétitivité
Club ies_oct2011_le conflit, source d’informations et de compétitivité
 
metodos de estudio
metodos de estudiometodos de estudio
metodos de estudio
 
Muchas formas de comunicar (Lilia Fernández Aquino)
Muchas formas de comunicar (Lilia Fernández Aquino)Muchas formas de comunicar (Lilia Fernández Aquino)
Muchas formas de comunicar (Lilia Fernández Aquino)
 
Taller tecnicas 4 marzo
Taller tecnicas 4 marzoTaller tecnicas 4 marzo
Taller tecnicas 4 marzo
 
A vendre Meribel chalets et appartements
A vendre Meribel chalets et appartementsA vendre Meribel chalets et appartements
A vendre Meribel chalets et appartements
 

Similaire à Tv21 02-07 linuxembedded

Rex docker en production meeutp-docker-nantes
Rex docker en production meeutp-docker-nantesRex docker en production meeutp-docker-nantes
Rex docker en production meeutp-docker-nantesChristophe Furmaniak
 
0081-cours-systemes-exploitations.ppt
0081-cours-systemes-exploitations.ppt0081-cours-systemes-exploitations.ppt
0081-cours-systemes-exploitations.pptDenisKouakou1
 
Etat de l'art des systèmes embarqués, utilisation du logiciel libre
Etat de l'art des systèmes embarqués, utilisation du logiciel libreEtat de l'art des systèmes embarqués, utilisation du logiciel libre
Etat de l'art des systèmes embarqués, utilisation du logiciel librePierre Ficheux
 
Rmll2010 admin sys-panelgzw-fr
Rmll2010 admin sys-panelgzw-frRmll2010 admin sys-panelgzw-fr
Rmll2010 admin sys-panelgzw-frGaëtan Trellu
 
Solutions temps réel sous linux
Solutions temps réel sous linuxSolutions temps réel sous linux
Solutions temps réel sous linuxembedded-linux-bdx
 
Altera nios ii embedded evaluation kit
Altera nios ii embedded evaluation kitAltera nios ii embedded evaluation kit
Altera nios ii embedded evaluation kitWassim Smati
 
Altera nios ii embedded evaluation kit
Altera nios ii embedded evaluation kitAltera nios ii embedded evaluation kit
Altera nios ii embedded evaluation kitWassim Smati
 
Les solutions libres pour les systèmes embarqués
Les solutions libres pour les systèmes embarquésLes solutions libres pour les systèmes embarqués
Les solutions libres pour les systèmes embarquésAlexandre LAHAYE
 
BreizhCamp 2019 - IoT et open source hardware pour la collecte de timeseries
BreizhCamp 2019 - IoT et open source hardware pour la collecte de timeseriesBreizhCamp 2019 - IoT et open source hardware pour la collecte de timeseries
BreizhCamp 2019 - IoT et open source hardware pour la collecte de timeseriesXavier MARIN
 
Qt4 et 5 pour Linux embarqué
Qt4 et 5 pour Linux embarquéQt4 et 5 pour Linux embarqué
Qt4 et 5 pour Linux embarquéAlexandre LAHAYE
 
systemd red hat linux examen Ex200 rh124
systemd red hat linux examen Ex200 rh124systemd red hat linux examen Ex200 rh124
systemd red hat linux examen Ex200 rh124loffyhacker
 
Virtualiastion des systèmes d'exploitations
Virtualiastion des systèmes d'exploitationsVirtualiastion des systèmes d'exploitations
Virtualiastion des systèmes d'exploitationsSGHIOUAR abdelfettah
 
0484-systemes-d-exploitation-os.pdf
0484-systemes-d-exploitation-os.pdf0484-systemes-d-exploitation-os.pdf
0484-systemes-d-exploitation-os.pdfRihabBENLAMINE
 
Quoi de neuf dans la version 11 Alexandria ?
Quoi de neuf dans la version 11 Alexandria ?Quoi de neuf dans la version 11 Alexandria ?
Quoi de neuf dans la version 11 Alexandria ?pprem
 
Sébastien Coutu: Copy this Meetup Devops - microservices - infrastructure imm...
Sébastien Coutu: Copy this Meetup Devops - microservices - infrastructure imm...Sébastien Coutu: Copy this Meetup Devops - microservices - infrastructure imm...
Sébastien Coutu: Copy this Meetup Devops - microservices - infrastructure imm...MSDEVMTL
 
Codedarmor 2012 - 03/04 - Android, What else?
Codedarmor 2012 - 03/04 - Android, What else?Codedarmor 2012 - 03/04 - Android, What else?
Codedarmor 2012 - 03/04 - Android, What else?codedarmor
 
présentation des services Open Source pour GNU/Linux
présentation des services Open Source pour GNU/Linuxprésentation des services Open Source pour GNU/Linux
présentation des services Open Source pour GNU/LinuxNoël
 
20190520 - IBM Cloud Paris-Saclay Meetup - Hardis Group
20190520  - IBM Cloud Paris-Saclay Meetup - Hardis Group20190520  - IBM Cloud Paris-Saclay Meetup - Hardis Group
20190520 - IBM Cloud Paris-Saclay Meetup - Hardis GroupIBM France Lab
 
Article open-silicium-juin-juillet-aout-2013
Article open-silicium-juin-juillet-aout-2013Article open-silicium-juin-juillet-aout-2013
Article open-silicium-juin-juillet-aout-2013O10ée
 

Similaire à Tv21 02-07 linuxembedded (20)

Rex docker en production meeutp-docker-nantes
Rex docker en production meeutp-docker-nantesRex docker en production meeutp-docker-nantes
Rex docker en production meeutp-docker-nantes
 
0081-cours-systemes-exploitations.ppt
0081-cours-systemes-exploitations.ppt0081-cours-systemes-exploitations.ppt
0081-cours-systemes-exploitations.ppt
 
Etat de l'art des systèmes embarqués, utilisation du logiciel libre
Etat de l'art des systèmes embarqués, utilisation du logiciel libreEtat de l'art des systèmes embarqués, utilisation du logiciel libre
Etat de l'art des systèmes embarqués, utilisation du logiciel libre
 
Rmll2010 admin sys-panelgzw-fr
Rmll2010 admin sys-panelgzw-frRmll2010 admin sys-panelgzw-fr
Rmll2010 admin sys-panelgzw-fr
 
Solutions temps réel sous linux
Solutions temps réel sous linuxSolutions temps réel sous linux
Solutions temps réel sous linux
 
Altera nios ii embedded evaluation kit
Altera nios ii embedded evaluation kitAltera nios ii embedded evaluation kit
Altera nios ii embedded evaluation kit
 
Altera nios ii embedded evaluation kit
Altera nios ii embedded evaluation kitAltera nios ii embedded evaluation kit
Altera nios ii embedded evaluation kit
 
Les solutions libres pour les systèmes embarqués
Les solutions libres pour les systèmes embarquésLes solutions libres pour les systèmes embarqués
Les solutions libres pour les systèmes embarqués
 
BreizhCamp 2019 - IoT et open source hardware pour la collecte de timeseries
BreizhCamp 2019 - IoT et open source hardware pour la collecte de timeseriesBreizhCamp 2019 - IoT et open source hardware pour la collecte de timeseries
BreizhCamp 2019 - IoT et open source hardware pour la collecte de timeseries
 
_JCVFr
_JCVFr_JCVFr
_JCVFr
 
Qt4 et 5 pour Linux embarqué
Qt4 et 5 pour Linux embarquéQt4 et 5 pour Linux embarqué
Qt4 et 5 pour Linux embarqué
 
systemd red hat linux examen Ex200 rh124
systemd red hat linux examen Ex200 rh124systemd red hat linux examen Ex200 rh124
systemd red hat linux examen Ex200 rh124
 
Virtualiastion des systèmes d'exploitations
Virtualiastion des systèmes d'exploitationsVirtualiastion des systèmes d'exploitations
Virtualiastion des systèmes d'exploitations
 
0484-systemes-d-exploitation-os.pdf
0484-systemes-d-exploitation-os.pdf0484-systemes-d-exploitation-os.pdf
0484-systemes-d-exploitation-os.pdf
 
Quoi de neuf dans la version 11 Alexandria ?
Quoi de neuf dans la version 11 Alexandria ?Quoi de neuf dans la version 11 Alexandria ?
Quoi de neuf dans la version 11 Alexandria ?
 
Sébastien Coutu: Copy this Meetup Devops - microservices - infrastructure imm...
Sébastien Coutu: Copy this Meetup Devops - microservices - infrastructure imm...Sébastien Coutu: Copy this Meetup Devops - microservices - infrastructure imm...
Sébastien Coutu: Copy this Meetup Devops - microservices - infrastructure imm...
 
Codedarmor 2012 - 03/04 - Android, What else?
Codedarmor 2012 - 03/04 - Android, What else?Codedarmor 2012 - 03/04 - Android, What else?
Codedarmor 2012 - 03/04 - Android, What else?
 
présentation des services Open Source pour GNU/Linux
présentation des services Open Source pour GNU/Linuxprésentation des services Open Source pour GNU/Linux
présentation des services Open Source pour GNU/Linux
 
20190520 - IBM Cloud Paris-Saclay Meetup - Hardis Group
20190520  - IBM Cloud Paris-Saclay Meetup - Hardis Group20190520  - IBM Cloud Paris-Saclay Meetup - Hardis Group
20190520 - IBM Cloud Paris-Saclay Meetup - Hardis Group
 
Article open-silicium-juin-juillet-aout-2013
Article open-silicium-juin-juillet-aout-2013Article open-silicium-juin-juillet-aout-2013
Article open-silicium-juin-juillet-aout-2013
 

Plus de Pascal Flamand

Start14 french tech startuffe nation
Start14 french tech startuffe nationStart14 french tech startuffe nation
Start14 french tech startuffe nationPascal Flamand
 
Article "Un an de télétravail et de COVID" dans le magazine Start
Article "Un an de télétravail et de COVID" dans le magazine StartArticle "Un an de télétravail et de COVID" dans le magazine Start
Article "Un an de télétravail et de COVID" dans le magazine StartPascal Flamand
 
Article "La tyrannie du risque zéro" dans le magazine Start
Article "La tyrannie du risque zéro" dans le magazine StartArticle "La tyrannie du risque zéro" dans le magazine Start
Article "La tyrannie du risque zéro" dans le magazine StartPascal Flamand
 
Article "quand les licornes voleront..." dans le magazine Start
Article "quand les licornes voleront..." dans le magazine StartArticle "quand les licornes voleront..." dans le magazine Start
Article "quand les licornes voleront..." dans le magazine StartPascal Flamand
 
Article sur "Le temps des c(e)rises" dans le magazine Start
Article sur "Le temps des c(e)rises" dans le magazine StartArticle sur "Le temps des c(e)rises" dans le magazine Start
Article sur "Le temps des c(e)rises" dans le magazine StartPascal Flamand
 
TOC training Keycloak RedhatSSO advanced
TOC training Keycloak RedhatSSO advancedTOC training Keycloak RedhatSSO advanced
TOC training Keycloak RedhatSSO advancedPascal Flamand
 
TOC training KeyCloak Redhat SSO core
TOC training KeyCloak Redhat SSO coreTOC training KeyCloak Redhat SSO core
TOC training KeyCloak Redhat SSO corePascal Flamand
 
Article sur l'Agilité dans le magazine Start
Article sur l'Agilité dans le magazine StartArticle sur l'Agilité dans le magazine Start
Article sur l'Agilité dans le magazine StartPascal Flamand
 
Article sur l'IA dans le magazine Start
Article sur l'IA dans le magazine StartArticle sur l'IA dans le magazine Start
Article sur l'IA dans le magazine StartPascal Flamand
 
Article sur la Smart City dans le magazine Start
Article sur la Smart City dans le magazine StartArticle sur la Smart City dans le magazine Start
Article sur la Smart City dans le magazine StartPascal Flamand
 
TOC training Keycloak RedhatSSO UMA
TOC training Keycloak RedhatSSO UMATOC training Keycloak RedhatSSO UMA
TOC training Keycloak RedhatSSO UMAPascal Flamand
 
Article sur les Startup dans le magazine Start
Article sur les Startup dans le magazine StartArticle sur les Startup dans le magazine Start
Article sur les Startup dans le magazine StartPascal Flamand
 
TOC training Keycloak RedhatSSO advanced
TOC training Keycloak RedhatSSO advancedTOC training Keycloak RedhatSSO advanced
TOC training Keycloak RedhatSSO advancedPascal Flamand
 
TOC training KeyCloak Redhat SSO core
TOC training KeyCloak Redhat SSO coreTOC training KeyCloak Redhat SSO core
TOC training KeyCloak Redhat SSO corePascal Flamand
 
Article sur les Pitchs dans le magazine Start
Article sur les Pitchs dans le magazine StartArticle sur les Pitchs dans le magazine Start
Article sur les Pitchs dans le magazine StartPascal Flamand
 
Article sur la Transformation Digitale dans le Magazine Start
Article sur la Transformation Digitale dans le Magazine StartArticle sur la Transformation Digitale dans le Magazine Start
Article sur la Transformation Digitale dans le Magazine StartPascal Flamand
 
Article sur l'IA dans le magazine Start
Article sur l'IA dans le magazine StartArticle sur l'IA dans le magazine Start
Article sur l'IA dans le magazine StartPascal Flamand
 
Tribune paca jaguards 12.12.18
Tribune paca jaguards 12.12.18Tribune paca jaguards 12.12.18
Tribune paca jaguards 12.12.18Pascal Flamand
 
Partenariat Jaguards - Busit
Partenariat Jaguards - BusitPartenariat Jaguards - Busit
Partenariat Jaguards - BusitPascal Flamand
 

Plus de Pascal Flamand (20)

Start14 french tech startuffe nation
Start14 french tech startuffe nationStart14 french tech startuffe nation
Start14 french tech startuffe nation
 
Article "Un an de télétravail et de COVID" dans le magazine Start
Article "Un an de télétravail et de COVID" dans le magazine StartArticle "Un an de télétravail et de COVID" dans le magazine Start
Article "Un an de télétravail et de COVID" dans le magazine Start
 
Article "La tyrannie du risque zéro" dans le magazine Start
Article "La tyrannie du risque zéro" dans le magazine StartArticle "La tyrannie du risque zéro" dans le magazine Start
Article "La tyrannie du risque zéro" dans le magazine Start
 
Article "quand les licornes voleront..." dans le magazine Start
Article "quand les licornes voleront..." dans le magazine StartArticle "quand les licornes voleront..." dans le magazine Start
Article "quand les licornes voleront..." dans le magazine Start
 
Article sur "Le temps des c(e)rises" dans le magazine Start
Article sur "Le temps des c(e)rises" dans le magazine StartArticle sur "Le temps des c(e)rises" dans le magazine Start
Article sur "Le temps des c(e)rises" dans le magazine Start
 
TOC training Keycloak RedhatSSO advanced
TOC training Keycloak RedhatSSO advancedTOC training Keycloak RedhatSSO advanced
TOC training Keycloak RedhatSSO advanced
 
TOC training KeyCloak Redhat SSO core
TOC training KeyCloak Redhat SSO coreTOC training KeyCloak Redhat SSO core
TOC training KeyCloak Redhat SSO core
 
Article sur l'Agilité dans le magazine Start
Article sur l'Agilité dans le magazine StartArticle sur l'Agilité dans le magazine Start
Article sur l'Agilité dans le magazine Start
 
Article sur l'IA dans le magazine Start
Article sur l'IA dans le magazine StartArticle sur l'IA dans le magazine Start
Article sur l'IA dans le magazine Start
 
Article sur la Smart City dans le magazine Start
Article sur la Smart City dans le magazine StartArticle sur la Smart City dans le magazine Start
Article sur la Smart City dans le magazine Start
 
TOC training Keycloak RedhatSSO UMA
TOC training Keycloak RedhatSSO UMATOC training Keycloak RedhatSSO UMA
TOC training Keycloak RedhatSSO UMA
 
Article sur les Startup dans le magazine Start
Article sur les Startup dans le magazine StartArticle sur les Startup dans le magazine Start
Article sur les Startup dans le magazine Start
 
TOC training Keycloak RedhatSSO advanced
TOC training Keycloak RedhatSSO advancedTOC training Keycloak RedhatSSO advanced
TOC training Keycloak RedhatSSO advanced
 
TOC training KeyCloak Redhat SSO core
TOC training KeyCloak Redhat SSO coreTOC training KeyCloak Redhat SSO core
TOC training KeyCloak Redhat SSO core
 
TOC training OpenIDM
TOC training OpenIDMTOC training OpenIDM
TOC training OpenIDM
 
Article sur les Pitchs dans le magazine Start
Article sur les Pitchs dans le magazine StartArticle sur les Pitchs dans le magazine Start
Article sur les Pitchs dans le magazine Start
 
Article sur la Transformation Digitale dans le Magazine Start
Article sur la Transformation Digitale dans le Magazine StartArticle sur la Transformation Digitale dans le Magazine Start
Article sur la Transformation Digitale dans le Magazine Start
 
Article sur l'IA dans le magazine Start
Article sur l'IA dans le magazine StartArticle sur l'IA dans le magazine Start
Article sur l'IA dans le magazine Start
 
Tribune paca jaguards 12.12.18
Tribune paca jaguards 12.12.18Tribune paca jaguards 12.12.18
Tribune paca jaguards 12.12.18
 
Partenariat Jaguards - Busit
Partenariat Jaguards - BusitPartenariat Jaguards - Busit
Partenariat Jaguards - Busit
 

Tv21 02-07 linuxembedded

  • 1. Construction et sécurisation d'un système Linux embarqué Frédéric AIME faime@janua.fr 0 950 260 370
  • 2. Différentes approches ● Création d'une distribution “From Scratch” – – Forte granularité – Parfaite maîtrise du projet – ● Nécessite un investissement intellectuel Conseillé si LINUX est stratégique Choix d'un produit commercial – – Cross compilation – ● Outils graphiques Support technique Mais – Granularité moindre – Coût de support parfois élevé
  • 3. Phases de construction d' n système u ● ● ● ● ● Optimisation de la procédure de démarrage du système Réduction drastique de l'utilisation mémoire (utilisation de ucLibc et Busybox) Optimisation du noyau en fonction des fonctionnalités nécessaires (pilotes de périphériques, réseau ou non, etc...). Réduction et simplification du nombre de fichiers et répertoires de configuration comme /etc contenant la majorité des fichiers de config. Suppression du système de swap: un système embarqué est destiné à un usage bien défini et sera donc suffisamment dimensionné en mémoire vive pour éviter l'utilisation d'une partition de swap.
  • 4. Optimisation du démarrage • boot du système par LILO (LInux LOader) ou un programme équivalent • chargement du noyau • lancement par le noyau du processus init (/sbin/init) • lecture du fichier /etc/inittab par le processus init. Ce fichier contient en général le nom du script de démarrage: # System initialization (runs when system boots). si:S:sysinit:/etc/rc.d/rc.S • le script en question poursuit l'initialisation du système
  • 5. Construction d'un environnement “Lightweight” • Utilisation de uclibc • Nécessite: • • • binutils gcc Remplacement des commandes systèmes par busybox • Prend en charge la majorité des commandes usuelles Linux
  • 6. Optimisation du noyau • Sélection de l'architecture cible • Inventaire des drivers utiles • Supprimer tous les autres • Optimisation en espace (option -Os de gcc) • Suppression des fonctionnalités inutiles
  • 7. Interfaces graphiques • De plus en plus fréquent X Window System: parfois peu adapté car coûteux en ressources • • • • Reste cependant la référence dans le monde UNIX (plugins, etc...) XFree86 peut être optimisé en taille et ressources (Xkdrive, mode VESA...) Frame-buffer LINUX: accès aux modes graphiques sans X11 (en général mode VESA + quelques supports spécifiques) QTopia (ex Qt/Embedded ) • • Compatible source avec Qt: à la base de KDE et du navigateur OPERA • Utilise le frame-buffer LINUX • • • Déja éprouvé dans des solutions industrielles avec OPERA (Motorola, Sony mylo, sharp, volvo,...) Existe en version GPL ==> applications DOIVENT être GPL GTK+
  • 8. Exemple d'environnement de développement pour l'embarqué * ou Station de développement Cross GCC Binutils architecture cible ucLibc architecture cible Filesystem cible: Base-layout ucLibc Busybox * en utilisant un sous-système permettant de faire fonctionner gcc, ex: cygwin
  • 9. Sécurisation du système ● Principes de sécurisation identiques à l'informatique traditionnelle – La sécurité parfaite N'EXISTE PAS – Objectif : Rendre le plus complexe possible les « turnaround » – Contraintes particulières ● ● D'espace de stockage D'espace mémoire
  • 10. Sécurisation du système ● Isoler applicatif du système – Environnement « chrooté » ● ● ● ● Un environnement « virtuel » et disjoint du système principal Exemple : serveur FTP, serveur WEB, ... Cantonner l'impact d'une brèche de sécurité à cet environnement Difficile à mettre en place dans certains cas – – Front-end web de configuration du système Utilisateurs applicatifs non privilégiés (non root)
  • 11. Sécurisation du système ● Noyau compilé dans l'esprit « SELinux » – – ● SELinux : un ensemble de règles de configuration Mais reste un noyau standard avec éventuellement quelque patches Un module est capable de tout faire – Modules de noyau figés ● Phase de boot – – Chargement des modules connus echo off > /proc/modules en fin de phase de boot (<= linux-2.4.x)
  • 12. Sécurisation du système ● Définir les éléments qui peuvent être mis à jour – – Modules « trustés » – ● Noyau Applicatifs S'assurer que l'on parle au bon serveur de mise à jour – Utilisation de certificats « clients » pour valider le serveur – Utilisation de signature numérique des paquets à mettre à jour
  • 13. Sécurisation du système ● Ce que fait Netfilter – Effectuer des filtrages de paquets, principalement pour assurer des fonctions de Firewall (Filter) – Effectuer des opérations de NAT (Network Address Translation) – Effectuer des opérations de marquage des paquets (Mangle)