Tag Archives: SSH

Récupérer des informations matérielles via SSH

Aujourd'hui j'ai été confronté à une intrigue toute simple: comment connaitre le type (DDR, DDR2, DDR3) et la vitesse de la mémoire RAM installée sur mon serveur dédié Linux ?

En effet, lorsque le serveur Linux est dans vos locaux, il suffit de décapoter la machine et de regarder directement sur les barettes mais dans le cas d'un serveur Linux hébergé à distance c'est plus compliqué.

Et bien pas tant que çà puisqu'il est possible de récupérer les informations matérielles de votre serveur Linux via une simple commande SSH.

Récupérer les informations matérielles via SSH

Pour récupérer les informations hardware via SSH, nous allons utiliser l'application "DmiDecode".

Cette application en ligne de commande permet d'extraire des informations relatives à vos composants et à votre matériel (RAM, CPU, Bios, Chassis, Carte mère, Numéros de série,…).

En explorant la page man de l'application "DmiDecode", on peut voir tous les types d'informations hardware que l'on peut récupérer sous Linux:

       Type   Information
       ââââââââââââââââââââââââââââââââââââââââ
          0   BIOS
          1   System
          2   Base Board
          3   Chassis
          4   Processor
          5   Memory Controller
          6   Memory Module
          7   Cache
          8   Port Connector
          9   System Slots
         10   On Board Devices
         11   OEM Strings
         12   System Configuration Options
         13   BIOS Language
         14   Group Associations
         15   System Event Log
         16   Physical Memory Array
         17   Memory Device
         18   32-bit Memory Error
         19   Memory Array Mapped Address
         20   Memory Device Mapped Address
         21   Built-in Pointing Device
         22   Portable Battery
         23   System Reset
         24   Hardware Security
         25   System Power Controls
         26   Voltage Probe
         27   Cooling Device
         28   Temperature Probe
         29   Electrical Current Probe
         30   Out-of-band Remote Access
         31   Boot Integrity Services
         32   System Boot
         33   64-bit Memory Error
         34   Management Device
         35   Management Device Component
         36   Management Device Threshold Data
         37   Memory Channel
         38   IPMI Device
         39   Power Supply

Récupérer les informations hardware de votre RAM

Voici la commande à utiliser:

dmidecode --type 17

Ce qui retournera:

# dmidecode 2.9
SMBIOS 2.5 present.

Handle 0x0032, DMI type 17, 27 bytes
Memory Device
        Array Handle: 0x0031
        Error Information Handle: Not Provided
        Total Width: 64 bits
        Data Width: 64 bits
        Size: 2048 MB
        Form Factor: DIMM
        Set: None
        Locator: DIMM_A1
        Bank Locator: Bank0/1
        Type: DDR2
        Type Detail: None
        Speed: 800 MHz (1.2 ns)
        Manufacturer: None
        Serial Number: None
        Asset Tag: None
        Part Number: None

Handle 0x0033, DMI type 17, 27 bytes
Memory Device
        Array Handle: 0x0031
        Error Information Handle: Not Provided
        Total Width: 64 bits
        Data Width: 64 bits
        Size: 2048 MB
        Form Factor: DIMM
        Set: None
        Locator: DIMM_B1
        Bank Locator: Bank2/3
        Type: DDR2
        Type Detail: None
        Speed: 800 MHz (1.2 ns)
        Manufacturer: None
        Serial Number: None
        Asset Tag: None
        Part Number: None

Handle 0x0034, DMI type 17, 27 bytes
Memory Device
        Array Handle: 0x0031
        Error Information Handle: Not Provided
        Total Width: 64 bits
        Data Width: 64 bits
        Size: No Module Installed
        Form Factor: DIMM
        Set: None
        Locator: DIMM_A2
        Bank Locator: Bank4/5
        Type: Unknown
        Type Detail: None
        Speed: Unknown
        Manufacturer: None
        Serial Number: None
        Asset Tag: None
        Part Number: None

Handle 0x0035, DMI type 17, 27 bytes
Memory Device
        Array Handle: 0x0031
        Error Information Handle: Not Provided
        Total Width: 64 bits
        Data Width: 64 bits
        Size: No Module Installed
        Form Factor: DIMM
        Set: None
        Locator: DIMM_B2
        Bank Locator: Bank6/7
        Type: Unknown
        Type Detail: None
        Speed: Unknown
        Manufacturer: None
        Serial Number: None
        Asset Tag: None
        Part Number: None

On récupère donc toutes les informations disponibles sur nos barettes de mémoire RAM.

Pour récupérer uniquement la vitesse de votre RAM, vous pouvez utiliser:

dmidecode --type 17  | grep -i speed

Ce qui retournera:

        Speed: 800 MHz (1.2 ns)
        Speed: 800 MHz (1.2 ns)
        Speed: Unknown
        Speed: Unknown

Sécuriser votre serveur SSH

SSH Server permet d'administrer votre serveur Linux en ligne de commande. Il est utilisé dans le monde entier par une grande majorité d'administrateurs réseaux, développeurs et autres geeks.

Moi même j'utilise SSH pour administrer et gérer mes serveurs sous Debian et Ubuntu mais je vous conseille de le sécuriser un minimum.

En effet, comme tout service dit "daemon", il peut facilement devenir un point d'entrée à diverses intrusions non désirées (je l'ai vécu il y a quelques années).

Nous allons détailler quelques points et astuces visant à améliorer la sécurité de votre serveur SSH.

1) Installation du client et du serveur SSH

apt-get install openssh-client openssh-server

2) Editer le fichier de configuration pour sécuriser le serveur SSH

nano /etc/ssh/sshd_config

3) Sécuriser SSH: Interdire le login en tant que root

PermitRootLogin no
PasswordAuthentication no

Cette mesure aura pour objectif d'interdire une connexion en tant que root sur votre serveur.

4) Sécuriser SSH: Changer le port de connexion

Port 1234

Par défaut, SSH utilise le port 22. Du coup ce port est fréquemment scanné par divers robots et personnes malintensionnées.

5) Sécuriser SSH: Utiliser une authentification RSA

RSAAuthentication yes
PubkeyAuthentication yes

6) Sécuriser SSH: Configurer Parefeu, Whitelist et Blacklist.

L'utilisation d'iptables permet de restreindre les connexions entrantes à certaines adresses ip et hosts.

Il existe d'autres mesures plus techniques afin de sécuriser votre serveur SSH. Mais ces mesures permettent déjà de limiter les risques. Il est également possible de jouer avec des clés de sécurités client/server, ce qui accentue encore la sécurité du serveur SSH (mais il est plus difficile à mettre en place).