Faites un audit de votre système avec Lynis

Article publié le 19 Février 2018

Je suis tombé par hasard sur un petit outil fort sympathique nommé Lynis. Lynis vous permet de faire un audit complet de votre système Linux/Unix. J’ai été très impressionné par sa précision,  Lynis va auditer jusqu’au moindre recoin de votre machine et vous faire un gros résumé de toutes les préconisations pour améliorer la sécurité et les performances de celle-ci. De plus Lynis détecte automatiquement les services installés et en fait l’audit  (Apache2, Squid, etc).

 

1) Installation

Sous Debian/Ubuntu:

– Installez la clé:

sudo apt-key adv –keyserver keyserver.ubuntu.com –recv-keys C80E383C3DE9F082E01391A0366C67DE91CA5D5F

– Ajoutez le repo:

echo « deb https://packages.cisofy.com/community/lynis/deb/ <votre distrib> main » | sudo tee /etc/apt/sources.list.d/cisofy-lynis.list

– Installez le paquet:

apt-get update && apt-get install lynis

 

Sous Centos/RedHat:

– Ajoutez le repo créez un fichier /etc/yum.repos.d/cisofy-lynis.repo:

[lynis]
name=CISOfy Software – Lynis package
baseurl=https://packages.cisofy.com/community/lynis/rpm/
enabled=1
gpgkey=https://packages.cisofy.com/keys/cisofy-software-rpms-public.key
gpgcheck=1

– Installez le package:

yum install lynis

 

2) Utilisation

Pour lancez un audit, il suffit de taper la commande suivante (avec le user roor ou en sudo):

lynis audit system

Pour l’exemple voici le résultat de l’audit d’une petite VM Vagrant:

 

ubuntu@ubuntu-xenial:~$ sudo lynis audit system

[ Lynis 2.6.2 ]

################################################################################
Lynis comes with ABSOLUTELY NO WARRANTY. This is free software, and you are
welcome to redistribute it under the terms of the GNU General Public License.
See the LICENSE file for details about using this software.

2007-2018, CISOfy – https://cisofy.com/lynis/
Enterprise support available (compliance, plugins, interface and tools)
################################################################################

[+] Initializing program
————————————
– Detecting OS… [ DONE ]
– Checking profiles… [ DONE ]

—————————————————
Program version: 2.6.2
Operating system: Linux
Operating system name: Ubuntu Linux
Operating system version: 16.04
Kernel version: 4.4.0
Hardware platform: x86_64
Hostname: ubuntu-xenial
—————————————————
Profiles: /etc/lynis/default.prf
Log file: /var/log/lynis.log
Report file: /var/log/lynis-report.dat
Report version: 1.0
Plugin directory: /usr/share/lynis/plugins
—————————————————
Auditor: [Not Specified]
Language: en
Test category: all
Test group: all
—————————————————
– Program update status… [ NO UPDATE ]

[+] System Tools
————————————
– Scanning available tools…
– Checking system binaries…

[+] Plugins (phase 1)
————————————
Note: plugins have more extensive tests and may take several minutes to complete

– Plugins enabled [ NONE ]

[+] Boot and services
————————————
– Service Manager [ systemd ]
– Checking UEFI boot [ DISABLED ]
– Checking presence GRUB [ OK ]
– Checking presence GRUB2 [ FOUND ]
– Checking for password protection [ WARNING ]
– Check running services (systemctl) [ DONE ]
Result: found 22 running services
– Check enabled services at boot (systemctl) [ DONE ]
Result: found 32 enabled services
– Check startup files (permissions) [ OK ]

[+] 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 56 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 [ PROTECTED ]
– Check if reboot is needed [ YES ]

[+] Memory and Processes
————————————
– Checking /proc/meminfo [ FOUND ]
– Searching for dead/zombie processes [ OK ]
– Searching for IO waiting processes [ OK ]

[+] Users, Groups and Authentication
————————————
– Administrator accounts [ OK ]
– Unique UIDs [ OK ]
– Consistency of group files (grpck) [ OK ]
– Unique group IDs [ OK ]
– Unique group names [ OK ]
– Password file consistency [ OK ]
– Query system users (non daemons) [ DONE ]
– NIS+ authentication support [ NOT ENABLED ]
– NIS authentication support [ NOT ENABLED ]
– sudoers file [ FOUND ]
– Check sudoers file permissions [ OK ]
– PAM password strength tools [ SUGGESTION ]
– PAM configuration files (pam.conf) [ FOUND ]
– PAM configuration files (pam.d) [ FOUND ]
– PAM modules [ FOUND ]
– LDAP module in PAM [ NOT FOUND ]
– Accounts without expire date [ OK ]
– Accounts without password [ OK ]
– Checking user password aging (minimum) [ DISABLED ]
– User password aging (maximum) [ DISABLED ]
– Checking expired passwords [ OK ]
– Checking Linux single user mode authentication [ OK ]
– Determining default umask
– umask (/etc/profile) [ NOT FOUND ]
– umask (/etc/login.defs) [ SUGGESTION ]
– umask (/etc/init.d/rc) [ SUGGESTION ]
– LDAP authentication support [ NOT ENABLED ]
– Logging failed login attempts [ ENABLED ]

[+] Shells
————————————
– Checking shells from /etc/shells
Result: found 6 shells (valid shells: 6).
– Session timeout settings/tools [ NONE ]
– Checking default umask values
– Checking default umask in /etc/bash.bashrc [ NONE ]
– Checking default umask in /etc/profile [ NONE ]

[+] File systems
————————————
– Checking mount points
– Checking /home mount point [ SUGGESTION ]
– Checking /tmp mount point [ SUGGESTION ]
– Checking /var mount point [ SUGGESTION ]
– Query swap partitions (fstab) [ NONE ]
– Testing swap partitions [ OK ]
– Testing /proc mount (hidepid) [ SUGGESTION ]
– Checking for old files in /tmp [ OK ]
– Checking /tmp sticky bit [ OK ]
– Checking /var/tmp sticky bit [ OK ]
– ACL support root file system [ ENABLED ]
– Mount options of / [ OK ]
– Checking Locate database [ FOUND ]
– Disable kernel support of some filesystems
– Discovered kernel modules: udf

[+] USB Devices
————————————
– Checking usb-storage driver (modprobe config) [ NOT DISABLED ]
– Checking USB devices authorization [ DISABLED ]
– Checking USBGuard [ NOT FOUND ]

[+] Storage
————————————
– Checking firewire ohci driver (modprobe config) [ DISABLED ]

[+] NFS
————————————
– Check running NFS daemon [ NOT FOUND ]

[+] Name services
————————————
– Checking search domains [ FOUND ]
– Searching DNS domain name [ UNKNOWN ]
– Checking /etc/hosts
– Checking /etc/hosts (duplicates) [ OK ]
– Checking /etc/hosts (hostname) [ OK ]
– Checking /etc/hosts (localhost) [ OK ]
– Checking /etc/hosts (localhost to IP) [ OK ]

[+] Ports and packages
————————————
– Searching package managers
– Searching dpkg package manager [ FOUND ]
– Querying package manager
– Query unpurged packages [ NONE ]
– Checking security repository in sources.list file [ OK ]
– Checking APT package database [ OK ]
– Checking vulnerable packages [ WARNING ]
– Checking upgradeable packages [ SKIPPED ]
– Checking package audit tool [ INSTALLED ]
Found: apt-check

[+] Networking
————————————
– Checking IPv6 configuration [ ENABLED ]
Configuration method [ AUTO ]
IPv6 only [ NO ]
– Checking configured nameservers
– Testing nameservers
Nameserver: 10.0.2.3 [ OK ]
– Minimal of 2 responsive nameservers [ WARNING ]
– Checking default gateway [ DONE ]
– Getting listening ports (TCP/UDP) [ DONE ]
* Found 3 ports
– Checking promiscuous interfaces [ OK ]
– Checking waiting connections [ OK ]
– Checking status DHCP client [ RUNNING ]
– Checking for ARP monitoring software [ NOT FOUND ]

[+] Printers and Spools
————————————
– Checking cups daemon [ NOT FOUND ]
– Checking lp daemon [ NOT RUNNING ]

[+] Software: e-mail and messaging
————————————

[+] Software: firewalls
————————————
– Checking iptables kernel module [ NOT FOUND ]
– Checking host based firewall [ NOT ACTIVE ]

[+] Software: webserver
————————————
– Checking Apache [ NOT FOUND ]
– Checking nginx [ NOT FOUND ]

[+] SSH Support
————————————
– Checking running SSH daemon [ FOUND ]
– Searching SSH configuration [ FOUND ]
– SSH option: AllowTcpForwarding [ SUGGESTION ]
– SSH option: ClientAliveCountMax [ SUGGESTION ]
– SSH option: ClientAliveInterval [ OK ]
– SSH option: Compression [ SUGGESTION ]
– SSH option: FingerprintHash [ OK ]
– SSH option: GatewayPorts [ OK ]
– SSH option: IgnoreRhosts [ OK ]
– SSH option: LoginGraceTime [ OK ]
– SSH option: LogLevel [ SUGGESTION ]
– SSH option: MaxAuthTries [ SUGGESTION ]
– SSH option: MaxSessions [ SUGGESTION ]
– SSH option: PermitRootLogin [ SUGGESTION ]
– SSH option: PermitUserEnvironment [ OK ]
– SSH option: PermitTunnel [ OK ]
– SSH option: Port [ SUGGESTION ]
– SSH option: PrintLastLog [ OK ]
– SSH option: Protocol [ OK ]
– SSH option: StrictModes [ OK ]
– SSH option: TCPKeepAlive [ SUGGESTION ]
– SSH option: UseDNS [ OK ]
– SSH option: UsePrivilegeSeparation [ SUGGESTION ]
– SSH option: VerifyReverseMapping [ NOT FOUND ]
– SSH option: X11Forwarding [ SUGGESTION ]
– SSH option: AllowAgentForwarding [ SUGGESTION ]
– SSH option: AllowUsers [ NOT FOUND ]
– SSH option: AllowGroups [ NOT FOUND ]

[+] SNMP Support
————————————
– Checking running SNMP daemon [ NOT FOUND ]

[+] Databases
————————————
No database engines found

[+] LDAP Services
————————————
– Checking OpenLDAP instance [ NOT FOUND ]

[+] PHP
————————————
– Checking PHP [ NOT FOUND ]

[+] Squid Support
————————————
– Checking running Squid daemon [ NOT FOUND ]

[+] 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 ]

[+] Insecure services
————————————
– Checking inetd status [ NOT ACTIVE ]

[+] Banners and identification
————————————
– /etc/issue [ FOUND ]
– /etc/issue contents [ WEAK ]
– /etc/issue.net [ FOUND ]
– /etc/issue.net contents [ WEAK ]

[+] Scheduled tasks
————————————
– Checking crontab/cronjob [ DONE ]
– Checking atd status [ RUNNING ]
– Checking at users [ DONE ]
– Checking at jobs [ NONE ]

[+] Accounting
————————————
– Checking accounting information [ NOT FOUND ]
– Checking sysstat accounting data [ NOT FOUND ]
– Checking auditd [ NOT FOUND ]

[+] Time and Synchronization
————————————

[+] Cryptography
————————————
– Checking for expired SSL certificates [0/1] [ NONE ]

[+] Virtualization
————————————

[+] Containers
————————————

[+] Security frameworks
————————————
– Checking presence AppArmor [ FOUND ]
– Checking AppArmor status [ ENABLED ]
– Checking presence SELinux [ NOT FOUND ]
– Checking presence grsecurity [ NOT FOUND ]
– Checking for implemented MAC framework [ OK ]

[+] Software: file integrity
————————————
– Checking file integrity tools
– Checking presence integrity tool [ NOT FOUND ]

[+] Software: System tooling
————————————
– Checking automation tooling
– Automation tooling [ NOT FOUND ]
– Checking for IDS/IPS tooling [ NONE ]

[+] Software: Malware
————————————

[+] File Permissions
————————————
– Starting file permissions check
/root/.ssh [ OK ]

[+] Home directories
————————————
– Checking shell history files [ OK ]

[+] Kernel Hardening
————————————
– Comparing sysctl key pairs with scan profile
– fs.protected_hardlinks (exp: 1) [ OK ]
– fs.protected_symlinks (exp: 1) [ OK ]
– fs.suid_dumpable (exp: 0) [ DIFFERENT ]
– kernel.core_uses_pid (exp: 1) [ DIFFERENT ]
– kernel.ctrl-alt-del (exp: 0) [ OK ]
– kernel.dmesg_restrict (exp: 1) [ DIFFERENT ]
– kernel.kptr_restrict (exp: 2) [ DIFFERENT ]
– kernel.randomize_va_space (exp: 2) [ OK ]
– kernel.sysrq (exp: 0) [ DIFFERENT ]
– kernel.yama.ptrace_scope (exp: 1 2 3) [ OK ]
– 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 1) [ OK ]
– 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 ]

[+] Hardening
————————————
– Installed compiler(s) [ NOT FOUND ]
– Installed malware scanner [ NOT FOUND ]

[+] Custom Tests
————————————
– Running custom tests… [ NONE ]

[+] Plugins (phase 2)
————————————

================================================================================

-[ Lynis 2.6.2 Results ]-

Warnings (3):
—————————-
! Reboot of system is most likely needed [KRNL-5830]
– Solution : reboot
https://cisofy.com/controls/KRNL-5830/

! Found one or more vulnerable packages. [PKGS-7392]
https://cisofy.com/controls/PKGS-7392/

! Couldn’t find 2 responsive nameservers [NETW-2705]
https://cisofy.com/controls/NETW-2705/

Suggestions (39):
—————————-
* Set a password on GRUB bootloader to prevent altering boot configuration (e.g. boot in single user mode without password) [BOOT-5122]
https://cisofy.com/controls/BOOT-5122/

* Install a PAM module for password strength testing like pam_cracklib or pam_passwdqc [AUTH-9262]
https://cisofy.com/controls/AUTH-9262/

* Configure minimum password age in /etc/login.defs [AUTH-9286]
https://cisofy.com/controls/AUTH-9286/

* Configure maximum password age in /etc/login.defs [AUTH-9286]
https://cisofy.com/controls/AUTH-9286/

* Default umask in /etc/login.defs could be more strict like 027 [AUTH-9328]
https://cisofy.com/controls/AUTH-9328/

* Default umask in /etc/init.d/rc could be more strict like 027 [AUTH-9328]
https://cisofy.com/controls/AUTH-9328/

* To decrease the impact of a full /home file system, place /home on a separated partition [FILE-6310]
https://cisofy.com/controls/FILE-6310/

* To decrease the impact of a full /tmp file system, place /tmp on a separated partition [FILE-6310]
https://cisofy.com/controls/FILE-6310/

* To decrease the impact of a full /var file system, place /var on a separated partition [FILE-6310]
https://cisofy.com/controls/FILE-6310/

* Disable drivers like USB storage when not used, to prevent unauthorized storage or data theft [STRG-1840]
https://cisofy.com/controls/STRG-1840/

* Check DNS configuration for the dns domain name [NAME-4028]
https://cisofy.com/controls/NAME-4028/

* Install debsums utility for the verification of packages with known good database. [PKGS-7370]
https://cisofy.com/controls/PKGS-7370/

* Update your system with apt-get update, apt-get upgrade, apt-get dist-upgrade and/or unattended-upgrades [PKGS-7392]
https://cisofy.com/controls/PKGS-7392/

* Install package apt-show-versions for patch management purposes [PKGS-7394]
https://cisofy.com/controls/PKGS-7394/

* Check your resolv.conf file and fill in a backup nameserver if possible [NETW-2705]
https://cisofy.com/controls/NETW-2705/

* Consider running ARP monitoring software (arpwatch,arpon) [NETW-3032]
https://cisofy.com/controls/NETW-3032/

* Configure a firewall/packet filter to filter incoming and outgoing traffic [FIRE-4590]
https://cisofy.com/controls/FIRE-4590/

* Consider hardening SSH configuration [SSH-7408]
– Details : AllowTcpForwarding (YES –> NO)
https://cisofy.com/controls/SSH-7408/

* Consider hardening SSH configuration [SSH-7408]
– Details : ClientAliveCountMax (3 –> 2)
https://cisofy.com/controls/SSH-7408/

* Consider hardening SSH configuration [SSH-7408]
– Details : Compression (YES –> (DELAYED|NO))
https://cisofy.com/controls/SSH-7408/

* Consider hardening SSH configuration [SSH-7408]
– Details : LogLevel (INFO –> VERBOSE)
https://cisofy.com/controls/SSH-7408/

* Consider hardening SSH configuration [SSH-7408]
– Details : MaxAuthTries (6 –> 2)
https://cisofy.com/controls/SSH-7408/

* Consider hardening SSH configuration [SSH-7408]
– Details : MaxSessions (10 –> 2)
https://cisofy.com/controls/SSH-7408/

* Consider hardening SSH configuration [SSH-7408]
– Details : PermitRootLogin (WITHOUT-PASSWORD –> NO)
https://cisofy.com/controls/SSH-7408/

* Consider hardening SSH configuration [SSH-7408]
– Details : Port (22 –> )
https://cisofy.com/controls/SSH-7408/

* Consider hardening SSH configuration [SSH-7408]
– Details : TCPKeepAlive (YES –> NO)
https://cisofy.com/controls/SSH-7408/

* Consider hardening SSH configuration [SSH-7408]
– Details : UsePrivilegeSeparation (YES –> SANDBOX)
https://cisofy.com/controls/SSH-7408/

* Consider hardening SSH configuration [SSH-7408]
– Details : X11Forwarding (YES –> NO)
https://cisofy.com/controls/SSH-7408/

* Consider hardening SSH configuration [SSH-7408]
– Details : AllowAgentForwarding (YES –> NO)
https://cisofy.com/controls/SSH-7408/

* Check what deleted files are still in use and why. [LOGG-2190]
https://cisofy.com/controls/LOGG-2190/

* Add a legal banner to /etc/issue, to warn unauthorized users [BANN-7126]
https://cisofy.com/controls/BANN-7126/

* Add legal banner to /etc/issue.net, to warn unauthorized users [BANN-7130]
https://cisofy.com/controls/BANN-7130/

* Enable process accounting [ACCT-9622]
https://cisofy.com/controls/ACCT-9622/

* Enable sysstat to collect accounting (no results) [ACCT-9626]
https://cisofy.com/controls/ACCT-9626/

* Enable auditd to collect audit information [ACCT-9628]
https://cisofy.com/controls/ACCT-9628/

* Install a file integrity tool to monitor changes to critical and sensitive files [FINT-4350]
https://cisofy.com/controls/FINT-4350/

* Determine if automation tools are present for system management [TOOL-5002]
https://cisofy.com/controls/TOOL-5002/

* One or more sysctl values differ from the scan profile and could be tweaked [KRNL-6000]
– Solution : Change sysctl value or disable test (skip-test=KRNL-6000:<sysctl-key>)
https://cisofy.com/controls/KRNL-6000/

* Harden the system by installing at least one malware scanner, to perform periodic file system scans [HRDN-7230]
– Solution : Install a tool like rkhunter, chkrootkit, OSSEC
https://cisofy.com/controls/HRDN-7230/

Follow-up:
—————————-
– Show details of a test (lynis show details TEST-ID)
– Check the logfile for all details (less /var/log/lynis.log)
– Read security controls texts (https://cisofy.com)
– Use –upload to upload data to central system (Lynis Enterprise users)

================================================================================

Lynis security scan details:

Hardening index : 56 [########### ]
Tests performed : 206
Plugins enabled : 0

Components:
– Firewall [X]
– Malware scanner [X]

Lynis Modules:
– Compliance Status [?]
– Security Audit [V]
– Vulnerability Scan [V]

Files:
– Test and debug information : /var/log/lynis.log
– Report data : /var/log/lynis-report.dat

================================================================================

Lynis 2.6.2

Auditing, system hardening, and compliance for UNIX-based systems
(Linux, macOS, BSD, and others)

2007-2018, CISOfy – https://cisofy.com/lynis/
Enterprise support available (compliance, plugins, interface and tools)

================================================================================

[TIP]: Enhance Lynis audits by adding your settings to custom.prf (see /etc/lynis/default.prf for all settings)

 

Pour plus d’information n’hésitez pas à visiter la page officielle du projet:

https://packages.cisofy.com/




Tutoriel | Gérez votre système de fichier grâce à LVM (Logical Volume Management)

Article publiée le 29 Novembre 2015

 

Après une très longue période d’absence  je reprend enfin ma plume afin d’écrire un nouvel article sur les LVM.

Malgré de nombreux tutos disponible sur Internet, il reste à mon plus grand regret, beaucoup d’admin sys qui n’utilise toujours pas ce système malgré tous les avantages que cela représente

1) Schéma explicatif

 

Petites explications:

Physical Volume ou PV: Représente en quelque sorte vos disques Physiques

Volume Groupe ou VG: Représente vos disques logiques qui peut être composé de un ou plusieurs disques physiques

Logical Volume ou LV: Représente un emplacement où seront stockées les FS.

 

L’avantage du système LVM est que vous pouvez redimensionner à souhait vos VG ou vos LV se qui vous donne une énorme flexibilité dans la gestion de votre stockage.

Bien entendu vous ne pouvez pas redimensionner vos PV (Physical Volume) étant donnée qu’ils représentent vos disque physique 🙂

Nous allons voir ci-dessous comment manipuler les LVM de manière simple et précise:

2) Création d’un PV

Pour ce tuto je viens de créer une VM contenant 2 disques durs. Un disque contenant mes partitions systèmes avec le système LVM et un disque vierge que nous allons configurer:

Petit fdisk -l afin de lister:

 

 

Ma machine contient un disque /dev/sdb qui est vierge.

Nous allons créer un PV pour cela rien de plus simple:

pvcreate <votre disque>

pvcreate /dev/sdb

On vérifie avec pvdisplay:

Ci-dessus on voit bien notre nouveau PV /dev/sdb de créé!

 

3) Création d’un VG

Nous allons maintenant créer notre VG:

vgcreate <nom de votre VG> <votre PV>

vgreate VG00 /dev/sdb

On vérifie avec vgdisplay:

On peut bien voir que notre VG (VG00) a bien été créé.

4) Création des LV

Nous allons créer un LV de 5 g0 dans notre VG fraichement créé!

lvcreate -n <nom du LV> -L <taille> <nom du VG>

lvcreate -n LVTest -L 5go VG00

5) Création de notre partition

Il ne reste plus qu’à créer notre partition:

mkfs -t <système de fichiers> <chemin>

mkfs -t ext4 /dev/mapper/VG00-LVTest

On monte la partition pour cela on crée le point de montage:

mkdir <repertoire point de montage>

Puis on monte le volume:

mount /dev/mapper/VG00-LVTest /Test

Ca y’est notre partition a été créée!

6) Redimensionnement

6.1 Augmenter votre VG et un LV

Admettons que vous ajoutez un nouveau disque et que vous voulez augmenter la taille de votre VG:

  • On crée notre nouveau PV

pvcreate <nouveau disque>

 

  • Ensuite on aggrandi notre VG:

vgextend <nom de votre VG> <nom de votre nouveau disque>

exemple : vgextend VG00 /dev/sdc

 

  • Avant d’aggrandir notre LV on fait une vérification de l’état de notre LV:

e2fsck -f <chemin de votre lv>

exemple e2fsck -f /dev/mapper/VG00-LVTest

  • Ensuite on redimensionne le LV

lvresize -L <nouvelletaille> <chemin de votre LV>

lvresize -L 2go /dev/mapper/VG00-LVTest

  • Ensuite on redimensionne notre partition:

resize2fs <chemin du LV>

resize2fs /dev/mapper/VG00-LVTest

 

7) Diminution d’un LV

 Faites très attention, la diminution d’un LV est la manipulation la plus délicate à faire! Si vous diminuez votre LV avant la partition contenu à l’intérieur vous pouvez la détruire!

  • On démonte notre partition:

umount <votre partition>

  • On vérifie l’état de votre partition

e2fsck <chemin>

  • On réduit la taille de la partition (AVANT DE REDUIRE LA TAILLE DU LV 😉 ):

resize2fs <chemin de votre partition> <la taille voulue>

  • Ensuite on réduit le LV

lvreduce -L <la taille voulue> <le chemin>

Reste plus qu’à remonter notre volume (avec mount) et à checker:

8) Déplacer un VG vers un autre système (dans le cas ou votre VG est sur une baie de stockage):

Je vous invite à aller sur cet article que j’ai rédigé il y a quelques temps:

http://journaldunadminlinux.fr/tuto-deplacer-un-groupe-de-volume-vg-vers-un-autre-systeme/

 

 

 




Présentation de glances l’outil de supervision ultime!

Article publiée le 10 Avril 2014

Glances est un outil de monitoring extrêmement connu et utilisé dans le monde HP UX (j’ai rédigé un article dessus il y a quelque temps).

Mais il existe également un projet Glance sous Linux développé par NicoLargo. Pour moi c’est l’outil de monitoring en ligne de commande le plus puissant qui existe pour les systèmes Linux.

Ci dessous un petit screenshot:

 

 

Installation sous Debian/Ubuntu:

– Installez glances via apt depuis les dépôts officiels de votre distribution

apt-get install glances

Installation sous RedHat/Centos/:

– Installez glances depuis les dépôts EPEL. Pour ceux qui le désire une procédure d’installation des dépôts EPEL est disponible sur mon blog ici

– Ensuite il ne vous reste plus qu’à installez glances:

yum install glances

 

 

 

 

 

 




Tuto | Tutoriel d’installation EPEL Repo

Article publiée le 10 Avril 2014

Mise à jour le 6 Decembre 2015

EPEL ou encore (Extra Package for Entreprise Linux) est un repo qui founit des package additionnels pour les distibution type RedHat, Centos etc…(maintenu par la communauté FEDORA)

Souvent j’ai reproché au dépôt officiel de ces distribution d’être moins garnis que les dépôts des distributions type Debian/Ubuntu Server.

En installant EPEL vous aurez un nombre de packages disponibles via votre gestionnaire de paquets yum beaucoup plus importants!

Pour installer le dépot EPEL vous devez procéder de la manière suivante:

Pour Redhat 7 /Centos 7:

RHEL/Cento 7 : wget https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm && rpm -ivh epel-release-7*.rpm

Pour Redhat 6 /Centos 6:

RHEL/CentOS 6 32-Bit: wget http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm && rpm -ivh epel-release-6-8.noarch.rpm  RHEL/CentOS 6 64-Bit: wget http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm && rpm -ivh epel-release-6-8.noarch.rpm

Pour Redhat 5 /Centos 5:

RHEL/CentOS 5 32-Bit: wget http://download.fedoraproject.org/pub/epel/5/i386/epel-release-5-4.noarch.rpm && rpm -ivh epel-release-5-4.noarch.rpm RHEL/CentOS 5 64-Bit: wget http://download.fedoraproject.org/pub/epel/5/x86_64/epel-release-5-4.noarch.rpm && rpm -ivh epel-release-5-4.noarch.rpm

 

Il ne reste plus qu’à checker que le repo soit correct :

Vous avez maintenant la possibilité d’installer beaucoup plus de paquet via yum qu’avant!

 

Enjoy 😉




apticron : notification des mises à jours debian

Article publié le 1 Juin 2013

Pour moi un bon admin doit toujours être averti des dernière mises à jour de son OS.

Un petit outil très sympathique nommé apticron permet d’être averti par mail dés que de nouvelles mises à jour sont disponibles! Egalement très pratique dans le cas ou vous administrez beaucoup de serveur pour savoir l’état des mises à jours de chacun d’entre eux.

Le contenu des mails est très détaillé car il vous donne toutes les mises à jours non installé sur votre machine avec le détail de ses corrections, sa date de publication ainsi que le nom du développeur.

Cette outil est codé en Shell par un membre de la communauté Debian et je dois dire que je suis assez admiratif du travail!

 Vous devez avoir un sender mail type postfix ou sendmail configuré pour que apticron soit capable d’envoyer des mails.

Pour installer cette outil :

#apt-get install apticron

Le fichier de configuration apticron se situe dans /etc/apticron/apticron.conf

Editons le:

#vi /etc/apticron/apticron.conf

Vous pourrez constater que le fichier de configuration est bien garni mais seulement trois lignes nous intéresserons:

Une fois votre configuration effectuée enregistrez votre fichier.

Lancez apticron:

# apticron

Si votre configuration est correct vous devriez recevoir un mail dans votre boite de messagerie avec la liste de toutes les nouvelles mises à jours disponible.

 Par défaut apticron est configuré pour vous envoyer des mails tous les jours en cas de nouvelles mises à jours. Si vous installez cette outil sur tous vos serveurs, la situation peu vite devenir ingérable (SPAM ;-)).

Pour cela je vous suggère une notification hebdomaraire:

# rm /etc/cron.d   (on supprime le cron journalier)

# cd /etc/cron.weekly && ln -s /usr/sbin/apticron apticron (on crée un lien symbolique du cron hebdomadaire vers le binaire d’apticron)

 

 




Outil de monitoring HP UX glance

Article publié le 30 Mai 2013

Tout admin à sa bête noir, une situation qu’il redoute.

Ma bête noire à moi s’appelle HP UX. Franchement j’ai toujours eu énormément de mal avec cette OS qui est pourtant extrêmement puissant (quand il est bien administré).

Ayant déjà eu l’opportunité de travaillé sur cette OS, j’ai pu malgré tout relever des outils très puissant made in HP.

Glance a particulièrement retenu mon attention.

Exemple: capture d’écran avec glance -m permettant de monitorer votre consommation mémoire.

glance -d : monitoring de disque

glance -c: monitoring CPU

glance -a : Average cpu load par unité de calcul

glance -v : monitoring de vos Volume group  (I/O)

glance -u : monitoring de vos disques

glance -l : monitoring de vos interfaces réseaux

glance -g : monitoring de vos process

glance -A : Monitoring par application

 

Franchement cette outil est extrêmement puissant et vous permettra d’avoir une vue rapide de votre système en 2 temps 3 mouvements.

Si vous êtes vraiment séduit par cette outil vous pourrez trouver une version pour Linux.

Malheureusement glance est un produit propriétaire ce qui implique que si vous voulez  l’obtenir pour un autre système que HPUX il vous faudra passer par la case achat…

 




Webmin: une plateforme web pour gérer votre machine Linux

Article publié le 24 Mai 2013

Honte à moi me direz vous?? Vous présentez une boite à clique sous Linux qui édite vos fichier de conf à votre place?? Oui en effet je plaide coupable!!

Maintenant je dois vous avouer que même si je n’utilise pas personnellement ce genre d’outil, cela peut malgré tout être très utile dans certain cas:

– vous êtes tout simplement allergique à Linux.

– Vous livrez un serveur linux à un de vos clients avec une interface avec laquelle il pourra l’administrer lui même (sans tout casser).

– Vous êtes dans une situation ou vous avez besoin d’une interface pratique pour faire beaucoup d’administration rapidement.

En résumé Webmin est une interface Web qui permet d’administrer tout les types de services possible et imaginable sous Linux: aussi bien un serveur web qu’un proxy ou encore un serveur de mail. Cela me ferait presque penser à l’OS doit on ne doit pas prononcer le nom….

Ci dessous une capture d’écran de Webmin:

 

Admettons que vous installez un serveur SQUID (proxy) dans l’onglet « servers » vous allez voir apparaitre une nouvelle entrée « squid » avec la possibilité de l’administrer de A à Z.

Pour installer cette interface rien de plus simple:

Rendez vous sur le site et téléchargez le paquet adapté à votre distrib: http://www.webmin.com/download.html

Une fois le paquet installé ouvrez votre navigateur et tapez l’URL suivante: http://<ip_de votre_serveur>:10000

A la page de l’authentification tapez vos identifiants root.

Enjoy 🙂

 

 

 




Gestion précise de la synchronisation NTP avec ntpq -q

Article publié le 23 Mai 2013

Petit article sur un sujet simple mais qui peut mettre votre prod par terre.

La synchronisation NTP. OMG!!! nombre de fois que j’ai eu des saloperies pas possible à cause d’une simple desyncrho de quelque secondes…

Voici un moyen très très simple de vérifier si votre machine est bien synchro avec votre serveur NTP.

La commande ntpq -p.

Voici ce qu’elle renvoie:

La colonne qui nous intéresse et la colonne « reach ». Tant que la valeur de celle ci est à 377 c’est que votre machine est parfaitement synchronisée avec votre serveur NTP a la milliseconde pret!

Sinon c’est la m….

Je trouve cette petite astuce bien sympathique et plus efficace que de faire des comparaisons vaseuses avec une autre machine.

Enjoy!

 




Liste des dépots (repositories) Debian

Mise à jour  le 29 Novembre 2015

 

Si dessous la liste des dépots officiels de la distribution debian à mettre dans /etc/apt/source.list

Il est toujours préférable de mettre en place un dépot local dés que vous avez une dizaine de machine sous Debian.

Mon prochaine article sera justement un tuto sur ce sujet 🙂

En attendant:

Debian 8 Jessie:

deb http://ftp.fr.debian.org/debian/ jessie main non-free contrib
deb-src http://ftp.fr.debian.org/debian/ jessie main non-free contrib

deb http://security.debian.org/ jessie/updates main non-free contrib
deb-src http://security.debian.org/ jessie/updates main non-free contrib

# jessie-updates, previously known as ‘volatile’
deb http://ftp.fr.debian.org/debian/ jessie-updates main non-free contrib
deb-src http://ftp.fr.debian.org/debian/ jessie-updates main non-free contrib
deb http://www.deb-multimedia.org wheezy main non-free
# jessie-backports, previously on backports.debian.org
deb http://ftp.fr.debian.org/debian/ jessie-backports main
deb-src http://ftp.fr.debian.org/debian/ jessie-backports main

 

 

Debian 7 Wheezy :

deb http://ftp.fr.debian.org/debian/ wheezy main
deb-src http://ftp.fr.debian.org/debian/ wheezy main

deb http://security.debian.org/ wheezy/updates main
deb-src http://security.debian.org/ wheezy/updates main

# wheezy-updates, previously known as ‘volatile’
deb http://ftp.fr.debian.org/debian/ wheezy-updates main
deb-src http://ftp.fr.debian.org/debian/ wheezy-updates main

 

Debian 6 Squeeze :

deb ftp://ftp.fr.debian.org/debian/ squeeze main contrib non-free

deb http://security.debian.org/ squeeze/updates main contrib non-free

deb ftp://ftp.fr.debian.org/debian/ squeeze-updates main contrib non-free

 

Debian 5 Lenny :

deb http://archive.debian.org/debian/ lenny main contrib non-free

deb http://archive.debian.org/debian-security/ lenny/updates main contrib non-free

 

 


 

 

 

 

 

 




Monitorer les entrées sorties avec iotop

Article publié le 14 Mai 2013

 

Souvent, très souvent dans la vie d’un admin, on est confronté à un problème récurrent: « Problème d’IO ».

Un utilisateur vient vous voir et vous déclare fièrement « je pense que c’est un problème d’IO ». Après avoir checké votre Baie  et vous êtes assuré que vos disques sont en bonnes santés il ne vous reste plus qu’à faire un petit diagnostic sur l’OS.

Et la j’ai quelque chose pour vous!! 🙂

Récemment un collègue (que je remercie)  m’a fait découvrir par hasard un outil que je ne connaissais pas du tout IOTOP.

Ce petit outil vous offre un monitoring des IO de votre machine. L’interface similaire à TOP est très claire!

Iotop est dispo dans les dépots de Debian et RED-HAT.

Sinon   ce lien vous redirige vers le site de son créateur 🙂

Capture d’écran de l’interface IOTOP: