Soutenir Vision du Web dans son partage de logiciels et de ressources libres

Ce mineur crée de la monnaie numérique Monero pour soutenir Vision du web.
Merci de désactiver votre bloqueur de publicité.
Aucune publicité ne sera affichée.
Le mineur utilise les ressources de votre machine pour créer gratuitement de la monnaie numérique.
Le montant des donations pour Vision du web est de 0.073256572386346 Monero.

Sommaire Sécurité : Différence entre versions

De Wiki. Analyse, Communication, Développement, Hacking.
Aller à : navigation, rechercher
m (Chiffrer une archive avec 7z)
m (Décompresser des fichiers .gz)
 
Ligne 293 : Ligne 293 :
 
  # Chiffrer un fichier est un travail pour gpg ou openssl.
 
  # Chiffrer un fichier est un travail pour gpg ou openssl.
  
===Décompresser des fichiers .gz===
+
====Décompresser des fichiers .gz====
 
  gzip -d fichier.*.gz
 
  gzip -d fichier.*.gz
 
  gzip -d fichier.gz
 
  gzip -d fichier.gz
 
  gzip -d *.gz
 
  gzip -d *.gz
 +
 +
===Compresser avec KGB Archiver===
 +
Source : https://packages.debian.org/jessie/utils/kgb
  
 
==Chiffrement==
 
==Chiffrement==

Version actuelle datée du 8 décembre 2018 à 02:01

Naviguer sur le wiki : Accueil du wiki - Administrateur - Développeur - Intégrateur - Marketing - Multimédia - Objectifs - We make Hack
Naviguer sur le site : Accueil du site - Les annuaires - Les éditoriaux - Le forum - Les outils - Les projets
 
Consulter le sommaire de cette page en étant déconnecté du réseau : Télécharger le sommaire en PDF

Sommaire

Sécurité

Changer le mot de passe du root

On suppose que vous avez le droit légal de le faire.
La possibilité technique n'est pas équivalente à avoir le droit de le faire.
Autrement, relire article 323-1 et suivants du code pénal : https://www.legifrance.gouv.fr/affichCodeArticle.do?idArticle=LEGIARTI000006418316&cidTexte=LEGITEXT000006070719
Le fait d'accéder ou de se maintenir, frauduleusement, dans tout ou partie d'un système de traitement automatisé de données est puni de deux ans d'emprisonnement et de 60 000 € d'amende.
Lorsqu'il en est résulté soit la suppression ou la modification de données contenues dans le système, soit une altération du fonctionnement de ce système, la peine est de trois ans d'emprisonnement et de 100 000 € d'amende.
Lorsque les infractions prévues aux deux premiers alinéas ont été commises à l'encontre d'un système de traitement automatisé de données à caractère personnel mis en œuvre par l’État, la peine est portée à cinq ans d'emprisonnement et à 150 000 € d'amende.
Grub2 : contourner l’authentification Linux, changer le mot de passe utilisateur ou mot de passe root oublié.
Source : https://memo-linux.com/grub2-contourner-lauthentification-linux-mot-de-passe-utilisateur-ou-root-oublie/
Utiliser sudo bash depuis un terminal peut aussi permettre de devenir root.

Changer le mot de passe du root

Démarrer et appuyer sur la touche e
Une fois dans le fichier du grub, appuyer à nouveau sur e puis ajouter en fin de page : init=/bin/bash ou init=/bin/sh
Touche entrée puis touche b pour arriver à un prompt
Monter le système en lecture / écriture : mount -n -o remount,rw /
Mettre à jour le mot de passe du root, lancer la commande passwd
reboot

Changer le mot de passe d'un utilisateur

1) Solution sale :
Quand tu a trouvé le nom de l'utilisateur dans /etc/passwd, tu peux aller supprimer le mot de passe correspondant dans /etc/shadow.
Ensuite redémarrer l'ordi sur son disque dur, tu te connecte sans mot de passe et tu en crées un nouveau avec la commande "passwd".
C'est assez sale car durant un moment l'ordi fonctionne sans que le compte en question ne soit protégé par un mot de passe.
Il faut donc couper toute connexion réseau a ce moment la (pour un cable on débranche facilement, pour la wifi c'est moins évident) ou alors utiliser un solution plus propre.
2) Solution propre :
Quand tu a trouvé le nom de l'utilisateur dans /etc/passwd, tu peux éditer /etc/shadow et remplacer l'empreinte du mot de passe correspondant a ce compte par l'empreinte de ton mot de passe.
Ça demande de connaitre l'empreinte de ton mot de passe, donc de l'avoir préparée au préalable a un endroit que tu pourra accéder quand tu fera la manip.
3) Autre solution propre :
Quand tu a trouvé le nom de l'utilisateur dans /etc/passwd, tu peux utiliser un chroot pour lancer la commande passwd du système dont tu veux modifier le mot de passe.
Par exemple si tu a monté la partition système que tu veux modifier sur /mnt/root et tu vois que l'utilisateur s'appelle "bob" :
mount -o bind /proc /mnt/root/proc
mount -o bind /sys /mnt/root/sys
mount -o bind /dev /mnt/root/dev
chroot /mnt/root /bin/bash
passwd bob
exit
umount /mnt/root/dev
umount /mnt/root/sys
umount /mnt/root/proc
umount /mnt/root

Créer un mot de passe fort pour chaque compte à utiliser

Utiliser des assemblages de mots ou utiliser un générateur de mot de passe pour créer un mot de passe fort.

Générateur de mot de passe

Pwgen

sudo apt install pwgen
Lancer pwgen pour obtenir des mots de passe de 15 caractères aléatoires.
pwgen -ysBv 15
 [email protected])R4c&k^?sz#9 s`9CjR%VCWw-mT) xCp%/#z:X3NJp%J ckhLkt7Kmk|q"=< _brbc{(N7!"pV(W
 ]bvj.3&,7n?CR37 X9<T_%R<]K[/d>( z*t>kMP>gr/c;9W `=[@"v]]t7"f7Vc ?!htcN9~bd]*%w/
 [email protected];vzH3:pR*+ /JvJKHP\W_k\3CM 4|[email protected]%%Xk<`(H 7W:g</<3K`7vd(< $h9<V^f"N)|XV}{
 ,p4%3x\'RcsX?JW xX\v*x7gz#Xj;zx "!jz?$vL7""RP7. #&ks-Jh4dx3jfXb "}f&f%-{Cg3RR)]
 ^Czg4[&)/{z>dMM .xj.p3RwpW;THkh */qHvxL'z3{r=P~ p]H4_!r`%c;m4d7 s]4?qCtV([}3"-L
 ^[email protected]/9pkh~"[email protected] $xPX'J{9RcV4&h& #-H/~n#t%9xtj(q tk^[Fvmg(gW!Nx9 R3-^mVJr`h,-=~#
 ''`L`(%!~9-(9LT n{7;J\wxbrnXm}K ].FL'9"t!=r=g\* ^]<}4W-kW?L|[v+ Tp4~(RW[!4/c\RF
 ?K]7fVdW%W)%.&! nV`q%%=zvJ3tT%v Kd^fxk"7;K[\+|` @.\+Fr&)Rv}zn9~ hbwRsL{:]p'q:L9
 RRj"=h<T\_3)f-v >[email protected];4wTq4cRr ^@N*-3H%.XV~=n+ <`4`(kF]$bFXqtz 7vMN4`m,9=-|[email protected]
 X?gjL-,<$t9!(9[ P~dx{9hgf9"9!/F [email protected]:h `b-<zdXj3[&p=cv #){J!q$C4jsV`[email protected]
 CXP.f)W|^=?(4j? 79J''Kt*`n]ws$H [email protected][email protected]^9cp FfRX>[email protected]*Tzj4~ bNdrP7;x#k/Vs:p
 N9C*p}(|$}-,}wW t`$3#7MtFwHn_Fv MHKh/~n[4>)/$3n Kt[$R!}FWT9($(c Ncm4,q/39WjtM7F
 x%@4XT*?qn%)h_! c%X{4-7$T*mK73X Vc)F^b9zN:fhs.C `+7K')9p%#]4]v/ %3;4bX.n3'd$b{~
 }|fRgk#9md~F]N7 m;j[f-7HM.,N*T& [email protected]=3M3-)P?:$ h;+{C+sw],34Mr[ Jhg[#7bmz7J_)@~
 Rj4<(f+z%W|[email protected]~g qpnr7C\j?*9):hd kb"K-{9V'xqN4N: jCc&F%~C{dqHK7j ~`sf~P]~_s4+CnP
 ~H>3'>ts7#'W$k9 *3=~WHxpp{#49"* +7/L\RtH/*9P}!( Thm]KmR]9W^:[email protected] 9~hKp{CT_3pw>#P
 gPq44H`<"*[email protected]/ k!]rK^9'+WMRF|p (s\v-h/F4NFm%%s "rL9],}`"vP9|"~ n9|qHbf"g,pMsH,
 L*VNtF}}[email protected],b{ >q{Kdp.[d"KF9N] vrfJ?R~s+rF7.Mr 7fLmkss3`MrHvtC 9{=pfs{c<dHNMRx
 ?&(P[4<{([npj&R JNq%`&@\HX&=94J qmc/~-wqq-Mxn)9 cdCr~4d&tm)z&F} +cPr(<txV4z"J{_
 gw$T)WCbfqt;;4m P,L{L.!$pt7.|q` JwT\>Pk^j+);9,n Npf'.wPJ~fz9Tt< 7T)z(.fR*X}'7dn

xkcdpass

sudo apt install xkcdpass
Lancer la commande : xkcdpass va générer 6 mots aléatoires en anglais : two-piece washbasin forelimb Roethke Ryazan Thackeray.
Les mots générés sont basés sur : http://wordlist.aspell.net/12dicts-readme/
xkcdpass utilise par défaut dict2 et dict6.

Diceware

sudo aptitude install diceware
Lancer la commande : diceware va générer des mots aléatoires en anglais mis bout à bout sans espace.
MalignPreyOiledPalmFireSome

Revelation

sudo apt install revelation
Lancer la commande : revelation va ouvrir une fenêtre pour générer les mots de passe.

Stocker les mots de passe

Keepass 2

Le gestionnaire de mots de passe Keepass sert à stocker les mots de passe.
Il permet également de générer des mots de passe aléatoire.
Installer Keepass 2 depuis les dépôts
apt-get install keepass2
Si Keepass 2 n'est pas présent dans les dépôts
Installer Keepass 2 pour GNU/Linux à l'aide du dépôt par ppa.
$ sudo add-apt-repository ppa:eugenesan/ppa
$ sudo apt-get update
$ sudo apt-get install keepass2

Supprimer keepass2

$ sudo apt-get remove keepass2

Keepass 2 pour Windows

Ok.png Installer Keepass2 sur Windows : https://sourceforge.net/projects/keepass/files/KeePass%202.x/

Anonymat

Anonymat.

Antivol pour localiser votre ordinateur

Pombo

Pombo fait un travail en tâche de fond qui envoie des informations de traçage à un serveur web.
Si votre ordinateur est perdu ou volé, il suffit de se connecter sur votre serveur web.
Récupérer le dernier fichier envoyé par Pombo, le décrypter et le fournir à la police.
Il faut pour cela qu'une connexion internet soit effectuée avec votre machine.
Installer Pompo : http://sebsauvage.net/pombo/index.fr.html

Preyproject

Un projet similaire mais payant, qui propose tout de même une offre gratuite.
Source : https://www.preyproject.com/download

Configurer et utiliser SSH

Configurer et utiliser SSH.

Configurer les fichiers du dossier racine etc

Configurer le fichier hosts

Plus d'informations sur la page suivante, avec plusieurs exemples et des liens en ressource.
( Le nom de la page doit être modifié. )
Le fichier /etc/hosts du 8 Août 2017 : GNU Linux etc hosts 8 Aout 2017.

Installer le paquet DenyHosts

Prérequis : Avoir installé le paquet openssh-server.
Permet d'établir des règles pour les connexions entrantes distantes.
Denyhosts est un daemon qui analyse en permanence le fichier de log /var/log/auth.log.
Au bout de plusieurs tentatives de connexion infructueuses l'adresse IP est blacklistée dans le fichier /etc/hosts.deny.
Installer denyhosts :
sudo apt install denyhosts
Si le paquet n'est pas présent dans la distribution, installer denyhosts sur Debian 9 Stretch :
cd /home/debian/
wget http://ftp.fr.debian.org/debian/pool/main/d/denyhosts/denyhosts_2.10-2_all.deb
dpkg -i denyhosts_2.10-2_all.deb
sudo rm denyhosts_2.10-2_all.deb
Fichier de configuration : sudo nano /etc/denyhosts.conf
Utiliser la commande --purge pourrait être efficace pour vider les adresses en mémoire dans hosts.deny.

hosts.allow et hosts.deny

Pour restreindre l'accès à votre machine Unix ou Linux, vous devez modifier les fichiers /etc/hosts.allow et /etc/host.deny. Ces fichiers sont utilisés par les programmes tcpd (tcp wrapper) et sshd pour décider d'accepter ou non une connexion provenant d'une autre adresse IP. ITS recommande que, pour commencer, vous restreignez l'accès aux seules adresses de réseau que vous êtes certain devrait avoir accès. Les deux exemples de fichiers suivants permettent les connexions à partir de n'importe quelle adresse dans le domaine de réseau visionduweb.eu, mais pas d'autres.
Installer le paquet denyhosts pour autoriser des adresses IP SSH avec hosts.allow.
Installer le paquet denyhosts pour protéger ssh avec hosts.deny.

/etc/hosts.allow

# hosts.allow   This file describes the names of the hosts that are allowed to use the local INET services, as decided by the '/usr/sbin/tcpd' server.
# Tout autoriser.
# ALL : ALL
ALL: localhost
# Autoriser uniquement le domaine visionduweb.eu à se connecter.
# ALL: .visionduweb.eu
# Autoriser une IP.
sshd: 127.0.0.1
sshd: 127.0.1.1
# Autoriser plusieurs IP.
# sshd : IP-Address1, IP-Address2, IP-Address3
# Autoriser une plage IP.
# sshd : 33.*.*.*
# sshd : 66.66.*.*
# Autoriser toutes les adresses.
# sshd : ALL

/etc/hosts.deny

# Avec cette configuration, l'accès à votre machine par n'importe quel hôte est refusé, sauf ceux spécifiés dans hosts.allow.
# hosts.deny    This file describes the names of
#               the hosts that are *not* allowed 
#               to use the local INET services, as 
#               decided by the '/usr/sbin/tcpd' 
#               server.
#
# deny all by default, only allowing hosts or 
# domains listed in hosts.allow.

ALL: ALL
sshd: ALL
# Une autre possibilité serrait de tout interdire sauf une adresse IP, directement depuis hosts.deny :
sshd : ALL EXCEPT 127.0.0.1
# Bloque toutes les connexions et permet la connexion SSH uniquement pour la machine avec l'adresse IP 192.168.0.15.
# Pas sur de bien saisir puisqu'il s'agit d'autoriser une machine distante à se connecter en local.
# Je tente d'autoriser la connexion locale entrante uniquement depuis la machine locale.
# Il est possible qu'il faille ajouter l'adresse IP du serveur distant à autoriser.
# Pas sur que ce soit nécessaire, si on cherche à se connecter à un serveur distant, ce n'est pas le serveur distant qui se connecte à nous.
# A suivre.

Tester le paramétrage

tcpdmatch sshd www.visionduweb.eu
ou
tcpdmatch in.telnetd www.visionduweb.eu
Va retourner :
access: granted
ou
access: denied

Redémarrer Denyhosts

sudo /etc/init.d/denyhosts restart

Ressources complémentaires

Faq : http://denyhosts.sourceforge.net/faq.html
Informations complémentaires sur le paramétrage du fichier de configuration : https://flexion.org/posts/2012-11-ssh-brute-force-defence/
Informations complémentaires sur le paramétrage du fichier de configuration : http://www.desmoulins.fr/index.php?pg=informatique!linux!denyhosts
Informations complémentaires sur le paramétrage du fichier de configuration : https://www.it-connect.fr/proteger-son-acces-ssh-avec-denyhosts%EF%BB%BF/
Informations complémentaires sur le paramétrage du fichier de configuration : https://www.it-connect.fr/proteger-son-acces-ssh-avec-denyhosts%ef%bb%bf/
Informations complémentaires sur le paramétrage du fichier de configuration : https://www.tecmint.com/block-ssh-server-attacks-brute-force-attacks-using-denyhosts/

Sauvegarder Linux

Sauvegarder et réinstaller Linux

Désactiver les SUID

Parfois très pratiques, le SUID vous permet de faire fonctionner une application en tant qu'autre utilisateur. Imaginez que quelqu'un ai accès à l'une de ces applications (via un shell, apache), et puisse lire votre /etc/shadow... Toute la sécurité de votre serveur serait compromise.
Pour trouver tous les binaires qui utilisent un SUID, tapez la ligne suivante :
[email protected] # find / -ignore_readdir_race -perm -4000
La plupart des administrateurs systèmes recommandent de désactiver les services comme ping ou traceroute lorsque vous n'en avez pas besoin.
Désactiver aussi /usr/bin/chfn, /usr/bin/chsh, /bin/mount, /bin/umount, /usr/bin/gpasswd, /usr/bin/newgrp, /usr/sbin/ping6 et /usr/bin/ping.
Désactiver le SUID sur ces binaires empêche tout autre utilisateur que le propriétaire de l'exécuter.
Savoir que la plupart de ces services auront besoin d'être exécutés en tant que root pour fonctionner.
Pour ce faire : [email protected] # chmod -s /chemin/du/binaire

Compresser des fichiers

Comparer les différents formats de compression

Source : http://rlwpx.free.fr/WPFF/comploc.htm
Lien mort lors de la dernière connexion.

Compresser en .zip en ligne de commande

sudo apt-get install zip
zip archive.zip fichiers
Décompresser avec la commande unzip archive.zip
Ajouter un mot de passe à une archive zip n'est pas considéré comme sécurisé.
L’algorithme de chiffrement utilisé par la commande zip est PKZIP.
L’algorithme PKZIP est connu pour être non sécurisé.
zip -e <file_name>.zip <list_of_files>
Créer une archive zip avec un mot de passe en utilisant 7z.
7z soutient AES-256 algorithme de chiffrement avec hachage SHA-256.
7z peut produire des archives zip format avec système de cryptage plus sécurisé.
7z a -pMY_SECRET -mem=AES256 secure.zip test.txt
Décompresser avec la commande 7za e secure.zip

Compresser en .tar en ligne de commande

Sauvegarder deux répertoires vers un répertoire distant avec SSH et en compressant en .tar lors du transfert.
tar -cf - /mon_dossier_1 /dossier/dossier_2 | ssh -2 [email protected] tar -xf - -C /dossier_de_destination/sur_serveur_distant/

Compresser en .tar.gz en ligne de commande

cd /home/user/Documents
tar -czvf $(date +\%A)_Documents.tar.gz *
# Corriger le message d'information suivant "tar: Suppression de « / » au début des noms des membres"
# Se placer dans le dossier cd /home/user
# tar -czvf Documents.tar Documents
# tar: /home/user/Documents : fichier modifié pendant sa lecture.
# Le script est lancé depuis le dossier à sauvegarder.
# Lancer plutôt le script depuis le répertoire utilisateur ou le Bureau.
# Compresser et ajouter un mot de passe
# L'option avec mot de passe n'existe pas pour tar.gz mais elle existe pour d'autres formats, par exemple zip et 7z.
# La compression est un travail pour tar et gzip ou bzip2.
# Chiffrer un fichier est un travail pour gpg ou openssl.

Décompresser des fichiers .gz

gzip -d fichier.*.gz
gzip -d fichier.gz
gzip -d *.gz

Compresser avec KGB Archiver

Source : https://packages.debian.org/jessie/utils/kgb

Chiffrement

Chiffrer une archive avec openssl et tar.gz

tar cz fichier_ou_dossier|openssl enc -aes-256-cbc -e > out.tar.gz.enc
tar cz fichier_ou_dossier|openssl enc -aes-256-cbc -pass pass:LeMotDePasse -e > out.tar.gz.enc
# Un mot de passe est demandé.
*** WARNING : deprecated key derivation used.
Using -iter or -pbkdf2 would be better.
# Déchiffrer un fichier :
openssl aes-256-cbc -d -in out.tar.gz.enc|tar xz
# Cette méthode fonctionne bien depuis GNU/Linux Debian, mais, l'archive ne semble pas pouvoir être décompressée depuis GNU/Linux Mint.
Chiffrement symétrique avec openSSL : http://www.fil.univ-lille1.fr/~wegrzyno/portail/PAC/Doc/TP2/tp2002.html
Chiffrer un fichier avec OpenSSL sous GNU/Linux : https://angristan.fr/chiffrer-fichier-openssl-linux/
Je n'arrive pas à décompresser l'archive chiffrée depuis un système d'exploitation GNU/Linux Mint.
L'archive n'est pas corrompue, puisque, si j'utilise une autre machine Debian, j'arrive bien à décompresser l'archive.
Pour éviter ce genre de difficultés et permettre la décompression de l'archive, il est sûrement préférable d'utiliser une autre méthode pour chiffrer la sauvegarde.

Chiffrer une archive avec 7z

Installation de 7-zip sous Linux :
apt-get install p7zip-full
# Lors de mon essai sur Debian SID, le mot de passe ne m'est pas redemandé lors de la décompression de l'archive.
# Les exemples suivants demandent bien un mot de passe à la création mais ne demandent pas le mot de passe lors de la décompression de l'archive !
# Utilisation de 7z pour protéger une archive :
# 7z a /tmp/secure.7z /tmp/test.txt -p
# Il n'est jamais conseillé d'indiquer directement un mot de passe dans un script :
# 7z a /tmp/secure.7z /tmp/test.txt fichier1 fichier2 [email protected]
# Cet exemple est fonctionnel et permet de compresser une archive en lui ajoutant un mot de passe :
7z a -pMOTDEPASSE -mx=9 -mhe -t7z test.7z test.txt
7z : Command
a : Add
-p : Set Password
-mx=9 : Ultra compression
-mhe : Encrypt file names
La protection d'une archive par mot de passe est utile lorsque l'on souhaite faire transiter l'archive par des réseaux qui ne sont pas de confiance ou sur une clé USB pouvant être perdue.
Le stockage des sauvegardes peut également faire l'objet d'une protection pour se protéger d'un vol ou d'une modification.
Un attaquant ayant volé une archive chiffrée disposera de tout le temps nécessaire pour effectuer une attaque de type brute force par dictionnaire et finira par trouver le mot de passe.
AES : Advanced Encryption Standard.
Le chiffrage AES 256 est utilisé pour sécuriser les échanges VPN.
Le chiffrage AES 256 est une référence dans le domaine de la sécurité.
Les applications qui demandent des niveaux de sécurité important l’utilisent.
D'après Wikipedia, AES est le seul algorithme répertorié par l’Institut national des normes et de la technologie (NIST) pour la protection des données classifiées.
# Exemple de chiffrement AES 256 :
7z a \
 -t7z -m0=lzma2 -mx=9 -mfb=64 \
 -md=32m -ms=on -mhe=on -p'eat_my_shorts' \
  archive.7z test.txt
Ne pas utiliser le format 7-zip pour sauvegarder des données de production depuis Linux / Unix car 7-zip ne stocke pas le propriétaire ni le groupe du fichier.
Source : https://askubuntu.com/questions/928275/7z-command-line-with-highest-encryption-aes-256-encrypting-the-filenames
# Déchiffrer une archive chiffrée avec 7z
7z x /tmp/securez.7z

Off-the-Record (OTR) Messaging

OTR permet d'avoir des conversations privées sur de multiples protocoles (XMPP/Jabber, IRC, MSN...)
Ok-ko.png Source : https://doc.ubuntu-fr.org/off-the-record_messaging

Zulucrypt

Outil pour créer un dépôt de stockage chiffré de taille variable.

Veracrypt

VeraCrypt est un logiciel de chiffrement de fichiers et de partitions qui reprend la suite de TrueCrypt.
Ce fork, principalement développé par le Français Mounir Idrassi, a débuté quelques mois avant la fermeture brutale de son prédécesseur. 
Ok-ko.png Source : https://doc.ubuntu-fr.org/veracrypt

Cryptsetup

Ok-ko.png Source : https://doc.ubuntu-fr.org/cryptsetup

Ecryptfs

Ecryptfs est un outil pour créer un dossier privé (~/Private), chiffré et inaccessible aux autres utilisateurs.
Il est destiné à contenir tous les fichiers "sensibles" que vous pourriez avoir : vos fichiers contenant des mots de passe, les données confidentielles relatives à vos comptes bancaires, vos mails.
Ok-ko.png Source : https://doc.ubuntu-fr.org/ecryptfs

Système de chiffrement EncFS

Apprendre à installer et utiliser le système de chiffrement EncFS.
Les informations qu'elle contient n'ont pas été vérifiées pour les dernières versions LTS depuis Ubuntu 14.04 LTS.
Ok-ko.png Source : https://doc.ubuntu-fr.org/encfs

Firewall Iptables

Configurer le pare-feu Iptables.

Pare-feu et partage de connexion Internet

Ok-ko.png Source : http://formation-debian.via.ecp.fr/firewall.html

Shoreline Firewall

Le pare-feu "Shoreline Firewall", plus communément appelé "Shorewall", est un outil pour configurer plus facilement Netfilter.
Ok-ko.png Source : https://doc.ubuntu-fr.org/shorewall

Configurer Netfilter avec UFW

UFW est un nouvel outil de configuration simplifié en ligne de commande de Netfilter qui apporte une alternative à l'outil iptables.
UFW devrait à terme permettre une configuration automatique du pare-feu lors de l'installation de programmes qui en ont besoins.
Il existe une interface graphique pour UFW, GUFW.
Ok-ko.png Documentation : https://doc.ubuntu-fr.org/ufw

GUFW

Activer UFW : "sudo ufw enable"
Vérifier l'état de UFW : "sudo ufw status verbose"
Lister toutes les règles de UFW : "sudo ufw show raw"
Tous les ports sont fermés par défaut à l'installation, sauf ceux strictement nécessaires (Firefox, Thunderbird, ...).
Quand on installe GUFW, ça permet de gérer UFW (pré-installé par défaut) en interface graphique.
Pratique quand on fait du P2P, ou du retroshare par exemple.
Si on fait un UFW enable on risque de tout bloquer si on est néophyte.
Le système par défaut fonctionne bien comme il est.
Dans le doute, tester les ports ici : https://www.zebulon.fr/outils/scanports/test-securite.php
Le système le plus sécurisé est celui dont sa connexion à Internet est isolée.
Il suffit de la mettre en virtuel et pour cela il y a par exemple VirtualBox.
Ok-ko.png Site officiel : http://gufw.org

Grub

Perte du mot de passe, mot de passe oublié.

Changer de mot de passe utilisateur ou root depuis Grub

Récupérer le mot de passe utilisateur ou root depuis Grub : https://memo-linux.com/grub2-contourner-lauthentification-linux-mot-de-passe-utilisateur-ou-root-oublie/

Protéger le changement de mot de passe utilisateur ou root depuis Grub

Protéger le changement de mot de passe utilisateur ou root depuis Grub: https://www.justegeek.fr/proteger-ledition-du-grub-avec-mot-de-passe/

Désactiver le Bureau à distance

Désactiver le Bureau à distance :
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 malveillant pourrait alors prendre le contrôle de votre ordinateur (avec les droits d'utilisateur normaux) et accéder à vos fichiers. Il est conseillé de le désactiver lorsqu'il ne vous est pas utile. Pour le désactiver, entrez la commande suivante dans un terminal : gsettings set org.gnome.Vino enabled false.

Désactiver le Bluetooth

Éditer le fichier /etc/rc.local avec les droits d'administrateur pour désactiver en permanence le Bluetooth au démarrage d'Ubuntu.
# Ajouter la ligne suivante pour désactiver le bluetooth au démarrage avant la ligne "exit 0".
rfkill block bluetooth
Enregistrer le fichier.
Lors du prochain démarrage, le module Bluetooth ne sera plus chargé.
Ok-ko.png Source : https://doc.ubuntu-fr.org/bluetooth

Gestion des logs

Gestion des logs.

Analyser et afficher un visuel des statistiques de fréquentation de votre site

Awstats

Site officiel : https://awstats.sourceforge.io

Port-knocking

Le port-knocking est une méthode permettant de modifier le comportement d'un firewall en temps réel pour provoquer l'ouverture d'un port suite au lancement préalable d'une suite de connexions sur des ports distincts dans le bon ordre.
Ok-ko.png https://doc.ubuntu-fr.org/port-knocking
Ok-ko.png http://www.zeroflux.org/projects/knock

Crontab

Pour automatiser les tâches de sécurité et de maintenance.
La crontab.
a1- Une instruction(script) nocturne qui monte un point de montage réseau
a2- Une autre (qlq min plus tard) qui arrête le serveur sql, mais ça peut aller jusqu'à présenter une jolie page d'accueil de maintenance avec un sablier.
a3- Une autre (qlq min plus tard) qui fait le dump en écrivant sur le point de montage.
a4- Une autre (qlq min plus tard) qui redémarre le serveur sql.
a5- Éventuellement remet l'application web en service et démonte le point de montage.

Fail2ban

Installer et utiliser Fail2ban.

Antivirus

Beaucoup de personnes disent que les systèmes d’exploitation Linux ne sont pas sensible au virus mais c'est faux !
Les virus peuvent être présent et inactifs car conçus pour attaquer un système Windows.
D'autres peuvent fonctionner sous GNU/Linux et réellement infecter votre machine.

ClamAV

Installer ClamAV
# apt install clamav
Mettre a jour la base de donnée des antivirus :
# freshclam
Lancer l’antivirus avec la commande
# clamscan -r --remove /
Créer une tâche CRON pour automatiser la tâche par exemple tout les jours a 2 heures du matin !
# crontab -e
02 1 * * * root clamscan -ri --remove /
Et voila l’antivirus a été installé , mis a jour et planifié !
En complément : blog.avis-planethoster.com/trucs-astuces/installer-clamav-sur-cpanel-centos-3118

LMD avec ClamAV

How to Install and Use Linux Malware Detect (LMD) with ClamAV as Antivirus Engine : https://www.tecmint.com/install-linux-malware-detect-lmd-in-rhel-centos-and-fedora/
Ce tutoriel est écrit pour Fedora. Préférer une ressource disponible pour Debian.

ClamTK

sudo apt-get install clamtk
Source : https://packages.debian.org/jessie/utils/clamtk
Tutoriel : https://debian-facile.org/doc:systeme:clamav
Complément : https://doc.ubuntu-fr.org/antivirus

Antivirus en ligne

Antivirus en ligne de Bitdefender - FR : http://www.bitdefender.fr/scanner/online/analyse-gratuite.html
Antivirus en ligne de Bitdefender - Ang : http://www.bitdefender.com/scanner/online/free.html
AVG : http://www.avgthreatlabs.com/fr-fr/website-safety-reports/?utm_expid=34410884-76.84_9nwpwSSOAetX0FHOdRQ.1&var=1
Eset scanner antivirus en ligne : http://www.eset.com/fr/home/products/online-scanner/
Safety Scanner Antivirus de Microsoft : http://www.microsoft.com/security/scanner/fr-fr/default.aspx
Scanner Antivirus Kaspersky : http://www.kaspersky.com/virus-scanner
ScanURL : https://scanurl.net
Secuser Antivirus en ligne pour Windows : http://www.secuser.com/antivirus/index.htm
Urlvoid : http://www.urlvoid.com/
Antivirus Virus total permet de scanner un fichier spécifique en ligne : https://www.virustotal.com/fr/
Télécharger les antivirus et autres outils de Secuser pour protéger votre ordinateur : http://www.secuser.com/telechargement/index.htm
Live CD et Live USB antivirus : http://www.commentcamarche.net/faq/34318-les-live-cd-et-live-usb-antivirus

rkhunter

Contre les rootkit.
sudo apt-get install rkhunter

Commandes de rkhunter

# Mettre le programme à jour.
rkhunter --update 
# Lancer une analyse.
rkhunter -c --rwo --sk
# Les options de l'analyse.
# -c                           : vérifier le système entier
# --rwo (report-warnings-only) : n'afficher que les erreurs ou alertes
# --sk (skip-keypress)         : ne pas attendre d'intervention de la part de l'utilisateur
# -l rkhunter.log              : insérer un résumé dans un fichier log

Paramétrage de rkhunter

Ouvrir le fichier /etc/rkhunter.conf
# Spécifier une ou plusieurs adresses mails :
[email protected] [email protected]
# Envoyer les informations à Syslog-NG :
USE_SYSLOG=authpriv.warning
# (...)
ALLOW_SYSLOG_REMOTE_LOGGING=1

Comprendre et sécuriser les erreurs une à une

/usr/bin/lwp-request                                     [ Warning ]
Source : https://unix.stackexchange.com/questions/373718/rkhunter-gives-me-a-warning-for-usr-bin-lwp-request-what-should-i-do-debi

Audit de sécurité

Scanner de renforcement Bastille

Bastille Linux est un outil de renforcement de la sécurité pour GNU/Linux. Il aide à améliorer la sécurité soit en désactivant des services, s'ils ne sont pas indispensables, ou en modifiant leur configuration.
Quand il est utilisé dans le mode interactif (ce qui est recommandé), Bastille aide l'administrateur durant le processus de sécurisation ; à chaque étape du processus, une description détaillée des notions de sécurité impliquées est donnée. Chaque étape est optionnelle. Lorsqu'il est utilisé dans le mode automatique, plus rapide, Bastille sécurise le système selon le profil choisi.
Bastille Linux fonctionne avec plusieurs distributions Linux, mais ce paquet a été spécialement modifié pour Debian GNU/Linux.

Installer Bastille

Installer le paquet bastille avec la commande apt install bastille.

Désinstaller Bastille

Pour supprimer cette application, il suffit de supprimer son paquet. Selon la méthode choisie, la configuration globale de l'application est conservée ou supprimée.
Les journaux du système, et, les fichiers de préférence des utilisateurs dans leurs dossiers personnels, sont toujours conservés.
Ok-ko.png Source : https://doc.ubuntu-fr.org/bastille
Ok-ko.png Site officiel : http://bastille-linux.sourceforge.net

Scanner de vulnérabilité Lynis

Site officiel : https://cisofy.com/lynis/
Le Github de Lynis : https://github.com/CISOfy/lynis
Détail du paquet Debian de Lynis : https://packages.debian.org/stretch/lynis
How to scan Linux for vulnerabilities with lynis : http://xmodulo.com/how-to-scan-linux-for-vulnerabilities.html
Installer Lynis :
sudo apt install lynis
Exemple sur une machine virtuelle avec une installation minimaliste de GNU/Linux Mint 18.3
[+] System Tools
------------------------------------
 - Scanning available tools...
 - Checking system binaries...
[+] Plugins (phase 1)
------------------------------------
Note: plugins have more extensive tests, which may take a few minutes to complete
 
 - Plugin: debian
   [
[+] Debian Tests
------------------------------------
 - Checking for system binaries that are required by Debian Tests...[-8C
   - Checking /bin...                                        [ FOUND ]
   - Checking /sbin...                                       [ FOUND ]
   - Checking /usr/bin...                                    [ FOUND ]
   - Checking /usr/sbin...                                   [ FOUND ]
   - Checking /usr/local/bin...                              [ FOUND ]
   - Checking /usr/local/sbin...                             [ FOUND ]
 - Authentication:
   - PAM (Pluggable Authentication Modules):
     - libpam-tmpdir                                         [ Not Installed ]
     - libpam-usb                                            [ Not Installed ]
 - File System Checks:
   - DM-Crypt, Cryptsetup & Cryptmount:
     - Checking / on /dev/sda1                               [ NOT ENCRYPTED ]
     - Checking /media/sf_Téléchargements on /home/zencool/Téléchargements�[-18C [ NOT ENCRYPTED ]
   - Ecryptfs                                                [ INSTALLED ]
     - Home for zencool                                      [ NO ]
     - Home for vboxadd                                      [ NO ]
 - Software:
   - apt-listbugs                                            [ Not Installed ]
   - apt-listchanges                                         [ Not Installed ]
   - checkrestart                                            [ Not Installed ]
   - debsecan                                                [ Not Installed ]
   - debsums                                                 [ Not Installed ]
   - fail2ban                                                [ Not Installed ]
[ Press [ENTER] to continue, or [CTRL]+C to stop ]
[+] Boot and services
------------------------------------
 - Service Manager                                           [ UNKNOWN ]
   - Checking presence GRUB2                                 [ FOUND ]
   - Checking for password protection                        [ WARNING ]
 - Check running services (systemctl)                        [ DONE ]
       Result: found 27 running services
 - Check enabled services at boot (systemctl)                [ DONE ]
       Result: found 50 enabled services
 - Check startup files (permissions)                         [ OK ]
[ Press [ENTER] to continue, or [CTRL]+C to stop ]
[+] Kernel
------------------------------------
 - Checking default run level                                [ RUNLEVEL 5 ]
 - Checking CPU support (NX/PAE)
   CPU support: PAE and/or NoeXecute supported               [ FOUND ]
 - Checking kernel version and release                       [ DONE ]
 - Checking kernel type                                      [ DONE ]
 - Checking loaded kernel modules                            [ DONE ]
     Found 58 active modules
 - Checking Linux kernel configuration file                  [ FOUND ]
 - Checking default I/O kernel scheduler                     [ FOUND ]
 - Checking for available kernel update                      [ OK ]
 - Checking core dumps configuration                         [ DISABLED ]
   - Checking setuid core dumps configuration                [ DEFAULT ]
 - Check if reboot is needed                                 [ NO ]
[ Press [ENTER] to continue, or [CTRL]+C to stop ]
[+] Memory and processes
------------------------------------
 - Checking /proc/meminfo                                    [ FOUND ]
 - Searching for dead/zombie processes                       [ OK ]
 - Searching for IO waiting processes                        [ OK ]
[ Press [ENTER] to continue, or [CTRL]+C to stop ]
[+] Users, Groups and Authentication
------------------------------------
 - Search administrator accounts                             [ OK ]
 - Checking for non-unique UIDs                              [ OK ]
 - Checking consistency of group files (grpck)               [ OK ]
 - Checking non unique group ID's                            [ OK ]
 - Checking non unique group names                           [ OK ]
 - Checking password file consistency                        [ OK ]
 - Query system users (non daemons)                          [ DONE ]
 - Checking NIS+ authentication support                      [ NOT ENABLED ]
 - Checking NIS authentication support                       [ NOT ENABLED ]
 - Checking sudoers file                                     [ FOUND ]
   - Check sudoers file permissions                          [ OK ]
 - Checking PAM password strength tools                      [ SUGGESTION ]
 - Checking PAM configuration files (pam.conf)               [ FOUND ]
 - Checking PAM configuration files (pam.d)                  [ FOUND ]
 - Checking PAM modules                                      [ FOUND ]
 - Checking LDAP module in PAM                               [ NOT FOUND ]
 - Checking accounts without expire date                     [ OK ]
 - Checking accounts without password                        [ OK ]
 - Checking user password aging                              [ DISABLED ]
 - Determining default umask
   - Checking umask (/etc/profile)                           [ OK ]
   - Checking umask (/etc/login.defs)                        [ SUGGESTION ]
   - Checking umask (/etc/init.d/rc)                         [ SUGGESTION ]
 - Checking LDAP authentication support                      [ NOT ENABLED ]
[ Press [ENTER] to continue, or [CTRL]+C to stop ]
[+] Shells
------------------------------------
 - Checking shells from /etc/shells
   Result: found 5 shells (valid shells: 5).
   - Session timeout settings/tools                          [ NONE ]
[ Press [ENTER] to continue, or [CTRL]+C to stop ]
[+] File systems
------------------------------------
 - Checking mount points
   - Checking /home mount point                              [ OK ]
   - Checking /tmp mount point                               [ SUGGESTION ]
   - Checking /var mount point                               [ SUGGESTION ]
 - Checking LVM volume groups                                [ NONE ]
 - Querying FFS/UFS mount points (fstab)                     [ NONE ]
 - Query swap partitions (fstab)                             [ OK ]
 - Testing swap partitions                                   [ OK ]
 - Checking for old files in /tmp                            [ OK ]
 - Checking /tmp sticky bit                                  [ OK ]
 - ACL support root file system                              [ ENABLED ]
 - Checking Locate database                                  [ FOUND ]
[ Press [ENTER] to continue, or [CTRL]+C to stop ]
[+] Storage
------------------------------------
 - Checking usb-storage driver (modprobe config)             [ NOT DISABLED ]
 - Checking firewire ohci driver (modprobe config)           [ DISABLED ]
[ Press [ENTER] to continue, or [CTRL]+C to stop ]
[+] NFS
------------------------------------
 - Check running NFS daemon                                  [ NOT FOUND ]
[ Press [ENTER] to continue, or [CTRL]+C to stop ]
[+] Name services
------------------------------------
 - Checking default DNS search domain                        [ NONE ]
 - Checking search domains                                   [ FOUND ]
 - Checking /etc/resolv.conf options                         [ NONE ]
 - Searching DNS domain name                                 [ FOUND ]
     Domain name: MintTesting
 - Checking nscd status                                      [ NOT FOUND ]
 - Checking BIND status                                      [ NOT FOUND ]
 - Checking PowerDNS status                                  [ NOT FOUND ]
 - Checking ypbind status                                    [ NOT FOUND ]
 - Checking /etc/hosts
   - Checking /etc/hosts (duplicates)                        [ OK ]
   - Checking /etc/hosts (hostname)                          [ OK ]
   - Checking /etc/hosts (localhost)                         [ OK ]
[ Press [ENTER] to continue, or [CTRL]+C to stop ]
[+] Ports and packages
------------------------------------
 - Searching package managers
   - Searching dpkg package manager                          [ FOUND ]
     - Querying package manager
   - Query unpurged packages                                 [ FOUND ]
 - Checking security repository in sources.list.d directory  [ OK ]
W: https://minergate.com/repo/deb/dists/stable/InRelease: Signature by key 33BDA78F1D398B52D01438F603F0D99C2EC4C39D uses weak digest algorithm (SHA1)
 - Checking vulnerable packages (apt-get only)               [ DONE ]
 - Checking package audit tool                               [ NONE ]
[ Press [ENTER] to continue, or [CTRL]+C to stop ]
[+] Networking
------------------------------------
 - Checking configured nameservers
   - Testing nameservers
       Nameserver: 127.0.0.1                                 [ OK ]
 - Checking default gateway                                  [ DONE ]
 - Getting listening ports (TCP/UDP)                         [ DONE ]
     * Found 25 ports
 - Checking promiscuous interfaces                           [ OK ]
 - Checking waiting connections                              [ OK ]
 - Checking status DHCP client                               [ RUNNING ]
[ Press [ENTER] to continue, or [CTRL]+C to stop ]
[+] Printers and Spools
------------------------------------
 - Checking cups daemon                                      [ RUNNING ]
 - Checking CUPS configuration file                          [ OK ]
   - File permissions                                        [ WARNING ]
 - Checking CUPS addresses/sockets                           [ FOUND ]
 - Checking lp daemon                                        [ NOT RUNNING ]
[ Press [ENTER] to continue, or [CTRL]+C to stop ]
[+] Software: e-mail and messaging
------------------------------------
 - Checking Exim status                                      [ NOT FOUND ]
 - Checking Postfix status                                   [ NOT FOUND ]
 - Checking Qmail status                                     [ NOT FOUND ]
 - Checking Sendmail status                                  [ NOT FOUND ]
[ Press [ENTER] to continue, or [CTRL]+C to stop ]
[+] Software: firewalls
------------------------------------
 - Checking iptables kernel module                           [ NOT FOUND ]
   - Checking pflogd status                                  [ NOT FOUND ]
 - Checking pf                                               [ NOT FOUND ]
 - Checking host based firewall                              [ NOT ACTIVE ]
[ Press [ENTER] to continue, or [CTRL]+C to stop ]
[+] Software: webserver
------------------------------------
 - Checking Apache                                           [ NOT FOUND ]
 - Checking nginx                                            [ NOT FOUND ]
[ Press [ENTER] to continue, or [CTRL]+C to stop ]

[+] SSH Support
------------------------------------
 - Checking running SSH daemon                               [ FOUND ]
   - Searching SSH configuration                             [ FOUND ]
   - Checking defined SSH options                            [ DONE ]
   - SSH option: PermitRootLogin                             [ DEFAULT ]
   - SSH option: Protocol                                    [ OK ]
   - SSH option: StrictModes                                 [ OK ]
   - SSH option: AllowUsers                                  [ NOT FOUND ]
   - SSH option: AllowGroups                                 [ NOT FOUND ]
[ Press [ENTER] to continue, or [CTRL]+C to stop ]
[+] SNMP Support
------------------------------------
 - Checking running SNMP daemon                              [ NOT FOUND ]
[ Press [ENTER] to continue, or [CTRL]+C to stop ]
[+] Databases
------------------------------------
 - MySQL process status                                      [ NOT FOUND ]
 - PostgreSQL processes status                               [ NOT FOUND ]
 - Oracle processes status                                   [ NOT FOUND ]
[ Press [ENTER] to continue, or [CTRL]+C to stop ]
[+] LDAP Services
------------------------------------
 - Checking OpenLDAP instance                                [ NOT FOUND ]
[ Press [ENTER] to continue, or [CTRL]+C to stop ]
[+] PHP
------------------------------------
 - Checking PHP                                              [ NOT FOUND ]
[ Press [ENTER] to continue, or [CTRL]+C to stop ]
[+] Squid Support
------------------------------------
 - Checking running Squid daemon                             [ NOT FOUND ]
[ Press [ENTER] to continue, or [CTRL]+C to stop ]
[+] Logging and files
------------------------------------
 - Checking for a running log daemon                         [ OK ]
   - Checking Syslog-NG status                               [ NOT FOUND ]
   - Checking systemd journal status                         [ FOUND ]
   - Checking Metalog status                                 [ NOT FOUND ]
   - Checking RSyslog status                                 [ FOUND ]
   - Checking RFC 3195 daemon status                         [ NOT FOUND ]
   - Checking minilogd instances                             [ NOT FOUND ]
 - Checking logrotate presence                               [ OK ]
 - Checking log directories (static list)                    [ DONE ]
 - Checking open log files                                   [ DONE ]
 - Checking deleted files in use                             [ FILES FOUND ]
[ Press [ENTER] to continue, or [CTRL]+C to stop ]
[+] Insecure services
------------------------------------
 - Checking inetd status                                     [ NOT ACTIVE ]
[ Press [ENTER] to continue, or [CTRL]+C to stop ]
[+] Banners and identification
------------------------------------
 - /etc/motd                                                 [ NOT FOUND ]
 - /etc/issue                                                [ FOUND ]
   - /etc/issue contents                                     [ WEAK ]
 - /etc/issue.net                                            [ FOUND ]
   - /etc/issue.net contents                                 [ WEAK ]
[ Press [ENTER] to continue, or [CTRL]+C to stop ]
[+] Scheduled tasks
------------------------------------
 - Checking crontab/cronjob                                  [ DONE ]
 - Checking atd status                                       [ NOT RUNNING ]
[ Press [ENTER] to continue, or [CTRL]+C to stop ]
[+] Accounting
------------------------------------
 - Checking accounting information                           [ NOT FOUND ]
 - Checking sysstat accounting data                          [ NOT FOUND ]
 - Checking auditd                                           [ NOT FOUND ]
[ Press [ENTER] to continue, or [CTRL]+C to stop ]
[+] Time and Synchronization
------------------------------------
 - NTP daemon found: ntpd                                    [ FOUND ]
 - Checking event based ntpdate (if-up)                      [ FOUND ]
 - Checking for a running NTP daemon or client               [ OK ]
 - Checking valid association ID's                           [ FOUND ]
 - Checking high stratum ntp peers                           [ WARNING ]
 - Checking unreliable ntp peers                             [ FOUND ]
 - Checking selected time source                             [ OK ]
 - Checking time source candidates                           [ OK ]
 - Checking falsetickers                                     [ OK ]
 - Checking NTP version                                      [ FOUND ]
[ Press [ENTER] to continue, or [CTRL]+C to stop ]
[+] Cryptography
------------------------------------
 - Checking SSL certificate expiration                       [ OK ]
[ Press [ENTER] to continue, or [CTRL]+C to stop ]
[+] Virtualization
------------------------------------
[ Press [ENTER] to continue, or [CTRL]+C to stop ]
[+] Containers
------------------------------------
[ Press [ENTER] to continue, or [CTRL]+C to stop ]
[+] Security frameworks
------------------------------------
 - Checking presence AppArmor                                [ NOT FOUND ]
 - Checking presence SELinux                                 [ NOT FOUND ]
 - Checking presence grsecurity                              [ NOT FOUND ]
 - Checking for implemented MAC framework                    [ NONE ]
[ Press [ENTER] to continue, or [CTRL]+C to stop ]
[+] Software: file integrity
------------------------------------
 - Checking file integrity tools
 - Checking presence integrity tool                          [ NOT FOUND ]
[ Press [ENTER] to continue, or [CTRL]+C to stop ]
[+] Software: System tooling
------------------------------------
 - Checking automation tooling
 - Automation tooling                                        [ NOT FOUND ]
[ Press [ENTER] to continue, or [CTRL]+C to stop ]
[+] Software: Malware scanners
------------------------------------
 - Checking Rootkit Hunter                                   [ FOUND ]
[ Press [ENTER] to continue, or [CTRL]+C to stop ]
[+] File Permissions
------------------------------------
 - Starting file permissions check
   /etc/lilo.conf                                            [ NOT FOUND ]
   /root/.ssh                                                [ OK ]
[ Press [ENTER] to continue, or [CTRL]+C to stop ]
[+] Home directories
------------------------------------
 - Checking shell history files                              [ OK ]
[ Press [ENTER] to continue, or [CTRL]+C to stop ]
[+] Kernel Hardening
------------------------------------
 - Comparing sysctl key pairs with scan profile
   - kernel.core_uses_pid (exp: 1)                           [ DIFFERENT ]
   - kernel.ctrl-alt-del (exp: 0)                            [ OK ]
   - kernel.kptr_restrict (exp: 1)                           [ OK ]
   - kernel.sysrq (exp: 0)                                   [ DIFFERENT ]
   - net.ipv4.conf.all.accept_redirects (exp: 0)             [ DIFFERENT ]
   - net.ipv4.conf.all.accept_source_route (exp: 0)          [ OK ]
   - net.ipv4.conf.all.bootp_relay (exp: 0)                  [ OK ]
   - net.ipv4.conf.all.forwarding (exp: 0)                   [ OK ]
   - net.ipv4.conf.all.log_martians (exp: 1)                 [ DIFFERENT ]
   - net.ipv4.conf.all.mc_forwarding (exp: 0)                [ OK ]
   - net.ipv4.conf.all.proxy_arp (exp: 0)                    [ OK ]
   - net.ipv4.conf.all.rp_filter (exp: 1)                    [ OK ]
   - net.ipv4.conf.all.send_redirects (exp: 0)               [ DIFFERENT ]
   - net.ipv4.conf.default.accept_redirects (exp: 0)         [ DIFFERENT ]
   - net.ipv4.conf.default.accept_source_route (exp: 0)      [ DIFFERENT ]
   - net.ipv4.conf.default.log_martians (exp: 1)             [ DIFFERENT ]
   - net.ipv4.icmp_echo_ignore_broadcasts (exp: 1)           [ OK ]
   - net.ipv4.icmp_ignore_bogus_error_responses (exp: 1)     [ OK ]
   - net.ipv4.tcp_syncookies (exp: 1)                        [ OK ]
   - net.ipv4.tcp_timestamps (exp: 0)                        [ DIFFERENT ]
   - net.ipv6.conf.all.accept_redirects (exp: 0)             [ DIFFERENT ]
   - net.ipv6.conf.all.accept_source_route (exp: 0)          [ OK ]
   - net.ipv6.conf.default.accept_redirects (exp: 0)         [ DIFFERENT ]
   - net.ipv6.conf.default.accept_source_route (exp: 0)      [ OK ]
[ Press [ENTER] to continue, or [CTRL]+C to stop ]
[+] Hardening
------------------------------------
   - Installed compiler(s)                                   [ FOUND ]
   - Installed malware scanner                               [ FOUND ]

Scanner de vulnérabilité OpenVAS

Le résultat du scan fournira :
La liste des vulnérabilités par niveaux de criticité.
Une description des vulnérabilités.
La méthode ou un lien pour corriger le problème.
Source : https://doc.ubuntu-fr.org/openvas

Scanner de vulnérabilité Nikto

Nikto est un scanner de vulnérabilité pour les serveurs web, et est programmé en langage P.E.R.L.
Ses fonctionnalités sont d'auditer vos serveurs web à la recherche de failles diverses, de tester potentiellement près de 6000 vulnérabilités CGI et fichiers dangereux, de vérifier l'obsolescence du serveur et ses composants logiciels, de rechercher les dossiers pouvant contenir des informations sensibles. 
Source : https://doc.ubuntu-fr.org/nikto

Détecteur d'intrusion Snort

Snort est un IDS qui vous permettra de détecter d'éventuelles intrusions, de gérer vos logs et sniffer votre réseau.
# Installation
aptitude install mysql-server snort-mysql 
# Choisir le réseau qui vous convient, ici je choisis par exemple de ne surveiller que la plage d'adresses allant de 192.168.0.0 à 192.168.0.255.
# Il va falloir créer une base de données :
[email protected] # mysql -u root -p -h localhost
mysql > CREATE DATABASE `snort` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
mysql > CREATE USER `snortu`@`localhost`;
mysql > SET PASSWORD FOR `snortu`@`localhost`=PASSWORD('snortp');
mysql > GRANT CREATE, DELETE, INSERT, SELECT, UPDATE on `snort`.* to `snortu`@`localhost`;
mysql > quit 
Ainsi qu'y créer les tables :
# [email protected] # cd /usr/share/doc/snort-mysql/
# [email protected] # zcat create_mysql.gz | mysql -u root -p -h localhost snort 
Copier le fichier de configuration de snort tel que :
# [email protected] # cp /etc/snort/snort.conf /etc/snort/snort.interface.conf 
# Note : remplacer interface par votre interface réseau, chez moi eth0. 
Configuration
# Ouvrir le fichier /etc/snort/snort.eth0.conf.
# Modifier le réseau surveillé
var HOME_NET 192.168.0.0/24
# Commenter la ligne suivante :
output log_tcpdump: tcpdump.log
# Appliquer les règles sur les SellCodes
include $RULE_PATH/virus.rules
include $RULE_PATH/shellcode.rules
# Optionnel : commenter certaines règles qui, ici, ne sont d'aucune utilité :
#include $RULE_PATH/web-cgi.rules
#include $RULE_PATH/web-coldfusion.rules
#include $RULE_PATH/web-iis.rules
#include $RULE_PATH/web-frontpage.rules
#include $RULE_PATH/community-web-iis.rules
#include $RULE_PATH/x11.rules
#include $RULE_PATH/oracle.rules
#include $RULE_PATH/community-oracle.rules
#include $RULE_PATH/pop2.rules
#include $RULE_PATH/nntp.rules
#include $RULE_PATH/community-nntp.rules
#include $RULE_PATH/community-sip.rules
# Ouvrir le fichier /etc/snort/database.conf et modifer la dernière ligne :
output database: alert, mysql, dbname=snort user=snortu password=snortp host=localhost
Lancement
# Un fichier a peut-être été automatiquement créé afin de bloquer le démarrage du démon, on va le supprimer.
rm /etc/snort/db-pending-config 
# Lancer snort.
[email protected] # service snort start 
# Note : lorsque l'on utilise une autre interface qu'eth0 (par exemple wlan1), il faut lancer snort manuellement.
[email protected] # snort -u utilisateur -c /etc/snort/snort.wlan1.conf -i wlan1 -D 
Ok-ko.png https://wiki.monitoring-fr.org/securite/snort/snort-ubuntu-install
Ok-ko.png https://www.unixmen.com/install-snort-nids-ubuntu-15-04/
Ko.png La documentation Ubuntu est obsolète : https://doc.ubuntu-fr.org/snort
Il est possible d'obtenir de plus amples informations concernant ce logiciel sur Wikipédia.

Acid

ACID est un analyseur de log pour Snort.
Il permet de visualiser facilement les log de Snort par l'intermédiaire d'une interface web.
# Installation
apt install acidbase
# Configuration
Copier le fichier de configuration d'acidbase pour pouvoir se rendre sur l'interface web :
[email protected] # cp /etc/acidbase/apache.conf /etc/apache2/sites-available/acidbase 
Éditer ce fichier pour donner accès à une machine distante de confiance, ajouter ceci en dessous de allow from 127.0.0.0/255.0.0.0 :
allow from 192.168.0.3
Commenter les 3 premières lignes :
#<IfModule mod_alias.c>
#  Alias /acidbase "/usr/share/acidbase"
#</IfModule>
Ouvrir le fichier /etc/acidbase/base_conf.php et modifier tel que :
$BASE_Language = 'french';
$colored_alerts = 1;
Ouvrir le fichier /etc/acidbase/database.php et modifier tel que :
$alert_user='snortu';
$alert_password='snortp';
$basepath=;
$alert_dbname='snort';
$alert_host=;
$alert_port=;
$DBtype='mysql';
Lancement, activer acidbase :
[email protected] # a2ensite acidbase 
Relancer apache :
[email protected] # service apache2 reload 
Maintenant, vous pouvez vous rendre à l'adresse www.test.sec/acidbase/ pour terminter l'installation d'ACID(BASE) et décortiquer les alertes.

Portsentry

Bloquer les adresses qui scannent les ports de la machine avec portsentry.
Pour qu'une adresse soit bloquée, il faut qu'il y est eu un scann.
Cette méthode n'empêche pas le scann. 
Source : https://www.it-connect.fr/bloquer-les-individus-qui-scannent-votre-machine-avec-portsentry/
Source : https://fr.ikoula.wiki/fr/Se_prot%C3%A9ger_contre_le_scan_de_ports_avec_portsentry
Source : https://zb2oby.fr/installer-portsentry
Source : https://wiki.debian-fr.xyz/Portsentry

Scanner le réseau

Installer Nmap et scanner le réseau.
Installer Wireshark et scanner le réseau.
Installer le scanner de vulnérabilité Nessus.

Scanner Angryip

Site officiel : http://angryip.org
Télécharger : http://angryip.org/download/

AutoScan-Network

Autoscan-network.png
Le développement du logiciel semble arrêté depuis 2010 date de la version 1.5.
Vérifier si AutoScan-Network fonctionne toujours.
AutoScan-Network est un scanner de réseau sous licence GNU General Public License (GPL) v2.
L’objectif principal d’AutoScan-Network est de scanner votre réseau et d’afficher la liste des équipements connectés.
# Télécharger.
wget https://superb-dca2.dl.sourceforge.net/project/autoscan/AutoScan/autoscan-network%201.50/AutoScan-Network-Linux-1.50.bin.tar.gz
# Décompresser.
tar xzvf AutoScan-Network-Linux-1.50.bin.tar.gz
# Démarrer.
sudo ./AutoScan-Network-Linux-1.50.sh
Installer AutoScan-Network en 64bits : http://edgargr.com/network/how-to-install-autoscan-network-in-64-bits/

Activer - Désactiver la réponse du ping sur le réseau

# Désactiver
$sudo sysctl -w net.ipv4.icmp_echo_ignore_all=1
Maintenant, tenter de faire un ping sur la machine. Elle ne devrait plus répondre.
# Activer
$sudo sysctl -w net.ipv4.icmp_echo_ignore_all=0
-w permet de passer des options supplémentaires. A vérifier, peut être lié au Kernel.

Prelude

Prelude, ou Prelude-IDS, est un système de détection d'intrusion (IDS) hybride composé de types de détecteurs hétérogènes :
un NIDS : NetWork Intrusion Detection System ;
un HIDS : Host based Intrusion Detection System
un LML : Log Monitoring Lackey.
Site officiel : http://www.prelude-ids.com/index.php/fr/
Source : https://doc.ubuntu-fr.org/prelude

Interdire l'accès à la console

Ne donner l'accès à une console qu'aux seuls utilisateurs qui en ont besoin, root et utilisateurs de travail, en modifiant le fichier /etc/passwd.
Par défaut, la console est définie tel quel à la fin de chaque ligne :
/bin/sh ou /bin/*sh (En fonction du shell utilisé.)
Pour interdire l'accès, modifier en : /bin/false

Contrôler les règles selinux

https://www.debian.org/doc/manuals/debian-handbook/sect.selinux.fr.html
https://linux.goffinet.org/13-gestion-securisee/
https://blog.microlinux.fr/selinux/

Pile TCP/IP

Vérifier chacune des règles suivante car elles ne sont peut être pas à jour.
Même si la pile TCP/IP du système d'exploitation GNU/Linux est reconnue comme étant une des plus stables, appliquer ce principe de précaution est bien loin d'être un mal, au contraire !
Ouvrir le fichier /etc/sysctl.conf, puis modifer tel que :
# Se protéger de l'IP Spoofing' (vol d'adresse IP) :
net.ipv4.conf.all.rp_filter = 1
# Se protéger des attaques 'SYN Flood' :
net.ipv4.tcp_syncookies = 1
# Ignorer les messages 'ICMP Redirects' :
net.ipv4.conf.all.accept_redirects = 0
net.ipv6.conf.all.accept_redirects = 0
# Interdire 'Source Routing' :
net.ipv4.conf.all.accept_source_route = 0
net.ipv6.conf.all.accept_source_route = 0
Ajouter :
# Surveiller 'martians' (adresse source falsifiée ou non routable) :
net.ipv4.conf.all.log_martians = 1
# Ignorer les messages 'ICMP Echo Request' :
net.ipv4.icmp_echo_ignore_broadcasts = 1
net.ipv4.icmp_echo_ignore_all = 1
# Ignorer les messages 'ICMP Bogus Responses' :
net.ipv4.icmp_ignore_bogus_error_responses = 1
# 1024 connexions non confirmées max, limite le SYN flood
net.ipv4.tcp_max_syn_backlog = 1024
Redémarrer le service : sysctl -p /etc/sysctl.conf

Limiter le temps de connexion à internet

Timekpr

Ok-ko.png Source : https://doc.ubuntu-fr.org/timekpr

Workrave

Workrave est un programme pour lutter contre les troubles musculosquelettiques (TMS).
Il signale régulièrement de faire des micro-pauses, de prendre des temps de pause et empêche de dépasser une limite quotidienne. 

Il inclut une appliquette de barre système fonctionnant avec GNOME et KDE, et peut être utilisé à travers le réseau pour surveiller l'activité d'un utilisateur si celui-ci est amené à travailler sur plusieurs ordinateurs. 

Workrave propose plus d'options de configuration que d'autres outils similaires.
Site : http://www.workrave.org/

Système de contrôle parental

Une rapide recherche sur le critère « système de contrôle parental sous Debian » sur un moteur de recherche donne d’intéressantes pistes.
Il en ressort le projet « CTparental » qui pourrait bien répondre à vos interrogations :
https://wiki.debian-fr.xyz/Contrôle_parental
https://doc.ubuntu-fr.org/tutoriel/comment_mettre_en_place_un_controle_parental

Bibliographie

Ok.png Documentation Ubuntu sur la sécurité : https://doc.ubuntu-fr.org/securite
Ko.png Documentation Ubuntu sur la sécurité - Pages complémentaires : https://doc.ubuntu-fr.org/securite#liste_des_pages_sur_la_securite

Liens complémentaires sur la sécurité

Ok-ko.png http://www.coursinforev.org/doku.php/securite_linux
Ok-ko.png https://fr.wikipedia.org/wiki/S%C3%A9curit%C3%A9_des_donn%C3%A9es
Ok-ko.png Lire depuis Wikipédia : Le risque informatique : https://fr.wikipedia.org/wiki/Risque_(informatique)
Ok-ko.png Sécurité des systèmes d'information : https://fr.wikipedia.org/wiki/S%C3%A9curit%C3%A9_des_syst%C3%A8mes_d'information
tldp . org/LDP/solrhe/Securing-Optimizing-Linux-RH-Edition-v1.3/chap5sec41.html
Ko.png https://unix.stackexchange.com/questions/41840/effect-of-entries-in-etc-securetty
Ko.png http://man7.org/linux/man-pages/man5/securetty.5.html
Ko.png How to secure an Ubuntu 16.04 LTS server - Part 1 The Basics : https://www.thefanclub.co.za/how-to/how-secure-ubuntu-1604-lts-server-part-1-basics

Les agences gouvernementales de sécurité informatique

Ok.png ANSSI : http://www.ssi.gouv.fr
Ok.png Les conseils de la CNIL pour un bon mot de passe : https://www.cnil.fr/fr/les-conseils-de-la-cnil-pour-un-bon-mot-de-passe
Liste des alertes de sécurité du CERT : Site gouvernemental français officiel : https://www.cert.ssi.gouv.fr
Fichiers .pdf des bonnes pratiques par ssi.gouv.fr : http://www.ssi.gouv.fr/administration/bonnes-pratiques/

Sites spécialisés

Exploit BD - Exploits sur les bases de données : https://www.exploit-db.com
Spécialiste des malwares, virus, désinfections, type d'attaques : http://www.malekal.com
Portail Security Focus - En anglais : http://www.securityfocus.com

Les forums sur la sécurité

Ok.png Zenk Security : https://www.zenk-security.com
Forum de sécurité AntiOnline : http://www.antionline.com

Magazines et presse en ligne sur la sécurité

ActuSecu par XMCO : https://www.xmco.fr/actusecu/

La sécurité en vidéo

Youtube permet de trouver de très nombreuses vidéos de sécurité et de hacking.
https://www.youtube.com/results?search_query=s%C3%A9curit%C3%A9+informatique

Ressources utilisées sur cette page pour la Sécurité de GNU/Linux

Ok.png Générer des mots de passe avec GNU/Linux : https://itsfoss.com/password-generators-linux/
Ok.png Des logs colorés avec ccze : https://blogmotion.fr/systeme/couleurs-logs-ccze-linux-17453
Ok.png Des logs colorés avec ccze : http://linux-attitude.fr/post/lire-les-logs-en-couleur

NAVIGATION

PARTICIPER ET PARTAGER

Vous êtes sur le wiki de Vision du Web.
Les pages présentées sur le wiki évoluent tous les jours.
Certaines recherches sont peu abouties et incluent des erreurs.
Pour participer sur le wiki, créer un compte utilisateur en haut à droite.
La recherche interne du wiki permet de trouver le contenu qui vous intéresse.
Identifiez-vous pour poser vos questions sur la page de discussion de VisionDuWeb.
Améliorer le contenu des pages en faisant des propositions depuis l'onglet discussion.
Pour écrire en Markdown : Éditeur - Générateur de tableau 1 - Générateur de tableau 2.
Les informations du wiki ne doivent pas servir à nuire à autrui ou à un système informatique.
De nombreux outils gratuits sont listés et disponibles dans la boîte à outils de Vision du web.
D'autres pages du wiki peuvent correspondre à vos attentes. La liste de toutes les pages du wiki.

VALORISER LE WIKI

Valoriser le contenu partagé sur le wiki avec un don en monnaie numérique :
AEON - Bitcoins (BTC) - Bitcoins Cash - Bitcoins Gold - Bitcore (BTX) - Blackcoins - Bytecoins - Clams - Dash - Monero - Dogecoins - Ethereum - Ethereum Classique - Litecoins - Potcoins - Solarcoins - Zcash

OBTENIR DE LA MONNAIE NUMERIQUE

Obtenir gratuitement de la monnaie numérique :
Gagner des Altcoins - Miner des Altcoins.
Miroir PlanetHoster du 1er Novembre 2018.