Ubuntu est un système relativement sûr1), mais cela ne doit pas vous empêcher d'être vigilant et de suivre quelques recommandations.
Voici comment protéger efficacement vos données personnelles.
Parce que vos informations personnelles sont enregistrées à l'intérieur de votre système, et sans sécurisation il serait facile d'accéder à toutes vos données à distance et encore plus facilement physiquement.
C'est pourquoi il est nécessaire de définir une méthode de sécurité fiable .
Pour le particulier, l'enjeu est plutôt la tranquillité et la stabilité du système.
Cela signifie un système régulièrement mis à jour et l'installation de logiciels uniquement à partir des dépôts officiels. Éventuellement un disque dur chiffré, afin d'éviter le vol d'informations et de protéger les données personnelles en cas de vol de la machine.
On ne le répétera jamais assez, surtout aux PME/PMI : la sécurité est un enjeu majeur d'une politique économique !
Nous sommes entrés dans l'ère d'un capitalisme sauvage, où tous les coups sont permis pour semer et/ou abattre la concurrence.
Avec le développement des moyens de communication numériques dans l'entreprise, un nombre colossal d'informations, y compris vitales, deviennent accessibles par le réseau.
Ainsi voit-on se développer les « Officines d'intelligence économique », c.-à-d. des boîtes d'espionnage, pour parler sans euphémismes, tenues par des anciens de la DGSE ou de la PJ et avec elles les intrusions dans les réseaux, les vols de matériel… « EDF, le pirate et les officines » ; site : Archives Le Point ; auteurs : Jean-Michel Décugis, Christope Labbé, Olivia Recasens ; date : 23 avril 2009.
À ce propos, la DCRI organise régulièrement des stages de sensibilisation à la sécurité informatique2), avec des difficultés certaines, étant donné l'ignorance totale des utilisateurs à l'égard de cette menace. - Lien mort ! Voir aussi : Formations de l'ANSSI sur la sécurité informatique.
La sécurité dans les entreprises passe donc :
Pour aller plus loin :
La sécurité en informatique est un terme très large. Voici quelques liens particulièrement intéressants :
Ces articles sont assez complets et permettent d'entrevoir les problématiques liées à la sécurité informatique.
Entre autres notions de base expliquées dans les liens ci-dessus, voici les points les plus importants :
Quelques points si votre ordinateur est connecté à Internet ou à un réseau.
Solutions à ce jour :
Mettez votre système régulièrement à jour afin de profiter des derniers correctifs de sécurité. Par défaut, Ubuntu recherche les mises à jour tout seul, mais si vous souhaitez vérifier manuellement cliquez ici.
Voir la page concernant les Pare-feu.
Voici une liste non exhaustive des principaux outils pour filtrer les connexions réseaux :
La plupart des navigateurs Web intègrent un gestionnaire de mots de passe. Si vous ne le protégez pas avec un mot de passe maître (ou principal), les mots de passe enregistrés seront accessibles en clair, à certains programmes et à toute personne ayant accès à votre navigateur.
Pour Firefox, vous pouvez ajouter les modules:
UblockOrigin qui permet de bloquer notamment les publicités et certains cookies intrusifs.
NoScript Security Suite, moins facile d'usage, ne permet l'exécution de scripts JavaScript que sur les domaines de confiance de votre choix (p.ex. le site de votre banque).
Détecte et empêche le crossitescripting, et améliore la sécurité des greffons , java (attention ce sont des greffons propriétaires)…
Un programme n'est pas à l'abri de failles de sécurité.
Si une faille est présente et que le programme est lancé en tant qu'utilisateur normal, dans le pire des cas, ce seront vos données personnelles qui seront endommagées.
Par contre, si le programme est lancé en tant que super-utilisateur, une faille pourrait éventuellement permettre d'effectuer toutes les actions permises aux super-utilisateurs (suppressions de fichiers systèmes, installation de programmes…).
Un autre risque est celui d'une erreur humaine. Par exemple, si vous lancez Nautilus en super-utilisateur, vous pouvez supprimer des fichiers systèmes, modifier n'importe quel fichier…
Ainsi, il est recommandé d'éviter de lancer les programmes graphiques en tant que super-utilisateur, quand cela peut être évité. À plus large échelle, il est fortement recommandé de ne jamais démarrer un environnement de bureau (Gnome Shell, KDE…) en tant que super-utilisateur.
Le "Bureau à distance" est une fonctionnalité permettant de contrôler graphiquement votre ordinateur de l'extérieur.
Avoir cette fonctionnalité activée peut être dangereux, surtout si le mot de passe utilisé n'est pas suffisamment efficace.
Un utilisateur malicieux pourrait alors prendre le contrôle de votre ordinateur (avec les droits d'utilisateur normaux) et accéder à vos fichiers…
Ainsi, il est conseillé de le désactiver lorsqu'il ne vous est pas utile.
Voir la page Bureau à distance.
Pour le désactiver, entrez la commande suivante dans un terminal :
gsettings set org.gnome.Vino enabled false
Vous pouvez mettre cette commande dans les programmes au démarrage, afin d'automatiser la dévalidation à la connexion.
Voir la page wifi.
Consulter "la page dédiée aux antivirus".
Voir aussi la page Réseau.
Voir le portail Serveur.
Explication :
Dans cette méthode, votre ordinateur a une adresse IP qui est directement accessible depuis internet ce qui facilite amplement les attaques et vous rend vulnérable à celles les plus élaborées (notamment sous linux).
Cette méthode est simple et consiste à créer un réseau privé qui isole en partie (via des ports) vos ordinateurs par rapport à internet et pour l'appliquer, il s'appuie sur les box ADSL. En effet ces dernières comportent un mode routeur qui sépare en quelque sorte internet de votre propre réseau en vous attribuant des IP privées (192.168.0.0/16, 172.16.0.0/12 ou 10.0.0.0/8).
Toutes les requêtes provenant d'internet sont interceptées par votre box ADSL qui agit comme un tampon entre internet et vos ordinateurs.
Il suffit ensuite d'autoriser la redirection (forward) de ports pour certains logiciels (p2p, bittorent, …) tel que aMule, bitTorrent ou Transmission.
Voir freebox pour savoir ouvrir des ports de connexions.
Cette rubrique concerne les droits d'accès à vos données ou aux données de tiers.
Définitions :
Quelques outils :
sudo
? Comment avoir des privilèges sans être root ?Le chiffrement (la cryptographie) est une façon efficace de conserver et d'échanger des données sans que quiconque ne puisse les interpréter.
Voir ce chapitre
Outil | Action | Dans la distribution |
---|---|---|
shred | Détruire un fichier pour qu'il ne soit pas récupérable. | Oui , installer coreutils |
wipe | Pour détruire un dossier, utiliser. | Oui, installer wipe |
nwipe | Pour effacer un disque dur sans qu'il ne soit récupérable. | Oui, installer nwipe |
secure-delete | Contient plusieurs outils : sdmem sfill srm sswap | Oui, installer secure-delete |
dcfldd | Peut effacer un disque en utilisant un pattern | Oui, installer dcfldd |
bleachbit | Effacer des fichiers ,rendre l'espace libre irrécupérable. | Oui, installer bleachbit |
Il existe des extensions pour nautilus telle que apt://nautilus-wipe qui ajoute les entrées « Effacer en toute sécurité » et « Remplir l'espace vide de manière sécurisée » au menu accessible par le clic-droit.
tutoriel court et didactique sur la série d'outils Secure-Delete, dont un des outils (sfill) permet notamment d'effacer réellement (en réécrivant par-dessus des données aléatoires en multiples passes) tout l'espace inutilisé du disque dur (c'est-à-dire notamment tous les fichiers et répertoires que l'utilisateur a déjà effacés "classiquement").
La sécurité de vos données passe aussi par leur sauvegarde, car vous n'êtes pas à l'abri de divers problèmes (suppression par erreur, mise à zéro,…)
Pour plus d'informations, consulter le portail sauvegarde.
Méthode de choix de mots de passe plus particulièrement appliqué à la connexion de site internet.
Résultat : quelques années pour craquer ce mot de passe facile à mémoriser.
Pour mieux diversifier ses mots de passe et s'en souvenir facilement, on peut avoir recours à la technique des « bases ».
Par principe, chacune de ces bases sera utilisée selon le contexte d'identification :
L'objectif et l'avantage est de pouvoir ensuite cumuler les bases pour obtenir une super passe-phrase, donc plus de sécurité si nécessaire.
La mémorisation de petites sections est d'autant plus facile qu'on les utilise indépendamment et couramment.
Pour être encore plus sûr, tout en étant facilement mémorisable, on ajoute des variables et des séparateurs : un séparateur sera inséré entre chaque base et sa variable s'il y en a.
Ainsi vous avez des repères logiques et des contextes où appliquer ces mots de passe, fluctuants, mais bien structurés pour vous.
Par exemple :
Base 1 [moi] : 8-12 caractères. C'est votre mot de passe courant pour votre OS. Par exemple une citation ou un acronyme comme expliqué plus haut.
+ séparateur(s) (dièse, arobase, astérisque, virgule, parenthèse, point d'interrogation, etc.)
Base 2 [mon matos] : 4-6 caractères. C'est le mot de passe bref pour, par exemple, votre BIOS.
Choisissez-le bien : on y va rarement tous les jours, à moins de verrouiller le poste.
Dans ce cas, ce ne doit pas être le même…
+ séparateur
Base 3 [les tiers] : 6-8 caractères.
Votre mot de passe web (plus variantes : voir plus bas).
+ séparateur
Base 4 [pré carré] : 6-10 caractères ou plus. Un mot de passe numérique, facile à retenir, mais avec l'insertion de séparateurs (exemple : date de naissance « 13:06:1924:8h », date historique « Marignan:1515 »).
ette base est uniquement destinée à allonger les trois autres en passe-phrases, mais ne doit jamais être utilisée seule sans variables.
Cas de la base 3
Méfiez vous des sites web qui, à la souscription, vous confirment par mail l'ouverture de votre compte et y indique votre mot de passe en clair.
Il vaut mieux éviter d'utiliser toujours le même… Ou mieux, d'en donner un simple genre 12345678 puis de changer cela ensuite.
Il est recommandé d'ajouter une sécurité supplémentaire à cette base 3 : par exemple des caractères extraits du nom de domaine du site (invariant).
Un mot de passe sur un compte du forum.ubuntu-fr.org peut devenir monpasseweb%FURO. Ainsi les mots de passe sont faciles à mémoriser et toujours différents…
Pour le changement de mot de passe, on peut choisir de lire à l'envers monpasseweb%ORUF ou n'utiliser que les consonnes, etc.
Évitez de changer plus d'une base à la fois ainsi que de modifier les séparateurs, ils sont structurants.
Si vous avez un doute sur la confidentialité d'une base, ajoutez seulement le séparateur suivant et si vous voulez, la base suivante !
Bien entendu il faut personnaliser tout cela et que cela corresponde à votre logique. Gardez seulement le principe des bases, des séparateurs et des variantes.
Le tout bien structuré et chaque partie mémorisée et contextualisée empêchera tout voyeur de faire comme dans les films : craquer votre login en vingt secondes avec le nom du chien.
Risque: il est possible de supprimer tout mot de passe sur un compte utilisateur, en
Pour se connecter il suffira d'appuyer sur entrée à la demande du mot de passe (mot de passe vide).
Ceci peut être pratique par exemple dans le cas d'un système multi-utilisateur lorsque ceux ci ne veulent pas se connecter avec un mot de passe.
Solution : ne pas supprimer le mot de passe sur un compte utilisateur.
Solution alternative : si vous avez un compte utilisateur sans mot de passe, attention à supprimer tout accès à distance à la machine pour limiter les risques d'intrusions, et empêcher tout intrus d'avoir un accès physique à la machine.
Pour empêcher un intrus de vider la mémoire du BIOS (et donc la protection par mot de passe) en ouvrant l'unité centrale, puis booter sur un live-CD ou live-USB (ce qui lui confère un équivalent des droits root sur la machine), il faut :
Pour empêcher un intrus de changer l'ordre de boot pour démarrer sur un live-CD ou live-USB par exemple (ce qui lui confère un équivalent des droits root sur la machine), il suffit de mettre un mot de passe au BIOS.
Pour cela, il faut trouver "Administrator password" ou "password" dans le menu du BIOS (l'interface change suivant les cartes-mères) et définir un mot de passe.
Remarque : Il faudra aussi empêcher les intrus d'ouvrir la machine car la majorité des cartes-mères sont équipées d'un petit cavalier, en général à coté de la pile du BIOS, qui permet de « remettre à zéro » tout ce qui a été paramétré au niveau du BIOS, y compris le mot de passe.
Parfois, le simple fait de retirer la pile du BIOS pendant plusieurs secondes aboutit au même résultat.
Risque :
Par défaut, le logiciel chargeur de système Grub inclut dans la liste des choix de système Ubuntu en Recovery mode.
Sur un ordinateur isolé (= sur lequel la gestion d'accès est gérée localement et non pas par un serveur) il suffit de choisir cette option pour profiter des droits root sur la machine, sans avoir à montrer patte blanche (pas de nécessité de mot de passe pour accéder aux droits administrateurs) !
Solution : empêcher un intrus de démarrer votre ordinateur en mode recovery.
Attention, la solution dépend de la version de grub ( ie grub vs grub2 qui est maintenant déployé par défaut )
Pour cela, éditer le fichier « /boot/grub/menu.lst », au choix :
Mettre un mot de passe à GRUB pour les opérations de modification d'une entrée :
## password ['--md5'] passwd # If used in the first section of a menu file, disable all interactive editing # control (menu entry editor and command-line) and entries protected by the # command 'lock' # e.g. password topsecret # password --md5 $1$gLhU0/$aW78kHK1QfV3P2b2znUoe/ password --md5 "hash md5 de votre mot ou phrase de passe"
ou
password "votre mot de passe"
Pour obtenir le hash md5 d'un mot de passe utilisez la commande :
grub-md5-crypt
Enlever la création automatique d'une entrée recovery
## altoption boot targets option ## multiple altoptions lines are allowed ## e.g. altoptions=(extra menu suffix) extra boot options ## altoptions=(recovery mode) single # altoptions=
ou
Faire que ces entrées soient protégées par mot de passe.
## should update-grub lock alternative automagic boot options ## e.g. lockalternative=true ## lockalternative=false # lockalternative=true
Puis, mettre à jour GRUB :
sudo update-grub
L'idée est d'empêcher un utilisateur ayant la possibilité de redémarrer votre machine et d’accéder à grub puisse réinitialiser votre mot de passe et accéder à vos données sans même avoir à démonter le disque de votre machine, la procédure est tellement courante qu'elle fait l'objet d'un tutoriel : https://doc.ubuntu-fr.org/tutoriel/comment_changer_son_mot_de_passe_principal
Grub2 ( version > 1.98 ) est vraiment plus configurable que Grub1 ( version ⇐ 0.97 )
Mais cela va aussi avec deux niveaux de générations de scripts (bash, sh) utilisant le contenu de /etc/grub.d/ et /etc/default/grub pour générer un /boot/grub/grub.cfg avec la commande sudo update-grub.
Donc toutes les modifications faites à la main dans grub.cfg seront perdues à chaque mise à jour, c'est pourquoi il faut ajouter les modifications dans des sources utilisée pour la génération.
Il est possible avec grub2 d'entrer en mode commande ou d"éditer les entrées, ainsi tout devient possible et il est très facile de devenir root, même sans utiliser le recovery-mode.
Ce que je propose ici est de mettre un mot de passe pour l'utilisation des modes editions 'e' et commande 'c' de grub.
L'idéal serait de disposer d'un script… ce que je vous propose plus bas.
En attendant en se basant sur https://www.justegeek.fr/proteger-ledition-du-grub-avec-mot-de-passe/ en français ( et des commentaires de ce post ) on peut avancer.
Personnellement j'ai décidé de créer un fichier /etc/grub.d/00_security_header
Qui contient :
#! /bin/sh cat <<EOF # Password set superusers="ubuntufr" password_pbkdf2 ubuntuffr grub.pbkdf2.sha512.10000.92491FF0E518FFB426EEEFFD33A9506CE8F8F70DAFA4669EDB58C13DC8BEC65EB95BD306F62CD360E8C7B20D5EB0B61B1A45D60A5779168584D7A60134C29079.671C3CFA286229CAF7C561232EFC70549BFFE4F20B34E376830769CCB647569F9504CAA3948F11C96DBBA574EC47B8DA42972E41E7A6F1501188BFE84A45455E set menuentry_id_option="--unrestricted \$menuentry_id_option" EOF
Puis on donne les droits en exécution dessus :
sudo chmod +x /etc/grub.d/00_security_header
Nous exécutons update-grub :
sudo update-grub
Pour une raison non déterminée, les droits du fichier généré /boot/grub/grub.cfg ne sont pas bons.
Il faut donc faire ceci :
chmod 444 /boot/grub/grub.cfg
Le contenu grub.pbkdf2 correspond ici au mot de passe 'test' et a été généré à l'aide du programme grub-mkpasswd-pbkdf2
Voici un script qui doit faire le boulot, j'en suis l'auteur donc vous pouvez en faire ce que bon vous semble mais sans garantie aucune autre que le fait que je l'ai utilisé sur ma machine et que cela a marché ( Ubuntu 16.04.1 LTS 64 bits avec grub 2.02~beta2-36ubuntu3.2 ).
#!/bin/bash usage() { echo "Creating a grub password to protect grub menu from edition at boot" echo "Basé sur https://www.justegeek.fr/proteger-ledition-du-grub-avec-mot-de-passe/ (french)" echo "With help from https://help.ubuntu.com/community/Grub2/Passwords" } create_private_dir() { if [[ -d ~/.grubedit ]] then echo "~/.grubedit already exists" else mkdir ~/.grubedit fi } create_stamp_if_not_set() { if [[ -z $stamp ]] then stamp=$(date +%d%m%Y%H%M%S) # guess why sleep 1 fi } private_grub_backup() { cp /boot/grub/grub.cfg ~/.grubedit/grub.cfg.$stamp.backup cp /etc/grub.d/00_security_header ~/.grubedit/00_security_header.$stamp.backup } update_header_with_password() { LANG=C grub-mkpasswd-pbkdf2 | { echo "Entrez le mot de passe deux fois" while read LINE do if [[ $LINE =~ (grub\.pbkdf2\..*) ]] then PDKDF2=${BASH_REMATCH[1]} echo "see $OUTFILE" cat <<EOFE >$OUTFILE #! /bin/sh cat <<EOF # Password set superusers="$USER" password_pbkdf2 $USER $PDKDF2 set menuentry_id_option="--unrestricted \\\$menuentry_id_option" EOF EOFE fi done } if [[ -f $OUTFILE ]] then sudo cp $OUTFILE $OUTSYSFILE sudo chmod a+x $OUTSYSFILE sudo update-grub # looks weird, but when addding a script this had an impact on generated permissions sudo chmod 444 /boot/grub/grub.cfg else echo "[ERROR] no security password grub file generated ( $OUTFILE does nor exists )" >&2 fi } remove_security_password() { if [[ -n $OUTSYSFILE ]] then echo "Suppression de $OUTSYSFILE" sudo rm $OUTSYSFILE fi } create_private_dir create_stamp_if_not_set OUTFILE=~/.grubedit/00_security_header.$stamp.new OUTSYSFILE=/etc/grub.d/00_security_header while [[ $# > 0 ]] do case $1 in remove) remove=1 break ;; create) create=1 break ;; help) usage exit 0 break ;; *) echo "[ERROR] unrecognized option $0" >&2 exit 1 ;; esac shift done private_grub_backup if [[ $remove == 1 ]] then remove_security_password sudo update-grub else update_header_with_password fi echo "Fait"
Sauvez-le dans un fichier createagrubpasswd.sh
Pour le lancer il faut d'abord le rendre exécutable pour tous :
chown u+x ./createagrubpasswd.sh
Puis nous exécutons le script :
./createagrubpasswd.sh
Entrez le mot de passe en validant avec entrée, et refaites le une seconde fois pour vous assurer de ne pas avoir fait une faute de frappe.
Au prochain redémarrage, si vous désirez édtier le menu de grub ( 'e' ) ou entrer en ligne de commande ( 'c' ) l'utilisateur, votre utilisateur courant vous sera demandé et le mot de passe que vous avez choisi.
Pour supprimer ce que vous venez de mettre en place relancez le script avec l'option remove
./createagrubpasswd.sh remove
Remarque pour protéger toutes les entrées toujours avec le même mot passe, il suffit de commenter la ligne contenant –unrestricted dans le script.
La deuxième méthode consiste à mettre un mot de passe au compte superutilisateur, veuillez pour cela vous référer à la section 2 de la page root.
Voir la page Bluetooth.
Si vous utilisez la connexion automatique et que vous craignez de vous faire voler votre ordinateur, il peut être intéressant d'utiliser le logiciel Pombo qui vous aidera à récupérer votre ordinateur en cas de vol.
Voir aussi le logiciel Prey qui propose la même chose sans avoir a installer de serveur
Voir Vidéo-surveillance.
Afin de boucler la boucle (feedback/système) vous pouvez tester la sécurité en place, ou que vous désirez mettre en place, et décider en conséquence.
Pour cela vous pouvez utiliser ces outils :
Contributeurs : Reneca et Judibet.